Mail Archives: djgpp/1998/07/19/07:05:47
On Thu, 16 Jul 1998, Jos De Laender wrote:
> - GNAT307 (GNU ADA) on a 386DX system without 387. ( some people
> do like old-timers, don't they ?)
> - GNU WMEMU387 installed as SW emulator after problems with
> the djgpp EMU387 (FPE if I remember correctly)
What were those problems, exactly?
In general, I would suggest to stick with EMU387 if at all possible,
since WMEMU387 is AFAIK not maintained by anybody, and thus could
become incompatible as DJGPP evolves.
> >From the moment I use tasking in my ADA (i.e. the diners - example)
> I crash with :
> cannot continue from exception; exiting due to signal 0123
> Page fault at ...
> (stuff)
Did you try to avoid using FP code in the program? If so, did it
help?
Since both multi-tasking and FP emulator use exceptions, you could
have some kind of conflict between them. The error message you cite
means that an exception handler for a real exception (as opposed to
ones DJGPP fakes to generate SIGINT) tried to return to the place
where the exception originated. This isn't allowed, so the DJGPP
exception-handling machinery aborts your program.
> Now, in a brave mood, I wanted to dig into code and try to debug.
> However, from the moment I use a debugger (gdb or fsdb) and just
> run the ada-tasking problems, everything goes OK !! i.e. the
> diners-example runs under debugger and crashes standalone.
>
> Here I'm stuck ... Anyone who can assist ?
Try the good old printf debugging.
- Raw text -