Removal of V2 code

Franz Sirl Franz.Sirl-kernel@lauterbach.com
Tue Nov 21 06:38:00 GMT 2000


At 11:54 20.11.00, Franz Sirl wrote:
>At 02:10 20.11.00, Geoff Keating wrote:
>>Mark Mitchell <mark@codesourcery.com> writes:
>>
>> > I plan on doing a `cvs remove' on the V2 sources, and removing the
>> > configury bits for V2 at the end of next week as things seem to be
>> > settling OK with V3.  (There are still some AIX issues with V3, but
>> > they seem to be well on the path to resolution.)
>> >
>> > If you have objections to this plan (i.e., you need the V2 sources to
>> > continue your work), you should:
>> >
>> >   - Try hard to get V3 working on your platform.
>> >
>> >   - Complain to me.  Explain why you can't switch to V3, and what
>> >     you need in order to make that happen.
>> >
>> > We can keep V2 in the tree for a bit longer, if we need to, but you'll
>> > have to come up with a good reason... :-)
>>
>>The embedded platforms (*-elf, powerpc-eabi*, *-coff) don't work yet with 
>>V3; I
>>don't believe anyone, certainly not at Red Hat, will be able to fix
>>this until next month; we don't have time.
>
>Well, not only the embedded stuff is non-functional, powerpc-linux-gnu is 
>unusable with libstdc++-v3 too (see my posted testsuite results). I 
>couldn't do too much debugging yet, but it seems most (if not all) of the 
>testcases crash during constructor handling in glibc's malloc/free code.

Replying to my own message, here is a backtrace of what I get as a fail in 
all cases I looked into so far, this is with todays CVS:

[fsirl@entropy:~/obj/gccm/gcc/testsuite]$ 
LD_LIBRARY_PATH=~/obj/gccm/ppc-redhat-linux/libstdc++-v3/src/.libs/ gdb 
./g++-pt-ttp9-C
GNU gdb 5.0
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "ppc-redhat-linux"...
(gdb) r
Starting program: /home/fsirl/obj/gccm/gcc/testsuite/./g++-pt-ttp9-C

Program received signal SIGSEGV, Segmentation fault.
0xfe3893c in chunk_free () at /usr/include/stdlib.h:269
269       return __strtold_internal (__nptr, __endptr, 0);
Current language:  auto; currently c++
(gdb) bt full
#0  0xfe3893c in chunk_free () at /usr/include/stdlib.h:269
         __alloc1 = (allocator<char> &) @0x10010a08: {<No data fields>}
         __b = (istreambuf_iterator<char,std::char_traits<char> > &) 
@0x2c030001: Cannot access memory at address 0x2c030001
(gdb) bt
#0  0xfe3893c in chunk_free () at /usr/include/stdlib.h:269
#1  0xfe388ec in free () at /usr/include/stdlib.h:269
#2  0xffa67b4 in _ZNSs4_Rep10_M_destroyERKSaIcE (this=0x2c030001, 
__a=@0xffefa08)
     at /home/fsirl/cvsx/gccm/libstdc++-v3/include/bits/stl_alloc.h:131
#3  0xff98298 in _ZNSt6locale7classicEv () at 
/home/fsirl/cvsx/gccm/libstdc++-v3/include/bits/basic_string.h:178
#4  0xffadbbc in _ZNSt13basic_filebufIcSt11char_traitsIcEEC1Ev (this=0xffef604)
     at /home/fsirl/cvsx/gccm/libstdc++-v3/include/bits/localefwd.h:311
#5  0xff8fdc0 in __static_initialization_and_destruction_0 
(__initialize_p=268503580, __priority=268368392)
     at /home/fsirl/cvsx/gccm/libstdc++-v3/include/bits/locale_facets.h:35
#6  0xff90070 in _GLOBAL_.I._ZSt11__cfileinit () at 
/home/fsirl/cvsx/gccm/libstdc++-v3/include/bits/std_fstream.h:96
#7  0xff8d7a4 in __do_global_ctors_aux () at 
/home/fsirl/cvsx/gccm/libstdc++-v3/libsupc++/vec.cc:56
#8  0xff89e68 in _init () at /usr/include/stdlib.h:269
#9  0x300106ac in _start () from /lib/ld.so.1
(gdb)

This happens on both glibc-2.1.3 and glibc-2.2. Does anyone have an idea 
what might have gone wrong here?

BTW, shouldn't c++filt now default to the V3 mangling style too?

Franz.



More information about the Gcc mailing list