We've done some extensive testing of GNUstep and libobjc over the past couple
of days, and GNUstep/clang/libobjc2 is now passing all of the tests for me on
FreeBSD/x86 and Linux/x86-64, so please can you try again and see if you can
reproduce this?
David
On 19 Jan 2011, at 21:14, Tobias Kreisel wrote:
> Tobias, could you find the -class method on NSObject in NSObject.m in
> GNUstep-base, and change it to this:
>
> - (Class)class
> {
> Class cls = object_getClass(self);
> if (class_isMetaClass(cls))
> {
> return (Class)self;
> }
> return cls;
> }
>
> Tried this but the segfault still turns up :-( For what it's worth I fired up
> gdb once more:
>
> [...]
> Making all in Tools ...
> Making all for tool make_services...
> Compiling file make_services.m ...
> Linking tool make_services ...
> Making all for tool set_show_service...
> Compiling file set_show_service.m ...
> Linking tool set_show_service ...
> Making all for tool gopen...
> Compiling file gopen.m ...
> Linking tool gopen ...
> Making all for tool gclose...
> Compiling file gclose.m ...
> Linking tool gclose ...
> Making all for tool gcloseall...
> Compiling file gcloseall.m ...
> Linking tool gcloseall ...
> Making all for service GSspell...
> Creating GSspell.service/....
> Compiling file GSspell.m ...
> Linking service GSspell ...
> Creating GSspell.service/Resources...
> Creating GSspell.service/Resources/Info-gnustep.plist...
> Segmentation fault
> make[3]: *** [GSspell.service/Resources/Info-gnustep.plist] Error 1
> make[2]: *** [GSspell.all.service.variables] Error 2
> make[1]: *** [internal-all] Error 2
> make: *** [internal-all] Error 2
>
> $ gdb plmerge
> GNU gdb (GDB) 7.2-ubuntu
> Copyright (C) 2010 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law. Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "i686-linux-gnu".
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>...
> Reading symbols from /usr/local/bin/plmerge...done.
> (gdb) run
> Starting program: /usr/local/bin/plmerge
> [Thread debugging using libthread_db enabled]
> [New Thread 0xb7fe9b70 (LWP 30193)]
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x00000000 in ?? ()
> (gdb) bt
> #0 0x00000000 in ?? ()
> #1 0x0033687e in -[NSObject autorelease] (self=Not enough elements for
> DW_OP_swap. Need 2, have 0.
> ) at NSObject.m:1622
> #2 0x00327bd1 in +[NSMethodSignature signatureWithObjCTypes:] (
> t=0x41d6a0 "#8@0:4", _cmd=0x572b98, self=0x5419b0)
> at NSMethodSignature.m:442
> #3 0x003df925 in gs_objc_msg_forward2 (receiver=<value optimized out>,
> sel=<value optimized out>) at GSFFIInvocation.m:174
> #4 0x003df833 in gs_objc_msg_forward3 (receiver=<value optimized out>,
> op=<value optimized out>) at GSFFIInvocation.m:242
> #5 0x005ae9db in objc_msg_lookup_internal (receiver=<value optimized out>,
> selector=<value optimized out>) at sendmsg2.c:96
> #6 objc_msg_lookup (receiver=<value optimized out>,
> selector=<value optimized out>) at sendmsg2.c:321
> #7 0x00335abd in +[NSObject initialize] (_cmd=Unhandled dwarf expression
> opcode 0x0
> ) at NSObject.m:962
> #8 0x005a5f07 in objc_send_initialize (object=<value optimized out>)
> at dtable.c:608
> #9 0x005a5d43 in objc_send_initialize (object=<value optimized out>)
> at dtable.c:549
> #10 0x005ae85f in objc_msg_lookup_internal (receiver=<value optimized out>,
> selector=<value optimized out>) at sendmsg2.c:62
> #11 objc_msg_lookup (receiver=<value optimized out>,
> selector=<value optimized out>) at sendmsg2.c:321
> #12 0x08049610 in main (env=0xa800a5ff, argv=0xf0a800a5, argc=-1005568)
>
> I will try to compile GNUstep and libobjc2 using gcc (like Quentin) and
> report back.
> _______________________________________________
> Etoile-dev mailing list
> [email protected]
> https://mail.gna.org/listinfo/etoile-dev
-- Sent from my Apple II
_______________________________________________
Etoile-dev mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-dev