[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Bug report/Suggestions
- To: cmucl-bugs@CS.CMU.edu
- Subject: Re: Bug report/Suggestions
- From: Miles Bader <miles@cogsci.edinburgh.ac.uk>
- Date: Sat, 16 Nov 91 16:08:54 GMT
- Blat: Foop
- In-reply-to: <16977.9111161550@cogsci.ed.ac.uk>
- References: <16977.9111161550@cogsci.ed.ac.uk>
Rob_MacLachlan@edu.CMU.CS.SLISP.LISP-PMAX1 writes:
> segv_handler: No mapping fault: 0x00e80014
> segv_handler: Recursive no mapping fault (stack overflow?)
Incidentally, there's a bug in the code that detects the recursive NMF. It
goes into a break loop, like this:
nomap_count++;
...
interrupt_handle_now(sig,code,context);
if(code==SEGV_NOMAP)
nomap_count--;
And if it ever finds nomap_count non-zero, assumes it's getting recursively
called. But since you always just jump to the top level, it never actually
executes the nomap_count--, and even it sucessfully returns to the top level,
the next no-map error will cause it to exit (highly inconvenient if you
occasionally make bogus dereferencese...). I have no idea how to make it do
so correctly...
e.g., try
(system:sap-ref-32 (system:int-sap 0) 0)
q
(system:sap-ref-32 (system:int-sap 0) 0)
-Miles
--
Miles Bader -- HCRC, University of Edinburgh -- Miles.Bader@ed.ac.uk
99% of everything is grunge