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: porting to libstdc++-v3 (<iostream.h> etc.)


Benjamin Kosnik <bkoz@cygnus.com> writes:
> > I am already working on converting ncurses++ (5.0) and Gtk-- (1.0.3).
> > Maybe someone on this list could look into the unstable Gtk-- ?
> > (I would have done it, but have not been able to find "libsigc++"..)

Could someone explain what is going to be done about the *.h-headers .. ?

> I've talked to Havoc a bit about some of the issues. 

You would be more helpful if you could be a bit more "explicit":
which issues ?
Are you talking about the segmentation-faults in the libsigc++-testsuite ?

sorry if this is redundant! here are backtraces from the libsigc++/test-
programs. It compiles with only a little namespace-fix, but then almost every
program exits with a segm.-fault and one program "hangs" (test_array)

this does not seem to happen with Gtk---1.0.3 - I have successfully run
testgtk-- (most of the other example programs have compilation-problems
with pointers of non-static methods ??).

all these were compiled with -fhonor-std only:
--------------------------------------------------------------------------
Starting program: /home/felix/src/dev/libsigc++-1.0.0/tests/signals/.libs/basic 
>> Sizes 
sizeof (Signal1<int,int>) = 4
>> Connect to signals 
>> Emit signals 
sig2::f(1);
A::f(1);
f(1);
sig2::fv(2);
A::fv(2);
fv(2);

Program received signal SIGSEGV, Segmentation fault.
0x4018e3cf in chunk_free (ar_ptr=0x401e81a0, p=0x804e838) at malloc.c:2959
malloc.c:2959: No such file or directory.
Current language:  auto; currently c
(gdb) bt
#0  0x4018e3cf in chunk_free (ar_ptr=0x401e81a0, p=0x804e838) at malloc.c:2959
#1  0x4018e241 in __libc_free (mem=0x804e840) at malloc.c:2872
#2  0x400e5377 in __builtin_vec_delete (ptr=0x804e840)
    at ../../gcc-2.95.2/gcc/cp/new2.cc:62
#3  0x400be734 in std::basic_filebuf<char, std::char_traits<char> >::close (
    this=0x804e788) at ../../../../gcc-2.95.2/libstdc++/bits/fstream.tcc:149
#4  0x400be7ae in std::basic_filebuf<char, std::char_traits<char> >::~1Zc (
    this=0x804e788, __in_chrg=3)
    at ../../../../gcc-2.95.2/libstdc++/bits/std_fstream.h:87
#5  0x400a24cd in std::ios_base::Init::~Init (this=0x401312f8, __in_chrg=2)
    at ../../../../gcc-2.95.2/libstdc++/src/ios.cc:118
#6  0x400a33f3 in __static_initialization_and_destruction_0 (__initialize_p=0, 
    __priority=65535)
    at ../../../../gcc-2.95.2/libstdc++/bits/std_iostream.h:55
#7  0x400a3455 in global destructors keyed to std::ios_base::boolalpha ()
    at ../../../../gcc-2.95.2/libstdc++/src/ios.cc:278
#8  0x4009f0c4 in __do_global_dtors_aux ()
#9  0x400fe645 in _fini ()
#10 0x4000695a in _dl_fini () at dl-fini.c:32
#11 0x4016b105 in exit (status=0) at exit.c:55
------------------------------------------------------------------------------
Starting program: /home/felix/src/dev/libsigc++-1.0.0/tests/signals/.libs/array_test 
>>

Program received signal SIGINT, Interrupt.
0x401bced4 in __read () at soinit.c:27
soinit.c:27: No such file or directory.
Current language:  auto; currently c
(gdb) bt
#0  0x401bced4 in __read () at soinit.c:27
#1  0x400399f8 in __DTOR_END__ ()
#2  0x4018b534 in _IO_file_read (fp=0x8051dd0, buf=0x4001e000, size=4096)
    at fileops.c:563
#3  0x4009f84f in std::__basic_file::sys_read (this=0x8051dd0, 
    __s=0x4001e000 "\n", __n=4096) at c++io.cc:233
#4  0x4018b095 in _IO_file_underflow (fp=0x8051dd0) at fileops.c:303
#5  0x4009f5ef in std::__basic_file::underflow (this=0x8051dd0) at c++io.cc:188
#6  0x4018bbf8 in __underflow (fp=0x8051dd0) at genops.c:249
#7  0x4018bf6f in _IO_default_xsgetn (fp=0x8051dd0, data=0xbffff450, n=1)
    at genops.c:396
#8  0x4009f6e3 in std::__basic_file::xsgetn (this=0x8051dd0, 
    __s=0xbffff450 "Ð\035\005\b\001", __n=1) at c++io.cc:205
#9  0x400beebc in std::basic_filebuf<char, std::char_traits<char> >::underflow
    (this=0x8051d70) at ../../../../gcc-2.95.2/libstdc++/bits/fstream.tcc:210
#10 0x400ba9af in std::basic_streambuf<char, std::char_traits<char> >::uflow (
    this=0x8051d70)
    at ../../../../gcc-2.95.2/libstdc++/bits/std_streambuf.h:390
#11 0x400baaae in std::basic_streambuf<char, std::char_traits<char> >::sbumpc (
    this=0x8051d70) at ../../../../gcc-2.95.2/libstdc++/bits/streambuf.tcc:54
#12 0x400c28ce in std::basic_istream<char, std::char_traits<char> >::sentry::sentry (this=0xbffff5c3, __in=@0x804f4c0, __noskipws=false)
    at ../../../../gcc-2.95.2/libstdc++/bits/istream.tcc:55
---Type <return> to continue, or q <return> to quit---
#13 0x400d1e75 in std::basic_istream<char, std::char_traits<char> > & std::operator>><char, std::char_traits<char>, std::allocator<char> > (__in=@0x804f4c0, 
    __str=@0xbffff5ec)
    at ../../../../gcc-2.95.2/libstdc++/bits/istream.tcc:1112
#14 0x804af66 in main (argc=1, argv=0xbffff614) at array_test.cc:56
-------------------------------------------------------------------------------
Starting program: /home/felix/src/dev/libsigc++-1.0.0/tests/signals/.libs/disconnect 
>> Emit signal 
f2(1);
f(1);
>> Emit signal again 

Program received signal SIGSEGV, Segmentation fault.
0x4018e3cf in chunk_free (ar_ptr=0x401e81a0, p=0x804ce50) at malloc.c:2959
malloc.c:2959: No such file or directory.
Current language:  auto; currently c
(gdb) bt
#0  0x4018e3cf in chunk_free (ar_ptr=0x401e81a0, p=0x804ce50) at malloc.c:2959
#1  0x4018e241 in __libc_free (mem=0x804ce58) at malloc.c:2872
#2  0x400e5377 in __builtin_vec_delete (ptr=0x804ce58)
    at ../../gcc-2.95.2/gcc/cp/new2.cc:62
#3  0x400be734 in std::basic_filebuf<char, std::char_traits<char> >::close (
    this=0x804cda0) at ../../../../gcc-2.95.2/libstdc++/bits/fstream.tcc:149
#4  0x400be7ae in std::basic_filebuf<char, std::char_traits<char> >::~1Zc (
    this=0x804cda0, __in_chrg=3)
    at ../../../../gcc-2.95.2/libstdc++/bits/std_fstream.h:87
#5  0x400a24cd in std::ios_base::Init::~Init (this=0x401312f8, __in_chrg=2)
    at ../../../../gcc-2.95.2/libstdc++/src/ios.cc:118
#6  0x400a33f3 in __static_initialization_and_destruction_0 (__initialize_p=0, 
    __priority=65535)
    at ../../../../gcc-2.95.2/libstdc++/bits/std_iostream.h:55
#7  0x400a3455 in global destructors keyed to std::ios_base::boolalpha ()
    at ../../../../gcc-2.95.2/libstdc++/src/ios.cc:278
#8  0x4009f0c4 in __do_global_dtors_aux ()
#9  0x400fe645 in _fini ()
#10 0x4000695a in _dl_fini () at dl-fini.c:32
#11 0x4016b105 in exit (status=0) at exit.c:55
-----------------------------------------------------------------------------

-- 
Felix Natter

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