summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
diff options
context:
space:
mode:
authorAdrian Prantl <aprantl@apple.com>2016-01-20 01:29:34 +0000
committerAdrian Prantl <aprantl@apple.com>2016-01-20 01:29:34 +0000
commit8f55b66a53d8c1bb1fb9441201113af8b2a6886a (patch)
tree86c8f20c179e9f2dac61968d55d29a6b7eb5966e /clang/lib/CodeGen
parent59411db5202ed5a4e680457109cdbeed217219b6 (diff)
downloadbcm5719-llvm-8f55b66a53d8c1bb1fb9441201113af8b2a6886a.tar.gz
bcm5719-llvm-8f55b66a53d8c1bb1fb9441201113af8b2a6886a.zip
Module Debugging: Fine-tune the condition that determines whether a type
can be found in a module. There are externally visible anonymous types that can be found: typedef struct { } s; // I can be found via the typedef. There are anonymous internal types that can be found: namespace { struct s {}; } // I can be found by name. rdar://problem/24199640 llvm-svn: 258272
Diffstat (limited to 'clang/lib/CodeGen')
-rw-r--r--clang/lib/CodeGen/CGDebugInfo.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CGDebugInfo.cpp b/clang/lib/CodeGen/CGDebugInfo.cpp
index fa501fce756..28e28489681 100644
--- a/clang/lib/CodeGen/CGDebugInfo.cpp
+++ b/clang/lib/CodeGen/CGDebugInfo.cpp
@@ -1537,7 +1537,7 @@ static bool shouldOmitDefinition(CodeGenOptions::DebugInfoKind DebugKind,
const LangOptions &LangOpts) {
// Does the type exist in an imported clang module?
if (DebugTypeExtRefs && RD->isFromASTFile() && RD->getDefinition() &&
- RD->isExternallyVisible())
+ (RD->isExternallyVisible() || !RD->getName().empty()))
return true;
if (DebugKind > CodeGenOptions::LimitedDebugInfo)
OpenPOWER on IntegriCloud