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
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to