discuss-gnustep
[Top][All Lists]
Advanced

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

Re: problem with gnustep on OpenBSD sparc64 -- the journey goes on


From: Sebastian Reitenbach
Subject: Re: problem with gnustep on OpenBSD sparc64 -- the journey goes on
Date: Thu, 07 Jul 2011 11:25:05 +0200
User-agent: SOGoMail 1.3.7

 
On Thursday, July 7, 2011 11:02 CEST, David Chisnall <address@hidden> wrote: 
 
> On 7 Jul 2011, at 09:56, Wolfgang Lux wrote:
> 
> > ... and here. The sizeof_type callback expects an argument with type size_t 
> > *, but &element_size has type int *. This does work on 32-bit architectures 
> > where sizeof(size_t) = sizeof(int) and it works coincidentally on 
> > low-endian 64-bit architectures like x86_64, but is definitely wrong for 
> > big-endian 64-bit machines like sparc.
> 
> 
> Ugh - obvious bug that I completely missed, thanks.  It's fixed in svn, and I 
> had a look at all of the other places where that pattern is used.  They all 
> use size_t correctly.  Thanks for looking at that, and many thanks to 
> Sebastian for testing on SPARC64.  I really should get my USii out of the 
> attic and test GNUstep stuff on it...

I updated libobjc from svn, and starting i.e. addressmanager now I get some 
steps further, but I run into this bus error:


$ gdb AddressManager                                                            
                                                                                
                                                                       
GNU gdb 6.3
Copyright 2004 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 "sparc64-unknown-openbsd4.9"...
(gdb) r
Starting program: /usr/local/bin/AddressManager 

Program received signal SIGBUS, Bus error.
round_up (v=0xfffffffffffe0e8c, b=8) at encoding2.c:138
138             if (*v % b)
(gdb) bt
#0  round_up (v=0xfffffffffffe0e8c, b=8) at encoding2.c:138
#1  0x0000000205bb2730 in -[NSUnarchiver decodeValueOfObjCType:at:] 
(self=0x219d0f910, _cmd=0x205f55f08, type=0x205d46f80 
"{_NSRect={_NSPoint=dd}{_NSSize=dd}}", address=0xfffffffffffe0fa0) at 
NSUnarchiver.m:854
#2  0x0000000205a738cc in -[NSCoder decodeRect] (self=0x219d0f910, 
_cmd=0x20c6d2cc0) at NSCoder.m:251
#3  0x000000020c340440 in -[GSNibItem initWithCoder:] (self=0x208cbf810, 
_cmd=0x205fc2188, aCoder=0x219d0f910) at GSGormLoading.m:528
#4  0x0000000205bb211c in -[NSUnarchiver decodeValueOfObjCType:at:] 
(self=0x219d0f910, _cmd=0x205f32df8, type=0x205d4a820 "@", 
address=0xfffffffffffe1328) at NSUnarchiver.m:657
#5  0x0000000205a040f4 in -[GSDictionary initWithCoder:] (self=0x208b25810, 
_cmd=Variable "_cmd" is not available.
) at GSDictionary.m:178
#6  0x0000000205bb211c in -[NSUnarchiver decodeValueOfObjCType:at:] 
(self=0x219d0f910, _cmd=0x20c6d2c20, type=0x20c493938 "@", address=0x208b24a18) 
at NSUnarchiver.m:657
#7  0x000000020c33e100 in -[GSNibContainer initWithCoder:] (self=0x208b24a10, 
_cmd=Variable "_cmd" is not available.
) at GSGormLoading.m:420
#8  0x0000000205bb211c in -[NSUnarchiver decodeValueOfObjCType:at:] 
(self=0x219d0f910, _cmd=0x205f55f08, type=0x205d4a820 "@", 
address=0xfffffffffffe17b8) at NSUnarchiver.m:657
#9  0x0000000205a739f0 in -[NSCoder decodeObject] (self=0x219d0f910, 
_cmd=0x20c6f16a0) at NSCoder.m:216
#10 0x000000020c376e68 in -[GSGormLoader 
loadModelData:externalNameTable:withZone:] (self=0x206adfc70, _cmd=Variable 
"_cmd" is not available.
) at GSGormLoader.m:114
#11 0x000000020c220d0c in -[NSNib 
instantiateNibWithExternalNameTable:withZone:] (self=0x20df8ead0, 
_cmd=0x20c5ca2a0, externalNameTable=0x200b29a90, zone=0x205fdc6a0) at 
NSNib.m:153
#12 0x000000020c170db0 in +[NSBundle(NSBundleAdditions) 
loadNibFile:externalNameTable:withZone:] (self=0x205f4c800, _cmd=0x20c5ca3b0, 
fileName=0x20bdeff10, context=0x200b29a90, zone=0x205fdc6a0) at 
NSBundleAdditions.m:236
#13 0x000000020c1706c8 in -[NSBundle(NSBundleAdditions) 
loadNibFile:externalNameTable:withZone:] (self=0x204cebf90, _cmd=0x20c5ca2f0, 
fileName=Variable "fileName" is not available.
) at NSBundleAdditions.m:342
#14 0x000000020c170cb8 in +[NSBundle(NSBundleAdditions) loadNibNamed:owner:] 
(self=0x205f4c800, _cmd=0x20c5a78f8, aNibName=0x204cf0790, owner=0x20df39c10) 
at NSBundleAdditions.m:277
#15 0x000000020c11f26c in NSApplicationMain (argc=Variable "argc" is not 
available.
) at Functions.m:81
#16 0x0000000000101b0c in _start ()
#17 0x0000000000101b0c in _start ()
Previous frame identical to this frame (corrupt stack?)
(gdb) frame 0
#0  round_up (v=0xfffffffffffe0e8c, b=8) at encoding2.c:138
138             if (*v % b)
(gdb) print v
$1 = (size_t *) 0xfffffffffffe0e8c
(gdb) print *v
$2 = 2
(gdb) print b
$3 = 8
(gdb) print *v % b
$4 = 2
(gdb)

> 
> David
> 
> -- Sent from my IBM 1620
> 
 
 
 
 



reply via email to

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