[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Mozilla & Indy (and other stuff)



On Mon, Nov 26, 2001 at 06:54:33PM +0100, Guido Guenther wrote:
> On Sat, Nov 24, 2001 at 11:15:12PM +0100, Krzysztof Krzyzaniak wrote:
> [..snip..] 
> > BTW several programs crashes on my Indy i.e. menu packages, konqueror,
> > emacs21, xemacs:
> Could you check the source code if these packages crash while messing
> with C++ exceptions? I just had a quick look into the menu package and
> it seems that C++ exception handling is broken on mips using g++-2.95.4. 
> A testcase like:
> 
> #include <iostream.h>
> #include <string>
> 
> class ferror_open {
> 	int a;
> public:
>   ferror_open():a(2){};
>   int message(){
>     return a;
>   };
> };
> 
> int main()
> {
> 	try {
> 		throw ferror_open();
> 	} catch(ferror_open d){ cout << d.message() << endl;};
> }

mips:~# g++ -g -o test test.c
mips:~# ./test 
Segmentation fault
mips:~# g++ --version
2.95.4
mips:~# strace ./test
mips:~# cat test.log
execve("./test", ["./test"], [/* 25 vars */]) = 0
uname({sys="Linux", node="mips", ...})  = 0
brk(0)                                  = 0x100001e0
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=22419, ...}) = 0
old_mmap(NULL, 22419, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2aac4000
close(3)                                = 0
open("/usr/lib/libstdc++-libc6.2-2.so.3", O_RDONLY) = 3
read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\10\0\0\0\1\0\1>p"..., 1024) =
1024
fstat64(3, {st_mode=S_IFREG|0644, st_size=381952, ...}) = 0
old_mmap(NULL, 614892, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x2ab05000
mprotect(0x2ab4f000, 311788, PROT_NONE) = 0
old_mmap(0x2ab8e000, 45056, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x49000) = 0x2ab8e000
old_mmap(0x2ab99000, 8684, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2ab99000
close(3)                                = 0
open("/lib/libm.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\10\0\0\0\1\0\0Dp"..., 1024) =
1024
fstat64(3, {st_mode=S_IFREG|0644, st_size=572476, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x2aaca000
old_mmap(NULL, 822160, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x2ab9c000
mprotect(0x2ac25000, 261008, PROT_NONE) = 0
old_mmap(0x2ac64000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x88000) = 0x2ac64000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\10\0\0\0\1\0\1\240"..., 1024)
= 1024
fstat64(3, {st_mode=S_IFREG|0755, st_size=1633664, ...}) = 0
old_mmap(NULL, 1829696, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x2ac65000
mprotect(0x2add9000, 305984, PROT_NONE) = 0
old_mmap(0x2ae18000, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x173000) = 0x2ae18000
old_mmap(0x2ae20000, 15168, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2ae20000
close(3)                                = 0
munmap(0x2aac4000, 22419)               = 0
brk(0)                                  = 0x100001e0
brk(0x10000200)                         = 0x10000200
brk(0x10001000)                         = 0x10001000
brk(0x10003000)                         = 0x10003000
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++

mips:~# gdb ./test
GNU gdb 5.0.90-cvs (MI_OUT)
Copyright 2001 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 "mips-linux"...
(gdb) run
Starting program: /home/eloy/./test 

Program received signal SIGSEGV, Segmentation fault.
0x00000000 in ?? ()
(gdb) backtrace
#0  0x00000000 in ?? ()
(gdb) 

  eloy
-- 
.    .    . , . ,
| _ __. _.|_| |_| Krzysztof "eloy" Krzyżaniak         <eloy@pawnhearts.eu.org>
|(_) /_(_]  |   | Oficjalna strona kabaretu Loża 44   http://loza44.topnet.pl/
      Co za szlachetna walka! Sędzia dwoi się i troi zawodnikom w oczach!



Reply to: