gm2
[Top][All Lists]
Advanced

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

[Gm2] make gm2.paranoid is working again


From: Gaius Mulley
Subject: [Gm2] make gm2.paranoid is working again
Date: 13 Apr 2008 00:17:42 +0100
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4


Hi,

I've been checking in fixes over the last couple of days and the
compiler now builds itself and passes 'make gm2.paranoid'.  It also
builds the ulm libraries.  It still causes regression test errors
though:

# of expected passes            5676
# of unexpected failures        108
# of unresolved testcases       36

[on an LP64 Athlon GNU/Linux system]

The compiler has been extensively modified to include much better
range checking - ie delayed range checking so that it has a better
chance of detecting runtime errors at compile time, it does this even
if range checking is not requested by the user (in which case it does
not range generate checking code, just issues warnings).

Also SYSTEM.def now exports:

   INTEGER8, INTEGER16, INTEGER32, INTEGER64,
   CARDINAL8, CARDINAL16, CARDINAL32, CARDINAL64,
   WORD16, WORD32, WORD64,
   REAL32, REAL64, REAL96 and REAL128

type 'cd your_build_directory/gcc ; make gm2.ps'

and see the SYSTEM.def in the pim-libs to make sure they appear on
your target architecture.  They should only appear if the back end GCC
supports these data types.

Also included is __COLUMN__ which yields the column number of
the first token on the current line.  ADR("somestring") is also
allowed.

A new command line switch '-fdump-system-exports' has been added
which displays all types defined in SYSTEM.def (it will be extended
to include all procedures and constants).

The exception handling routines in gm2-libs/M2RTS.mod are mapped onto
their ISO Modula-2 counterparts and now M2EXCEPTIONS and RTExceptions
are part of the runtime system in gm2/gm2-libs as well as gm2/gm2-iso
libraries (they are currently called by the range checking runtime
code).

regards,
Gaius




reply via email to

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