[comp.lang.modula3] translating SEGV signal into m3 exception

nr@hart.Princeton.EDU (Norman Ramsey) (01/25/91)

When my (unsafe) m3 program causes a segmentation fault, I would like
a signal handler to raise a Modula-3 exception.  I've looked at
Usignal.i3, but I've always used signal(3) instead of sigvec(2), so I
don't know how to proceed.  In particular I don't know how to set
sv_mask and sv_flags.  I'm also not sure how to find the bad address
so I can indicate in my exception what address caused the fault.  Any
suggestions would be appreciated.
--
Norman Ramsey
nr@princeton.edu

muller@src.dec.com (Eric Muller) (01/25/91)

In article <6291@rossignol.Princeton.EDU>, nr@hart.Princeton.EDU (Norman Ramsey) writes:
> When my (unsafe) m3 program causes a segmentation fault, I would like
> a signal handler to raise a Modula-3 exception.  I've looked at
> Usignal.i3, but I've always used signal(3) instead of sigvec(2), so I
> don't know how to proceed.

Look at the body of system/corelib/runtime/RTMisc.m3. 

Eric Muller.