[PATCH] AST Dump: print the Inherited flag on attributes
Hans Wennborg
hans at chromium.org
Fri May 30 15:59:16 PDT 2014
Hi aaron.ballman,
Also move the attribute-specific dumping to after dumping this and
the Implicit flag.
http://reviews.llvm.org/D3971
Files:
lib/AST/ASTDumper.cpp
test/Misc/ast-dump-attr.cpp
Index: lib/AST/ASTDumper.cpp
===================================================================
--- lib/AST/ASTDumper.cpp
+++ lib/AST/ASTDumper.cpp
@@ -629,9 +629,11 @@
}
dumpPointer(A);
dumpSourceRange(A->getRange());
-#include "clang/AST/AttrDump.inc"
+ if (A->isInherited())
+ OS << " Inherited";
if (A->isImplicit())
OS << " Implicit";
+#include "clang/AST/AttrDump.inc"
}
static void dumpPreviousDeclImpl(raw_ostream &OS, ...) {}
Index: test/Misc/ast-dump-attr.cpp
===================================================================
--- test/Misc/ast-dump-attr.cpp
+++ test/Misc/ast-dump-attr.cpp
@@ -108,7 +108,13 @@
extern "C" int printf(const char *format, ...);
// CHECK: FunctionDecl{{.*}}printf
// CHECK-NEXT: ParmVarDecl{{.*}}format{{.*}}'const char *'
-// CHECK-NEXT: FormatAttr{{.*}}printf 1 2 Implicit
+// CHECK-NEXT: FormatAttr{{.*}}Implicit printf 1 2
+
+alignas(8) extern int x;
+extern int x;
+// CHECK: VarDecl{{.*}} x 'int'
+// CHECK: VarDecl{{.*}} x 'int'
+// CHECK-NEXT: AlignedAttr{{.*}} Inherited
}
int __attribute__((cdecl)) TestOne(void), TestTwo(void);
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D3971.9967.patch
Type: text/x-patch
Size: 1114 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140530/4170c51d/attachment.bin>
More information about the cfe-commits
mailing list