gcl-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gcl-devel] Window ansi crash debug output


From: Camm Maguire
Subject: Re: [Gcl-devel] Window ansi crash debug output
Date: 31 Jan 2004 22:29:07 -0500
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Hi Mike!  OK, progress!

Mike Thomas <address@hidden> writes:

> Hi Camm.
> 
> I really don't know how you managed to work that out but it was
> certainly a welcome message. While Rosie was asleep this afternoon I

I can elaborate if interested.

> applied your patch, replaced the line to handle TEXT_NSCN (which was
> presumably a typo, it certainly didn't go far without it). and voila,
> instead of the pcl_braid problem we now have the pcl_fixup problem!!
> Never-the-less a substantial step forward - and I can tell you now
> that I feel a whole lot happier.
> 
> I haven't updated yet re the setf issue.  The make1.log is in the
> usual place, the revised patch is below and here is the debug
> situation which now seems to be "meaningful" instead of a buinch of
> mangled bad stack addresses:
> 
> call_or_link: fun 10107b40 START for function name: ERROR-SET
> call_or_link: fun 10107b40 EXIT POINT 2
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x004ba3c4 in LI23 (V215=0x103140b4, V216=0x103bdb64) at gcl_cmpeval.c:1522
> 1522            (V217->c.c_car)= (*(LnkLI169))((V218->c.c_car),(V216));
> (gdb)

Can you please print out at this point:

V217
V218
V216
LnkLI169

For the variables, if non-null, you should also be able to
p pp(V217)

etc., or 

p V217->d
p V217->c if cons, etc.

My guess is that LnkLI169 has been faslinked to a bad place.  Once you
know its value, perhaps you can search for the appropriate
call_or_link in your make log output, break there and investigate.

Take care,

> (gdb) where
> #0  0x004ba3c4 in LI23 (V215=0x103140b4, V216=0x103bdb64) at
> gcl_cmpeval.c:1522
> #1  0x004b8f97 in L12 () at gcl_cmpeval.c:840
> #2  0x004b8146 in LI2 (V7=0x103be090) at gcl_cmpeval.c:104
> #3  0x004ba03f in LI20 (V196=0x103be09c) at gcl_cmpeval.c:1422
> #4  0x0041c8a4 in quick_call_sfun (fun=0x1017aa78) at eval.c:117
> #5  0x0041dd51 in funcall_no_event (fun=0x1017aa78) at eval.c:376
> #6  0x0041ebde in super_funcall_no_event (fun=0x1017aa78) at eval.c:767
> #7  0x004b8c29 in L12 () at gcl_cmpeval.c:692
> #8  0x004b8146 in LI2 (V7=0x103bdce4) at gcl_cmpeval.c:104
> #9  0x004b7ec2 in LI1 (V3=0x103bdce4, V4=0x103bdc3c) at gcl_cmpeval.c:13
> #10 0x0049ae29 in LI5 (V36=0x103bdcb4) at gcl_cmptag.c:270
> #11 0x0041c8a4 in quick_call_sfun (fun=0x10180ba4) at eval.c:117
> #12 0x0041dd51 in funcall_no_event (fun=0x10180ba4) at eval.c:376
> #13 0x0041ebde in super_funcall_no_event (fun=0x10180ba4) at eval.c:767
> #14 0x004b8c29 in L12 () at gcl_cmpeval.c:692
> #15 0x004b8146 in LI2 (V7=0x103bdcc0) at gcl_cmpeval.c:104
> #16 0x004ba010 in LI20 (V196=0x103bdc78) at gcl_cmpeval.c:1405
> #17 0x004c448a in LI2 (V10=0x103bdc84) at gcl_cmpblock.c:69
> #18 0x0041c8a4 in quick_call_sfun (fun=0x10107618) at eval.c:117
> #19 0x0041dd51 in funcall_no_event (fun=0x10107618) at eval.c:376
> #20 0x0041ebde in super_funcall_no_event (fun=0x10107618) at eval.c:767
> #21 0x004b8c29 in L12 () at gcl_cmpeval.c:692
> #22 0x004b8146 in LI2 (V7=0x103bdc90) at gcl_cmpeval.c:104
> ---Type <return> to continue, or q <return> to quit---
> 
> #23 0x004b8d5f in L12 () at gcl_cmpeval.c:750
> #24 0x004b8146 in LI2 (V7=0x103be0a8) at gcl_cmpeval.c:104
> #25 0x004ba010 in LI20 (V196=0x103bdf54) at gcl_cmpeval.c:1405
> #26 0x004c448a in LI2 (V10=0x103bde28) at gcl_cmpblock.c:69
> #27 0x0041c8a4 in quick_call_sfun (fun=0x10107618) at eval.c:117
> #28 0x0041dd51 in funcall_no_event (fun=0x10107618) at eval.c:376
> #29 0x0041ebde in super_funcall_no_event (fun=0x10107618) at eval.c:767
> #30 0x004b8c29 in L12 () at gcl_cmpeval.c:692
> #31 0x004b8146 in LI2 (V7=0x103bde34) at gcl_cmpeval.c:104
> #32 0x004ba010 in LI20 (V196=0x103bde1c) at gcl_cmpeval.c:1405
> #33 0x004bddb1 in LI23 (V202=0x543330, V203=0x103bde1c) at gcl_cmpenv.c:1625
> #34 0x004a6dda in LI9 (V37=0x103be0b4, first=0x103c46c0) at gcl_cmplam.c:764
> #35 0x00490e3f in LI9 (V104=0x103be0d8) at gcl_cmptop.c:1037
> #36 0x0041c8a4 in quick_call_sfun (fun=0x10180a14) at eval.c:117
> #37 0x0041dd51 in funcall_no_event (fun=0x10180a14) at eval.c:376
> #38 0x0041ebde in super_funcall_no_event (fun=0x10180a14) at eval.c:767
> #39 0x0048f847 in L1 () at gcl_cmptop.c:112
> #40 0x0041f2f7 in eval (form=0x543330) at eval.c:1090
> #41 0x004199fd in Fcond (args=0x101668b8) at conditional.c:79
> #42 0x0041f087 in eval (form=0x1016693c) at eval.c:1037
> #43 0x0046008f in Ftagbody (body=0x10166870) at prog.c:95
> #44 0x0043c77b in Fdo (arg=0x1016696c) at iteration.c:184
> #45 0x0041f087 in eval (form=0x10166c9c) at eval.c:1037
> ---Type <return> to continue, or q <return> to quit---
> 
> Many thanks
> 
> Mike Thomas
> 
> 
> ===================================================================
> RCS file: /cvsroot/gcl/gcl/o/sfasl.c,v
> retrieving revision 1.16
> diff -r1.16 sfasl.c
> 23c23
> < #if 0
> ---
>  > #if 1
> 78a79
>  >     char *s_start_bss;
> 317a319
>  >             sfaslp->s_start_bss = start_address + textsize + datasize;
> 325a328
>  >       sfaslp->s_start_bss = start_address + textsize + datasize;
> 601a605,606
>  >     int n_value=(int)start_address;
>  >
> 618,626d622
> < #  ifdef  _WIN32
> <         case TEXT_NSCN:
> <             sym->n_value = (int)start_address;
> <             break;
> <         case DATA_NSCN:
> <             sym->n_value = (int)sfaslp->s_start_data;
> <             break;
> <         case BSS_NSCN:
> < #  else  /* _WIN32 */
> 627a624,630
>  > #ifdef  _WIN32
>  >         if (typ==DATA_NSCN)
>  >           n_value = (int)sfaslp->s_start_data;
>  >         if (typ==BSS_NSCN)
>  >           n_value = (int)sfaslp->s_start_bss;
>  >         if (typ==TEXT_NSCN)
>  >             n_value = (int)start_address;
> 644c647
> <             fprintf ( stderr, " new value will be start %x for sym
> %s,  \n", s
> tart_address, str );
> ---
>  >             fprintf ( stderr, " new value will be start %x for sym
> %s,  \n", n
> _value, str );
> 652c655
> <             sym->n_value = (int)start_address;
> ---
>  >             sym->n_value = n_value;
> 
> 
> 
> 
> 
> 

-- 
Camm Maguire                                            address@hidden
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah




reply via email to

[Prev in Thread] Current Thread [Next in Thread]