[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Commit 302bbe0 breaks wide-ints build on MS-Windows
From: |
Eli Zaretskii |
Subject: |
Commit 302bbe0 breaks wide-ints build on MS-Windows |
Date: |
Sun, 06 Dec 2015 19:47:04 +0200 |
The build fails thusly:
./temacs --batch --load loadup bootstrap
lisp.h:944: Emacs fatal error: assertion failed: 0 <= i
lisp.h:944: Emacs fatal error: assertion failed: 0 <= i
Running the same command under a debugger reveals this:
lisp.h:944: Emacs fatal error: assertion failed: 0 <= i
Breakpoint 1, terminate_due_to_signal (sig=22, backtrace_limit=2147483647)
at emacs.c:371
371 signal (sig, SIG_DFL);
(gdb) bt
#0 terminate_due_to_signal (sig=22, backtrace_limit=2147483647)
at emacs.c:371
#1 0x011ee527 in die (msg=0x164bc6a <VALMASK+34> "0 <= i",
file=0x164bc50 <VALMASK+8> "lisp.h", line=944) at alloc.c:7023
#2 0x01142cb9 in XSYMBOL (a=4274002448) at lisp.h:944
#3 0x01143450 in make_lisp_symbol (sym=0x171fe58 <dumped_data+59288>)
at lisp.h:1113
#4 0x011e6e7c in Fmake_symbol (name=-9223372036834442200) at alloc.c:3403
#5 0x01263a1c in intern_driver (string=-9223372036834442200,
obarray=-6917529027616889200, index=4611686018427388585) at lread.c:3761
#6 0x01263bec in intern_c_string_1 (
str=0x1648c14 <DEFAULT_REHASH_SIZE+4812> "internal-make-lisp-face",
len=23) at lread.c:3791
#7 0x01146c66 in intern_c_string (
str=0x1648c14 <DEFAULT_REHASH_SIZE+4812> "internal-make-lisp-face")
at lisp.h:3844
#8 0x012648a9 in defsubr (sname=0x135dee8 <Sinternal_make_lisp_face>)
at lread.c:4053
#9 0x01142773 in syms_of_xfaces () at xfaces.c:6421
#10 0x0114ba99 in main (argc=5, argv=0xa42870) at emacs.c:1202
(gdb) fr 4
#4 0x011e6e7c in Fmake_symbol (name=-9223372036834442200) at alloc.c:3403
3403 XSETSYMBOL (val, &symbol_block->symbols[symbol_block_index].s);
(gdb) p name
$1 = -9223372036834442200
(gdb) xstring
$2 = (struct Lisp_String *) 0x1364428 <pure+18952>
"internal-make-lisp-face"
(gdb) fr 2
#2 0x01142cb9 in XSYMBOL (a=4274002448) at lisp.h:944
944 eassert (0 <= i);
(gdb) l
939 INLINE struct Lisp_Symbol *
940 XSYMBOL (Lisp_Object a)
941 {
942 eassert (SYMBOLP (a));
943 intptr_t i = (intptr_t) XUNTAG (a, Lisp_Symbol);
944 eassert (0 <= i);
945 void *p = (char *) lispsym + i;
946 return p;
947 }
948
(gdb) p a
$3 = 4274002448
(gdb) p i
$4 = -20964848
(gdb)
My reading of this is that a is not a valid symbol object.
Let me know if I can provide more details.
- Commit 302bbe0 breaks wide-ints build on MS-Windows,
Eli Zaretskii <=