[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gcl-devel] ANSI Windows: in-package failure
From: |
Mike Thomas |
Subject: |
Re: [Gcl-devel] ANSI Windows: in-package failure |
Date: |
Wed, 04 Feb 2004 19:55:42 +1000 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax) |
Hi Camm.
#3 0x080a4f42 in Icall_continue_error_handler (error_name=0x853b678,
error_format_string=0x8a70f90, nfmt_args=2) at error.c:158
(gdb) p (((long)(0) + (4 -1)) & ~(4 -1))
$25 = 0
(gdb) p null_string
$26 = 0x852fcf0
(gdb) p pp(null_string)
$27 = void
(gdb) p null_string->st
$28 = {t = 13 '\r', flag = 0 '\0', s = 0 '\0', m = 0 '\0', st_displaced = 0x851b580,
st_hasfillp = 0, st_adjustable = 0, st_self = 0x8b20f18 "9", st_fillp = 0, st_dim = 0}
(gdb)
Almost sure you'd get 0x0/#<OBJNULL> for null_string.
You're right:
===================================================
>(in-package 'WRONG)
Breakpoint 1, Icall_continue_error_handler (error_name=0x1010c5e8,
error_format_string=0x10413fa8, nfmt_args=2) at error.c:145
145 b[0]= error_name;
(gdb) p (((long)(0) + (4 -1)) & ~(4 -1))
$1 = 0
(gdb) p null_string
$2 = 0x0
(gdb) p pp(null_string)
#<OBJNULL>$3 = void
===================================================
My suggestion:
cd unixport && make raw_ansi_gcl
then gdb raw_ansi_gcl, 'b gcl_init_error', 'r ./ <foo', and try to
figure out what's going wrong with null_string.
On startup, saved_ansi_gcl.exe has the bad value exhibited above.
I followed the raw_ansi_gcl suggestion today and found that
gcl_init_error set the value of null_string correctly. Here is a
shortened run - I'm close to being thrown off the phone by one of the
kids.
===================================================
(gdb) b gcl_init_error
Breakpoint 1 at 0x41c6f3: file error.c, line 819.
(gdb) r ./ <foo
Starting program: c:\cvs\head\gcl\unixport/raw_ansi_gcl.exe ./ <foo
GCL (GNU Common Lisp) April 1994 131072 pages
Breakpoint 1, gcl_init_error () at error.c:819
819 make_function("ERROR", Lerror);
(gdb)
(gdb) p null_string
$1 = 0x0
(gdb) n
820 make_function("CERROR", Lcerror);
(gdb) n
821 make_si_function("IHS-TOP", siLihs_top);
(gdb) n
822 null_string = make_simple_string("");
(gdb) n
823 enter_mark_origin(&null_string);
(gdb) p null_string
$2 = 0x10100d38
(gdb) p pp(null_string)
$3 = void
(gdb) p null_string->st
$4 = {t = 13 '\r', flag = 0 '\0', s = 0 '\0', m = 0 '\0',
st_displaced = 0x64fa70, st_hasfillp = 0, st_adjustable = 0,
st_self = 0x13e700b0 "", st_fillp = 0, st_dim = 0}
(gdb)
$5 = {t = 13 '\r', flag = 0 '\0', s = 0 '\0', m = 0 '\0',
st_displaced = 0x64fa70, st_hasfillp = 0, st_adjustable = 0,
st_self = 0x13e700b0 "", st_fillp = 0, st_dim = 0}
(gdb) b unexec
Breakpoint 2 at 0x4784c1: file unexnt.c, line 260.
(gdb) p &null_string
$6 = (object *) 0x64c150
(gdb) watch 0x64c150
Watchpoint 3: 6603088
(gdb) c
Continuing.
Building symbol table for c:/cvs/head/gcl/unixport/raw_ansi_gcl.exe ..
rsym_nt: c:/cvs/head/gcl/unixport/raw_ansi_gcl.exe rsym1080
===================================================
Just here it hangs (at least for five minutes. Am I being unrealistic
to expect unexec to work under a debugger?
I was watching the location of null_string in case it's being
overwritten rather than something being wrong with the unexec algorithm
per se
I'll try and poke around in the unexec process with printf debugging but
for now I'm probably off-line for this evening.
Also, in answer to another question you asked a while ago and I
neglected to answer - yes - I still have your modified source tree from
the work you did on my computer. When I looked at it at the time I
found that your configuration was treating the build as Cygwin which is
not good. I think it's a bit late to be changing the entire unexec file
for 2.6.2 though.
Also again, is it possible to get the debugger to watch for reads of a
memory location eg to see if unexec actually reads the location of
null_string during startup.
Cheers
Mike Thomas
Take care,
- Re: [Gcl-devel] Window ansi crash debug output, Mike Thomas, 2004/02/01
- [Gcl-devel] ANSI Windows: in-package failure, Mike Thomas, 2004/02/01
- Re: [Gcl-devel] ANSI Windows: in-package failure, Camm Maguire, 2004/02/02
- RE: [Gcl-devel] ANSI Windows: in-package failure, Mike Thomas, 2004/02/03
- Re: [Gcl-devel] ANSI Windows: in-package failure, Camm Maguire, 2004/02/03
- Re: [Gcl-devel] ANSI Windows: in-package failure,
Mike Thomas <=
- Re: [Gcl-devel] ANSI Windows: in-package failure, Camm Maguire, 2004/02/04
- Re: [Gcl-devel] ANSI Windows: in-package failure, Mike Thomas, 2004/02/09
- Re: [Gcl-devel] ANSI Windows: in-package failure, Camm Maguire, 2004/02/11
- RE: [Gcl-devel] ANSI Windows: in-package failure, Mike Thomas, 2004/02/15
- Re: [Gcl-devel] ANSI Windows: in-package failure, Camm Maguire, 2004/02/16
- RE: [Gcl-devel] ANSI Windows: in-package failure, Mike Thomas, 2004/02/16
- Re: [Gcl-devel] ANSI Windows: in-package failure, Camm Maguire, 2004/02/17
- RE: [Gcl-devel] ANSI Windows: in-package failure, Mike Thomas, 2004/02/17
- Re: [Gcl-devel] ANSI Windows: in-package failure, Camm Maguire, 2004/02/18
- RE: [Gcl-devel] ANSI Windows: in-package failure, Mike Thomas, 2004/02/18