GNU bug report logs - #21999
25.0.50; Binary with --enable-checking immediately aborts with '0<=size'

Previous Next

Package: emacs;

Reported by: David Engster <deng <at> randomsample.de>

Date: Mon, 23 Nov 2015 19:54:02 UTC

Severity: normal

Tags: fixed

Found in version 25.0.50

Done: Stefan Kangas <stefan <at> marxist.se>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Dima Kogan <dima <at> secretsauce.net>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 21999 <at> debbugs.gnu.org, Paul Eggert <eggert <at> cs.ucla.edu>, David Engster <deng <at> randomsample.de>
Subject: bug#21999: 25.0.50; Binary with --enable-checking immediately aborts with '0<=size'
Date: Tue, 24 Nov 2015 01:55:38 -0800
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: David Engster <deng <at> randomsample.de>
>> Date: Mon, 23 Nov 2015 20:52:42 +0100
>> 
>> I've compiled from the emacs-25 branch (f146ea73a9ca6) with
>> 
>>   CFLAGS="-O0 -g3" ./configure --enable-checking
>> 
>> Running 'emacs -Q' directly from the src directory immediately aborts:
>> 
>>    lisp.h:1543: Emacs fatal error: assertion failed: 0 <= size
>>    Fatal error 6: Aborted
>
> Dima, can you look into this?

Sure. This comes from recent changes that created gc_asize() for use in
the GC, and changed ASIZE() to eassume() if we're not in the GC:

  https://github.com/emacs-mirror/emacs/commit/8afaa1321f808#diff-0e5d67da0ba3fb5c2886841cb3d0ccecR1547

This is a very recent change, so we're now seeing some of the effects.
In this particular case FONT_ENTITY_P() was called from the GC; it
called ASIZE(), which saw a marked object so we barfed in the eassume().
This eassume() is only fatal if --enable-checking, which is why that is
significant.

I don't know what the plan is here, so no patch is attached. Cc-ing
Paul, since he authored the patch in question.




This bug report was last modified 4 years and 283 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.