This is the mail archive of the libstdc++@sourceware.cygnus.com mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Some shadow fixes. (more comments)


On Fri, 19 May 2000, Nathan Myers wrote:

> > Index: bits/std_cassert.h
> > ===================================================================
> > RCS file: /cvs/gcc/egcs/libstdc++-v3/shadow/bits/std_cassert.h,v
> > retrieving revision 1.2
> > diff -r1.2 std_cassert.h
> > 39,42c39,45
> > < extern "C" {
> > < # pragma system_header
> > < # include_next <assert.h>
> > < }
> > ---
> > >   namespace _C_Swamp {
> > > 	 extern "C" {
> > > #     pragma system_header
> > > #     include_next <assert.h>
> > >     }
> > >     namespace _C_Shadow { }
> > >   } // close namespace ::_C_Swamp::
> 
> I'm none too sure about this one.  assert() is weird.
> 
> I don't think <assert.h> defines any global names we need to hide,
> and the reserved names it defines must be found from wherever the 
> assert macro appears.  We don't know what those reserved names 
> might be, or how they are declared.

  I get a compilation error without this.  As far I can tell, it just creates a
empty _C_Swamp namespace declaration which generic_shadow.h seems to
require.    Perhaps this is a problem with generic_shadow, I just took the path
of least resistance to get things to compile.


> 
> > Index: bits/std_ctime.h
> > ===================================================================
> > RCS file: /cvs/gcc/egcs/libstdc++-v3/shadow/bits/std_ctime.h,v
> > retrieving revision 1.2
> > diff -r1.2 std_ctime.h
> > 121a122,126
> > >       using ::std::ctime;
> > >       using ::std::clock;
> > >       using ::std::difftime;
> > >       using ::std::mktime;
> > >       using ::std::time;
> 
> I don't think these are appropriate.  ::std::ctime was imported
> into ::std from _C_shadow to begin with, so I think there's no 
> need to import it back into there again.  Note that the only 
> names already in the list are the ones defined in std::.

  Again, I get a error if I include <time.h> and try to reference the above
functions in ::.

 -- 
Steven King
sxking@uswest.net

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]