summaryrefslogtreecommitdiffstats
path: root/clang/test/Modules/ModuleDebugInfo.cpp
diff options
context:
space:
mode:
authorAdrian Prantl <aprantl@apple.com>2016-01-19 18:02:47 +0000
committerAdrian Prantl <aprantl@apple.com>2016-01-19 18:02:47 +0000
commite5238d2a82448674567cb47f7ca0486f36c028a9 (patch)
tree00be5bed8c158470407fb4b6baf98c30289586b2 /clang/test/Modules/ModuleDebugInfo.cpp
parentb541a3488fe5713ce2b32c0ae3dda15ee7984b26 (diff)
downloadbcm5719-llvm-e5238d2a82448674567cb47f7ca0486f36c028a9.tar.gz
bcm5719-llvm-e5238d2a82448674567cb47f7ca0486f36c028a9.zip
Module Debugging: Defer the emission of anonymous tag decls
until we are visiting their declcontext. This fixes a regression introduced in r256962: When building debug info for a typdef'd anonymous tag type, we would be visiting the inner anonymous type first thus creating a "typedef changes linkage of anonymous type, but linkage was already computed" error. rdar://problem/24199640 llvm-svn: 258152
Diffstat (limited to 'clang/test/Modules/ModuleDebugInfo.cpp')
-rw-r--r--clang/test/Modules/ModuleDebugInfo.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/test/Modules/ModuleDebugInfo.cpp b/clang/test/Modules/ModuleDebugInfo.cpp
index bbe36cb225d..c1248fd4d8e 100644
--- a/clang/test/Modules/ModuleDebugInfo.cpp
+++ b/clang/test/Modules/ModuleDebugInfo.cpp
@@ -28,6 +28,10 @@
// CHECK-SAME: identifier: "_ZTSN8DebugCXX4EnumE")
// CHECK: !DINamespace(name: "DebugCXX"
+// CHECK: !DICompositeType(tag: DW_TAG_enumeration_type,
+// CHECK-SAME-NOT: name:
+// CHECK-SAME: identifier: "_ZTS11TypedefEnum")
+
// CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "Struct"
// CHECK-SAME: identifier: "_ZTSN8DebugCXX6StructE")
@@ -47,6 +51,14 @@
// CHECK-SAME: identifier: "_ZTS10FwdVirtual")
// CHECK: !DIDerivedType(tag: DW_TAG_member, name: "_vptr$FwdVirtual"
+// CHECK: !DICompositeType(tag: DW_TAG_union_type,
+// CHECK-SAME-NOT: name:
+// CHECK-SAME: identifier: "_ZTS12TypedefUnion")
+
+// CHECK: !DICompositeType(tag: DW_TAG_structure_type,
+// CHECK-SAME-NOT: name:
+// CHECK-SAME: identifier: "_ZTS13TypedefStruct")
+
// CHECK: !DIDerivedType(tag: DW_TAG_typedef, name: "FloatInstatiation"
// no mangled name here yet.
OpenPOWER on IntegriCloud