zturner added a comment.
In http://reviews.llvm.org/D18848#394756, @clayborg wrote:
> > One oddity of PDB is that the debug info does not maintain enough
> > information to accurately reconstruct the DeclContext hierarchy. If you
> > have this:
>
> >
>
> > namespace Foo
>
> > {
>
> > class Bar
>
> > {
>
> > class Baz
>
> > {
>
> > };
>
> > };
>
> > }
>
> >
>
> >
>
> > then that will appear in the PDB as a type with the name Foo::Bar::Baz, and
> > there's no information about whether Foo and Bar are namespaces or classes.
> > It is possible to give a best effort attempt, but it's going to be outside
> > the scope of this patch. So, for now, I intend to put every single type
> > under the master translation unit decl with fully scoped names. This isn't
> > perfect, but we can iterate on it in the future.
>
> >
>
> > Again, this is a work in progress, mostly just want to make sure this looks
> > like the right approach.
>
>
> Couldn't you always just lookup "Foo::Bar" and see if you find a class? And
> then lookup "Foo" and find a namespace?
If you lookup "Foo" you just wouldn't find anything, because namespaces are not
stored anywhere. So you could then say "Ok I guess Foo is a namespace", but
it's a little guess-y. Then you have to deal with classes defined in
functions, make sure anonymous namespaces work, and things like that. In the
end I can probably get pretty accurate, but it'll be a lot of extra work so I
rather do it in small pieces.
http://reviews.llvm.org/D18848
_______________________________________________
lldb-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits