[PATCH] Anonymous namespaces are missing import DW_TAG_imported_module.
David Blaikie
dblaikie at gmail.com
Mon Mar 23 10:32:25 PDT 2015
One question, if you're up for it - there is actually an implicit UsingDirectiveDecl in the AST (as seen here:
$ cat ns.cpp
namespace {
int i;
}
blaikie at blaikie-linux:/tmp/dbginfo$ clang++-tot -Xclang -ast-dump ns.cpp -fsyntax-only
TranslationUnitDecl 0x69a9170 <<invalid sloc>> <invalid sloc>
| -TypedefDecl 0x69a96b0 <<invalid sloc>> <invalid sloc> implicit __int128_t '__int128' |
| -TypedefDecl 0x69a9710 <<invalid sloc>> <invalid sloc> implicit __uint128_t 'unsigned __int128' |
| -TypedefDecl 0x69a9b10 <<invalid sloc>> <invalid sloc> implicit __builtin_va_list '__va_list_tag [1]' |
| -NamespaceDecl 0x69a9b60 <ns.cpp:1:1, line:3:1> line:1:11 |
| `-VarDecl 0x69a9c20 <line:2:1, col:5> col:5 i 'int' |
`-UsingDirectiveDecl 0x69a9bc0 <line:1:11, <invalid sloc>> <invalid sloc> implicit Namespace 0x69a9b60 ''
It's possible we could figure out why that decl is being skipped normally? & avoid skipping it/filter it out later for non-ps4 while leaving it in for ps4, rather than synthesizing the extra imported module from scratch in the debug info code gen?
I took a glance & didn't immediately see why we weren't already visiting this implicit decl - I guess something is filtering out implicit decls somewhere?
http://reviews.llvm.org/D7895
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
More information about the llvm-commits
mailing list