From adaa01590071560b37c5a4833670a7781cb8f890 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 17 May 2013 02:09:46 +0000 Subject: AST dumping: if a declaration has an uncomputed or uninstantiated exception specification, include that in the dump. llvm-svn: 182070 --- clang/lib/AST/ASTDumper.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'clang/lib/AST/ASTDumper.cpp') 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::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(); -- cgit v1.2.3