Thread View: gnu.gcc.bug
1 messages
1 total messages
Started by Tom Epperly
Fri, 20 Nov 1992 10:12
gcc 2.3.1 looses compiling ghostscript 2.5.2 on a DECstation 3100
Author: Tom Epperly
Date: Fri, 20 Nov 1992 10:12
Date: Fri, 20 Nov 1992 10:12
72 lines
3685 bytes
3685 bytes
I have gcc 2.3.1 compiled on a DECstation 3100, Ultrix 4.2.
ghostscript 2.5.2 compiles with gcc without giving any warning
messages, but when I try to run it. I get the following message
> ./gs -DNODISPLAY
Initializing... Unrecoverable error: Unrecoverable error: Unrecoverable error: Unrecoverable error: Unrecoverable error: Unrecoverable error: Unrecoverable error: Unreco
The "Unrecoverable error" keeps repeating as fast as possible. Ultrix
cc compiles gs 2.5.2 correctly.
I did some hunting with gdb, and the following may be useful. I can't
be sure because I don't know ghostscript well enough.
(gdb) cont
Continuing.
Breakpoint 64, zstring (op=0x10010ed8) at zstring.c:45
45 return e_rangecheck;
(gdb) where
#0 zstring (op=0x10010ed8) at zstring.c:45
#1 0x4084e4 in interp (pref=0x7fffbb48, perror_object=0x7fffbb70)
at interp.c:606
#2 0x406e34 in gs_interpret (pref=0x7fffbb48, user_errors=1,
pexit_code=0x7fffbb6c, perror_object=0x7fffbb70) at interp.c:182
#3 0x42980c in gs_run_file (file_name=0x1000427c "gs_init.ps", user_errors=1,
pexit_code=0x7fffbb6c, perror_object=0x7fffbb70) at gsmain.c:170
#4 0x429594 in gs_init2 () at gsmain.c:122
#5 0x4004a4 in main (argc=2, argv=0x7fffbbe4) at gs.c:193
(gdb) list
40 zstring(register os_ptr op)
41 { byte *sbody;
42 uint size;
43 check_type(*op, t_integer);
44 if ( op->value.intval < 0 || (ulong)(op->value.intval) > max_uint )
45 return e_rangecheck;
46 size = op->value.intval;
47 sbody = (byte *)alloc(size, 1, "string");
48 if ( sbody == 0 ) return e_VMerror;
49 make_tasv(op, t_string, a_all, size, bytes, sbody);
(gdb) print *op
$24 = {tas = {type_attrs = 896, rsize = 1}, value = {intval = 128,
index = 128, realval = <invalid float value>,
bytes = 0x80<Address 0x80 out of bounds>,
const_bytes = 0x80<Address 0x80 out of bounds>, refs = 0x80,
const_refs = 0x80, pname = 0x80, const_pname = 0x80, pdict = 0x80,
const_pdict = 0x80, packed = 0x80, opproc = 0x80, pfile = 0x80,
pfont = 0x80, pcond = 0x80, plock = 0x80, pdevice = 0x80, pgstate = 0x80,
psave = 0x80}}
(gdb) print max_unit
No symbol "max_unit" in current context.
// comment from std.h
std.h:#define max_uint ((uint)0xffffffff + (uint)0)
(gdb) print max_uint
No symbol "max_uint" in current context.
(gdb) print (unsigned long)(op->value.intval)
$25 = 128
(gdb) print op->value.intval
$26 = 128
(gdb) print (unsigned long)(op->value.intval) > ((unsigned int)0xffffffff + (un
signed int)0)
$27 = 0
(gdb) where
#0 zstring (op=0x10010ed8) at zstring.c:45
#1 0x4084e4 in interp (pref=0x7fffbb48, perror_object=0x7fffbb70)
at interp.c:606
#2 0x406e34 in gs_interpret (pref=0x7fffbb48, user_errors=1,
pexit_code=0x7fffbb6c, perror_object=0x7fffbb70) at interp.c:182
#3 0x42980c in gs_run_file (file_name=0x1000427c "gs_init.ps", user_errors=1,
pexit_code=0x7fffbb6c, perror_object=0x7fffbb70) at gsmain.c:170
#4 0x429594 in gs_init2 () at gsmain.c:122
#5 0x4004a4 in main (argc=2, argv=0x7fffbbe4) at gs.c:193
(gdb) step
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads