summaryrefslogtreecommitdiffstats
path: root/src/Output.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2014-03-18 17:43:41 (GMT)
committerBrad King <brad.king@kitware.com>2014-03-24 15:37:20 (GMT)
commit8b1ff3b91b2f5e9e9da2277131e5d303923edbb4 (patch)
tree585cd086ee02a60014b7df7ebaa2d51ce8f9b0f0 /src/Output.cxx
parent2ccf3b840d595a2dcc154358d9effc0a93f5606b (diff)
downloadCastXML-8b1ff3b91b2f5e9e9da2277131e5d303923edbb4.zip
CastXML-8b1ff3b91b2f5e9e9da2277131e5d303923edbb4.tar.gz
CastXML-8b1ff3b91b2f5e9e9da2277131e5d303923edbb4.tar.bz2
Output: Desugar Class base class references
Report the canonical base type instead of a typedef type in order to match gccxml behavior.
Diffstat (limited to 'src/Output.cxx')
-rw-r--r--src/Output.cxx4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/Output.cxx b/src/Output.cxx
index 9bb14c6..8067f51 100644
--- a/src/Output.cxx
+++ b/src/Output.cxx
@@ -881,7 +881,7 @@ void ASTVisitor::PrintBasesAttribute(clang::CXXRecordDecl const* dx)
case clang::AS_protected: this->OS << "protected:"; break;
default: break;
}
- this->PrintTypeIdRef(i->getType(), true);
+ this->PrintTypeIdRef(i->getType().getCanonicalType(), true);
}
this->OS << "\"";
}
@@ -1107,7 +1107,7 @@ void ASTVisitor::OutputRecordDecl(clang::RecordDecl const* d,
for(clang::CXXRecordDecl::base_class_const_iterator i = dx->bases_begin(),
e = dx->bases_end(); i != e; ++i) {
this->OS << " <Base";
- this->PrintTypeAttribute(i->getType(), true);
+ this->PrintTypeAttribute(i->getType().getCanonicalType(), true);
this->PrintAccessAttribute(i->getAccessSpecifier());
this->OS << " virtual=\"" << (i->isVirtual()? 1 : 0) << "\"";
this->OS << "/>\n";