diff options
Diffstat (limited to 'lib/AST')
-rw-r--r-- | lib/AST/DeclarationName.cpp | 5 | ||||
-rw-r--r-- | lib/AST/TypePrinter.cpp | 9 |
2 files changed, 11 insertions, 3 deletions
diff --git a/lib/AST/DeclarationName.cpp b/lib/AST/DeclarationName.cpp index 60c40e24fb..1fa2010786 100644 --- a/lib/AST/DeclarationName.cpp +++ b/lib/AST/DeclarationName.cpp @@ -180,6 +180,11 @@ DeclarationName::NameKind DeclarationName::getNameKind() const { return Identifier; } +bool DeclarationName::isDependentName() const { + QualType T = getCXXNameType(); + return !T.isNull() && T->isDependentType(); +} + std::string DeclarationName::getAsString() const { switch (getNameKind()) { case Identifier: diff --git a/lib/AST/TypePrinter.cpp b/lib/AST/TypePrinter.cpp index 818657c2a7..00b74bc21a 100644 --- a/lib/AST/TypePrinter.cpp +++ b/lib/AST/TypePrinter.cpp @@ -271,6 +271,10 @@ void TypePrinter::PrintFunctionProto(const FunctionProtoType *T, S += ")"; + if (T->getNoReturnAttr()) + S += " __attribute__((noreturn))"; + + if (T->hasExceptionSpec()) { S += " throw("; if (T->hasAnyExceptionSpec()) @@ -287,10 +291,9 @@ void TypePrinter::PrintFunctionProto(const FunctionProtoType *T, S += ")"; } - if (T->getNoReturnAttr()) - S += " __attribute__((noreturn))"; - Print(T->getResultType(), S); + AppendTypeQualList(S, T->getTypeQuals()); + Print(T->getResultType(), S); } void TypePrinter::PrintFunctionNoProto(const FunctionNoProtoType *T, |