diff options
| author | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-05-17 02:09:46 +0000 |
|---|---|---|
| committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-05-17 02:09:46 +0000 |
| commit | adaa01590071560b37c5a4833670a7781cb8f890 (patch) | |
| tree | 727bcb4bcd883128ece8e85ccaf81d87427b2b5a /clang/lib/AST/ASTDumper.cpp | |
| parent | adeab5086e9f70d378734c7dbbcc2ae57a588a2a (diff) | |
| download | bcm5719-llvm-adaa01590071560b37c5a4833670a7781cb8f890.tar.gz bcm5719-llvm-adaa01590071560b37c5a4833670a7781cb8f890.zip | |
AST dumping: if a declaration has an uncomputed or uninstantiated exception specification, include that in the dump.
llvm-svn: 182070
Diffstat (limited to 'clang/lib/AST/ASTDumper.cpp')
| -rw-r--r-- | clang/lib/AST/ASTDumper.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/clang/lib/AST/ASTDumper.cpp b/clang/lib/AST/ASTDumper.cpp index cd974f0d022..4a0173300d8 100644 --- a/clang/lib/AST/ASTDumper.cpp +++ b/clang/lib/AST/ASTDumper.cpp @@ -762,6 +762,19 @@ void ASTDumper::VisitFunctionDecl(const FunctionDecl *D) { else if (D->isDeletedAsWritten()) OS << " delete"; + if (const FunctionProtoType *FPT = D->getType()->getAs<FunctionProtoType>()) { + FunctionProtoType::ExtProtoInfo EPI = FPT->getExtProtoInfo(); + switch (EPI.ExceptionSpecType) { + default: break; + case EST_Unevaluated: + OS << " noexcept-unevaluated " << EPI.ExceptionSpecDecl; + break; + case EST_Uninstantiated: + OS << " noexcept-uninstantiated " << EPI.ExceptionSpecTemplate; + break; + } + } + bool OldMoreChildren = hasMoreChildren(); const FunctionTemplateSpecializationInfo *FTSI = D->getTemplateSpecializationInfo(); |

