This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: struct environment
On Tue, Sep 17, 2002 at 01:54:07PM -0400, Andrew Cagney wrote:
> >Well, sort of. It won't be a DAG necessarily (I think that mutual
> >>>"using" statements are legal in C++; I remember a GCC bug involving
> >>>them was fixed not long ago), and it will be somewhat complicated
> >>>figuring out which ones to look up (namespace links are different than
> >>>block scope links).
> >
> >>
> >>Don't forget that GDB doesn't need to model the language. Just the
> >>namespace behavior at a given PC. The effect of "using" would be to
> >>just grow a nametab in someway.
> >
> >
> >This is legal C++:
> >
> >namespace D {}
> >
> >namespace C {
> > using namespace D;
> > int x, y;
> >}
> >
> >namespace D {
> > using namespace C;
> > int x, z;
> >}
> >
> >If using just grew a nametab we'd get into a great deal of trouble.
>
> Depends on how you grow it :-) Something like (assuming a real language
> :-):
> D:
> 0: x, z
> 1: x, y (from C)
> 2: ...
How you intend to do this efficiently I don't know. Remember that C
uses D in turn, and that things "using"'d into D will therefore be
visible in C.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer