OS.indent(IndentLevel * 2);
}
+namespace {
+struct BaseOffsetComparator {
+ const ASTRecordLayout &RL;
+ BaseOffsetComparator(const ASTRecordLayout &RL) : RL(RL) {}
+ bool operator()(const CXXRecordDecl *L, const CXXRecordDecl *R) const {
+ return RL.getBaseClassOffset(L) < RL.getBaseClassOffset(R);
+ }
+};
+}
+
static void DumpCXXRecordLayout(raw_ostream &OS,
const CXXRecordDecl *RD, const ASTContext &C,
CharUnits Offset,
}
// Sort nvbases by offset.
- struct BaseOffsetComparator {
- const ASTRecordLayout &RL;
- BaseOffsetComparator(const ASTRecordLayout &RL) : RL(RL) {}
- bool operator()(const CXXRecordDecl *L, const CXXRecordDecl *R) const {
- return RL.getBaseClassOffset(L) < RL.getBaseClassOffset(R);
- }
- };
BaseOffsetComparator Cmp(Layout);
std::stable_sort(Bases.begin(), Bases.end(), Cmp);