Philip, The revised code works for me on gcc-3.2 as well, but not gcc-3.0. I suspect this is a library difference (libstdc++-3 vs libstdc++-5), though in principle I suppose it could be a compiler bug as well.
See bug 184242, which is this same problem applied to libstdc++-5. Ian On Wed, Mar 19, 2003 at 01:50:58AM +0000, Philip Martin wrote: > Ian Turner <[EMAIL PROTECTED]> writes: > > > Here is the modified code, with some additional checks: > > With that code I get a crash when I use Debian's g++-3.0 version 1:3.0.4-7. > > I also have a gcc-3.2 that I compiled from CVS > > $ g++ -v > Reading specs from > /usr/local/gcc-3.2-cvs/lib/gcc-lib/i686-pc-linux-gnu/3.2.2/specs > Configured with: ../gcc/configure --prefix=/usr/local/gcc-3.2-cvs > --enable-languages=c,c++ --enable-threads=posix --enable-haifa > --enable-__cxa_atexit --disable-checking > Thread model: posix > gcc version 3.2.2 20030128 (prerelease) > > If I use this compiler your test code doesn't crash. > > -- > Philip Martin