gm2
[Top][All Lists]
Advanced

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

[Gm2] cvs latest changes and proposal


From: Gaius Mulley
Subject: [Gm2] cvs latest changes and proposal
Date: Thu, 08 Oct 2009 13:05:51 +0100
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.2 (gnu/linux)

Hi,

gm2 now sets up sigaction handlers to catch Modula-2 related signals.
This fixes 6 regression tests - and allows division by zero, NIL
dereferences to be caught by hardware and feed into the exception
routines.

<Proposal>

I propose that the compiler be modified to allow users to switch
software detection tests for these exception enumerations (on/off).
(from gm2/gm2-libs-iso/M2EXCEPTIONS.def)

enumeration field   switch on        switch off
--------------------------------------------------------
invalidloc          -fnil            -fno-nil
wholediv            -fwholediv       -fno-wholediv
wholevalue          -fwhilevalue     -fno-wholevalue
realdiv             -frealdiv        -fno-realdiv
realvalue           -frealvalue      -fno-realvalue
index               -findex          -fno-index       (array index checking)

in any event the libraries will always configure sigaction to catch
these signals (this is already the case) - but on some targets
sigaction might not be available and the above might be useful.  Any
thoughts?

</Proposal>

Anyway only 12 regressions fail on Debian LP64

regards,
Gaius


    * gm2/Make-lang.in:  added SysExceptions.c and
      SysExceptions.def
      to the list of library modules.  Also included the
      appropriate
      build rules.
    * gm2/gm2.texi:  added space.
    * gm2/el/g-mode.el:  added all ISO and PIM built-in Modula-2
      procedures and procedure functions.
    * gm2/gm2-libs/RTExceptions.mod:  new procedure functions
      (indexf), (range), (casef), (invalidloc), (function),
      (wholevalue), (wholediv), (realvalue), (realdiv),
      (complexvalue), (complexdiv), (protection), (systemf),
      (coroutine), (exception).  Call
      SysException.InitExceptionHandlers to init the signal
      call backs.o
    * gm2/init/gm2-gccinit:  add SysExceptions to the list of
      modules.
    * gm2/init/gm2lccinit:  add SysExceptions to the list of
      modules.
    * gm2/init/gm2lgeninit:  add SysExceptions to the list of
      modules.
    * gm2/init/gm2linit:  add SysExceptions to the list of
      modules.
    * gm2/init/gm2lorderinit:  add SysExceptions to the list of
      modules.
    * gm2/init/gm2minit:  add SysExceptions to the list of
      modules.
    * gm2/init/h2definit:  add SysExceptions to the list of
      modules.
    * gm2/init/ppginit:  add SysExceptions to the list of
      modules.


                === gm2 Summary ===

# of expected passes            8292
# of unexpected failures        12




reply via email to

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