Module Debug Info: Emit namespaced C++ forward decls in the correct module.
authorAdrian Prantl <aprantl@apple.com>
Thu, 11 May 2017 22:59:19 +0000 (22:59 +0000)
committerAdrian Prantl <aprantl@apple.com>
Thu, 11 May 2017 22:59:19 +0000 (22:59 +0000)
commitd88705587fbd2a207d204e1b5d9d6df183a5ec9d
tree2895644f74ef7540e225b920d239c48faf88bd0a
parentd644ec764735a14943543ca1848c3b9fe77dfa0c
Module Debug Info: Emit namespaced C++ forward decls in the correct module.

The AST merges NamespaceDecls, but for module debug info it is
important to put a namespace decl (or rather its children) into the
correct (sub-)module, so we need to use the parent module of the decl
that triggered this namespace to be serialized as a second key when
looking up DINamespace nodes.

rdar://problem/29339538

llvm-svn: 302840
clang/lib/CodeGen/CGDebugInfo.cpp
clang/lib/CodeGen/CGDebugInfo.h
clang/test/Modules/DebugInfoNamespace.cpp [new file with mode: 0644]
clang/test/Modules/Inputs/DebugInfoNamespace/A.h [new file with mode: 0644]
clang/test/Modules/Inputs/DebugInfoNamespace/B.h [new file with mode: 0644]
clang/test/Modules/Inputs/DebugInfoNamespace/module.modulemap [new file with mode: 0644]