Hello GCC Steering Committee and fellow GCC developers,

I was wondering whether now might be a sensible time to graft GNU
Modula-2 into the GCC tree?  (on the master branch only).  At present
gm2 fully implements PIM2, PIM3, PIM4 and ISO dialects of Modula-2.  All
the ISO libraries are implemented - there are a number of PIM libraries
as well.  There are also no extra failures on master branch for other
languages when Modula-2 is introduced.

Since last year all non GPL3 material has been purged, the Ulm libraries
removed (which were GPL2) and libpth removed.  All dependent code
(coroutines) replaced by functionally equivalent modules using
libatomic.  Multilib libraries are built and gm2 works with lto.  All
code is now GPL3 or GPL3.1 with GCC runtime exemption (libraries).  It
comes with a testsuite using dejagnu.  gm2 builds and runs on i386,
amd64, powerpc64le, aarch64 and thanks to Matthias Klose there are gm2
Debian packages on https://packages.debian.org/bullseye/gm2 with a few
more architectures.

Currently gm2 is tracking the GCC development model, there are branches
open for [gm2-4, gm2-6, gm2-8, gm2-9, gm2-10], and gm2-master.
(Although the branches in [] < 10 are not all GPL3 compliant and/or
require libpth).

The gm2 front code is currently in git on Savannah:

   git clone https://git.savannah.nongnu.org/git/gm2.git

and there is a nightly automatic rebase of gm2 onto GCC which is
available from:

   git clone http://floppsie.comp.glam.ac.uk/gm2 gm2-floppsie

   [See http://www.nongnu.org/gm2/development.html].

which contains the above branches and GCC.  The gm2-master branch (on
the floppsie git repro) passes all regressions (on aarch64 and there is
one failure on amd64 - which I will fix after sending this email).  It
perhaps might be useful to have yet another language with a regression
testsuite even if just as a canary in the coal mine for various
architectures, maybe?

There are a few patches required to non m2 directories.  A number of
these have been posted before and reviewed twice by Richard Sandiford
and Joseph Myers.  (For reference
https://www.mail-archive.com/gcc-patches@gcc.gnu.org/msg225115.html).
I've made the suggested changes and the latest patches to be applied can
be found here:

   
http://git.savannah.nongnu.org/cgit/gm2.git/tree/gcc-versionno/gcc/m2/patches/gcc/trunk

The git sources can be browsed at:

   http://git.savannah.nongnu.org/cgit/gm2.git/tree/gcc-versionno

using the master branch.  When the patches are applied it would look
like the gm2-master branch on floppsie.comp.glam.ac.uk.

Anyway from my perspective I'd be very happy to see the master
branch reside in GCC :-) and was wondering if this is a good time?

regards,
Gaius

Reply via email to