[M3commit] [modula3/cm3] 4dc58c: My scripts foist current config on old tools.
jay.krell at cornell.edu
Tue Jun 2 08:08:42 CEST 2015
Author: Jay Krell <jay.krell at cornell.edu>
Date: 2015-06-01 (Mon, 01 Jun 2015)
My scripts foist current config on old tools.
At least make-dist.py does.
This may be surprising, but it has been effective
at working around problems in older tools when bootstrapping.
Historically _m3main.c was K&R C and not valid C++.
Now it is vali ANSI C and C++ but not K&R (todo: all three?).
Recently, in 5.8.6, I switched all targets to make main in C,
whereas it often previously was not.
When going right from an older toolset (5.8.6) to make-dist.py
and skipping upgrade.py, we fail, on Darwin, because it compiles
all C with g++ and _m3main.c is not valid C++.
if compiling C fails, and it is _m3main.c, try again with gcc's -xc
switch or Visual C++'s -TC switch.
Sun CC and clang could use attention potentially here.
upgrade.py remains an acceptable workaround.
As might be just accepting existing bootstrap config files..
Another option would be really separate C and C++ notions.
More information about the M3commit