woolsey@mri (04/06/91)
Fri Apr 5 14:31:41 PST 1991 Differences noted between m3-1.5 and m3-1.6 . First of all, the distribution is still inconvenient for Sys V.3 machines -- it's full of symbolic links and long filenames. This is where I ultimately want to run it. (Let's not construe this as doubting my sanity; this is driven by economic needs. :-) ) For now, I use a SPARCstation. I include here my experiences recompiling with 1.6 what previously compiled and ran with 1.5 . m3-1.6 enforces a slightly different language than 1.5 did. 1.5 accepts the following CASE statement while 1.6 complains: CASE something OF 1 => dothis() | 2 => dothat() | ELSE donothing() END; m3-1.6 is much more strict than 1.5 about importing an unsafe interface in a safe module (e.g. M3toC). Fortunately (or not) I was able to construct another safe interface that imported these things. At the moment I'm stuck at the following: m3 -c -g -k toa9.m3 M3 runtime error: Segmentation violation - possible attempt to dereference NIL Program /usr3/users/woolsey/sun4/lib/m3/m3compiler got fatal signal 3. *** Error code 1 make: Fatal error: Command failed for target `toa9.mo' I haven't yet had the time to isolate this case. Installation of this release on a SPARCstation, once I found enough disk space, was very clean. I'll also have to look into porting my change which provided file and line number information for some of the runtime faults (unless it has been incorporated into this release). (Namely these guys: _M3Runtime__AssertFault (); _M3Runtime__ReturnFault (); _M3Runtime__CaseFault (); _M3Runtime__TypecaseFault (); _M3Runtime__RangeFault (); _M3Runtime__NarrowFault (); ) -- Jeff Woolsey Microtec Research, Inc. 800 950 5554 amdcad!sun0!woolsey@amd.COM +1 408 980 1300 90% of my mail more than 3 hops away vanishes. Tell me why.