discuss-gnustep
[Top][All Lists]
Advanced

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

Re: [cfe-dev] LLVM / Clang 3.0 rc1 Binaries Available


From: Richard Frith-Macdonald
Subject: Re: [cfe-dev] LLVM / Clang 3.0 rc1 Binaries Available
Date: Thu, 27 Oct 2011 09:14:15 +0100

On 21 Oct 2011, at 11:02, David Chisnall wrote:

> FYI: Please test on platforms you care about and file bugs...

Using svn trunk for make/base/libobjc2 and using the 3.0 rc1 on debian 64bit I 
get a failure ~(uncaught exception) in the NSURL tests in basic.m ...

I don't know whether it's a compiler bug or a libobjc2 bug though ...

Passed test:     basic.m:96 ... resourceSpecifier of /usr is //localhost/usr/
/home/richard/setups/clang/devmodules/core/base/Tests/base/NSURL/obj/basic: 
Uncaught exception NSInvalidArgumentException, reason: -[NSURL 
initFileURLWithPath:isDir:]: unrecognized selector sent to instance 0x9bed98

In gdb I get ...

(gdb) where
#0  0x00007ffff6a3a165 in *__GI_raise (sig=<value optimized out>)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007ffff6a3cf70 in *__GI_abort () at abort.c:92
#2  0x00007ffff7783a74 in _terminate ()
    at /home/richard/setups/clang/devmodules/core/base/Source/NSException.m:751
#3  0x00007ffff7783a2d in _NSFoundationUncaughtExceptionHandler (
    exception=0x9ed858)
    at /home/richard/setups/clang/devmodules/core/base/Source/NSException.m:775
#4  0x00007ffff7781d49 in callUncaughtHandler (value=0x9ed858)
    at /home/richard/setups/clang/devmodules/core/base/Source/NSException.m:795
#5  0x00007ffff7214522 in objc_exception_throw (object=0x9ed858)
    at eh_personality.c:93
#6  0x00007ffff7782f19 in -[NSException raise] (self=0x9ed858, 
    _cmd=0x7ffff7d2a250)
    at /home/richard/setups/clang/devmodules/core/base/Source/NSException.m:963
#7  0x00007ffff7782110 in +[NSException raise:format:arguments:] (
    self=0x7ffff7d2a0e0, _cmd=0x7ffff7d2a2f0, name=0x7ffff7d29a10, 
    format=0x7ffff7d9a0d0, argList=0x7fffffff7b60)
    at /home/richard/setups/clang/devmodules/core/base/Source/NSException.m:849
#8  0x00007ffff7781ff3 in +[NSException raise:format:] (self=0x7ffff7d2a0e0, 
    _cmd=0x7ffff7d9a510, name=0x7ffff7d29a10, format=0x7ffff7d9a0d0)
    at /home/richard/setups/clang/devmodules/core/base/Source/NSException.m:835
#9  0x00007ffff7937b1d in gs_objc_msg_forward2 (receiver=0x9bed98, 
    sel=0x621960)
    at 
/home/richard/setups/clang/devmodules/core/base/Source/GSFFIInvocation.m:196
#10 0x00007ffff7937818 in gs_objc_msg_forward3 (receiver=0x9bed98, op=0x621960)
    at 
/home/richard/setups/clang/devmodules/core/base/Source/GSFFIInvocation.m:243
#11 0x00007ffff7220d26 in objc_msg_lookup_internal (receiver=0x9bed98, 
    selector=0x621960) at sendmsg2.c:100
#12 objc_msg_lookup (receiver=0x9bed98, selector=0x621960) at sendmsg2.c:375
#13 0x0000000000407656 in main () at basic.m:99
(gdb) 

Stepping up through the stack I see it's trying to look up a value for a nul 
receiver ...

243       slot->method = gs_objc_msg_forward2(receiver, op);
(gdb) print *receiver
$3 = {isa = 0x0}
(gdb) 

but stepping further up it seems we have the real receiver ...

(gdb) 
#12 objc_msg_lookup (receiver=0x9bed98, selector=0x621960) at sendmsg2.c:375
375             Slot_t slot = objc_msg_lookup_internal(&self, selector, nil);
(gdb) print self
$4 = (id) 0x9bed98
(gdb) print *self
$5 = {isa = 0x7ffff7d7a1b0}
(gdb) print *self.isa
$6 = {isa = 0x7ffff7d79db0, super_class = 0x7ffff7d4d190, 
  name = 0x7ffff79a84e2 "NSURL", version = 0, info = 93, instance_size = 40, 
  ivars = 0x7ffff7d79d20, methods = 0x7ffff7db7ea0, dtable = 0x76f280, 
  subclass_list = 0x0, sibling_class = 0x7ffff7d78680, 
  protocols = 0x7ffff7dddbf0, extra_data = 0x76f750, abi_version = 1, 
  ivar_offsets = 0x7ffff7d7a190, properties = 0x7ffff7dd5030, 
  strong_pointers = 1, weak_pointers = 1}
(gdb) 

Is this the compiler passing the wrong value, or possibly something wrong in 
the objc library?


reply via email to

[Prev in Thread] Current Thread [Next in Thread]