diff options
author | Brad King <brad.king@kitware.com> | 2014-03-18 18:48:39 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2014-03-24 15:37:20 (GMT) |
commit | 5e0461f6741c5eed0ee1cf79e0517a3d9b93f3b2 (patch) | |
tree | 1baac13c882dd6c1da54bab0536abc4e040c2530 /src/Output.cxx | |
parent | 906edbb74f1a4687a759e354b3e52212a724d6ba (diff) | |
download | CastXML-5e0461f6741c5eed0ee1cf79e0517a3d9b93f3b2.zip CastXML-5e0461f6741c5eed0ee1cf79e0517a3d9b93f3b2.tar.gz CastXML-5e0461f6741c5eed0ee1cf79e0517a3d9b93f3b2.tar.bz2 |
Output: Decay Function Argument types
Report the actual function argument type even if it decayed from the
type originally specified.
Diffstat (limited to 'src/Output.cxx')
-rw-r--r-- | src/Output.cxx | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/Output.cxx b/src/Output.cxx index e3a8ffb..0cee6ca 100644 --- a/src/Output.cxx +++ b/src/Output.cxx @@ -416,6 +416,12 @@ unsigned int ASTVisitor::AddDumpNode(DumpType dt, bool complete) { // Replace some types with their decls. if(!t.hasLocalQualifiers()) { switch (t->getTypeClass()) { + case clang::Type::Adjusted: + return this->AddDumpNode(DumpType( + t->getAs<clang::AdjustedType>()->getAdjustedType(), c), complete); + case clang::Type::Decayed: + return this->AddDumpNode(DumpType( + t->getAs<clang::DecayedType>()->getDecayedType(), c), complete); case clang::Type::Elaborated: return this->AddDumpNode(DumpType( t->getAs<clang::ElaboratedType>()->getNamedType(), c), complete); @@ -1047,7 +1053,7 @@ void ASTVisitor::OutputFunctionArgument(clang::ParmVarDecl const* a, if(!name.empty()) { this->PrintNameAttribute(name); } - this->PrintTypeAttribute(a->getOriginalType(), complete); + this->PrintTypeAttribute(a->getType(), complete); this->PrintLocationAttribute(a); if(def) { this->OS << " default=\""; |