[Debian GNUstep maintainers] Bug#592751: Broken on hppa; programs abort with malloc assertion failure

dann frazier dannf at dannf.org
Tue Aug 17 20:16:46 UTC 2010


On Tue, Aug 17, 2010 at 10:12:01PM +0300, Yavor Doganov wrote:
> On Tue, Aug 17, 2010 at 12:59:15PM -0600, dann frazier wrote:
> > (sid)dannf at paer:~/test-0.1$ ./test
> > Test 1
> > Test 2
> > Test 3
> 
> Thanks.  Do you get something different if you rebuild with
> 
>   make OBJCFLAGS="-fexceptions -fobjc-exceptions -fgnu-runtime"
> 
> ?  (I doubt it.)

Nope, still Test 1,2,3

> Before starting the masochistic bisection procedure,

We should be able to automate the bisection (if we can rely on each
version being buildable..) If you can point me to the source.. and it
is in git (or an svn repo I can use w/ git-svn) I can do that pretty
easily I think.

> it is perhaps
> worth trying -base built with gcc-4.3 (new code can trigger bugs in
> the compiler/runtime, so it's not absolutely certain that GCC/libobjc
> are not guilty).  The easiest way to test this is
> 
> 1) Install gobjc-4.3.
> 
> 2) Edit /usr/share/GNUstep/Makefiles/config.make:
>    - s/gcc/gcc-4.3/g
>    - Change the line
>      USE_OBJC_EXCEPTIONS = yes
> 
>      to
> 
>      USE_OBJC_EXCEPTIONS = no
> 
> 3) Rebuild gnustep-base, making sure the usual compiler invocations,
>    e.g.
> 
>    gcc runtime.c -c \
>                  -MMD -MP -Wall ...
> 
>    , begin with "gcc-4.3".
> 
> 4) Run `gdnc --help'.

root at c3700:/tmp/gnustep-base-1.20.1# gdnc --help
gdnc: malloc.c:3097: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed.
Aborted


-- 
dann frazier






More information about the pkg-GNUstep-maintainers mailing list