1 2023-05-19 Gaius Mulley <gaiusmod2@gmail.com>
4 * gm2-libs-iso/Strings.mod (Delete): Re-implement.
6 2023-05-18 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
8 * gm2-gcc/m2builtins.cc (doradix): Use _P defines from tree.h.
10 (doexponentmin): Ditto.
11 (doexponentmax): Ditto.
14 (dogUnderflow): Ditto.
15 * gm2-gcc/m2convert.cc (unsafe_conversion_p): Ditto.
16 * gm2-gcc/m2expr.cc (m2expr_build_unary_op_check): Ditto.
17 (m2expr_build_binary_op_check): Ditto.
18 * gm2-gcc/m2tree.cc (m2tree_is_var): Ditto.
19 * gm2-gcc/m2treelib.cc (build_modify_expr): Ditto.
20 * gm2-gcc/m2type.cc (gm2_finish_decl): Ditto.
21 * m2pp.cc (hextree): Ditto.
22 (m2pp_call_expr): Ditto.
24 2023-05-17 Gaius Mulley <gaiusmod2@gmail.com>
26 * gm2-libs-iso/LongWholeIO.mod (WriteInt): Only request a
27 sign if the value is < 0.
28 * gm2-libs-iso/ShortWholeIO.mod (WriteInt): Only request a
29 sign if the value is < 0.
30 * gm2-libs-iso/WholeIO.mod (WriteInt): Only request a sign
32 * gm2-libs-iso/WholeStr.mod (WriteInt): Only request a sign
35 2023-05-16 Gaius Mulley <gaiusmod2@gmail.com>
38 * gm2-libs-iso/LongIO.mod (ReadReal): Call SkipSpaces.
39 * gm2-libs-iso/LongWholeIO.mod (ReadInt): Call SkipSpaces.
40 (ReadCard): Call SkipSpaces.
41 * gm2-libs-iso/RealIO.mod (ReadReal): Call SkipSpaces.
42 * gm2-libs-iso/ShortWholeIO.mod: (ReadInt): Call SkipSpaces.
43 (ReadCard): Call SkipSpaces.
44 * gm2-libs-iso/TextIO.mod: Import SkipSpaces.
45 * gm2-libs-iso/WholeIO.mod (ReadInt): Call SkipSpaces.
46 (ReadCard): Call SkipSpaces.
47 * gm2-libs-iso/TextUtil.def: New file.
48 * gm2-libs-iso/TextUtil.mod: New file.
50 2023-05-16 Gaius Mulley <gaiusmod2@gmail.com>
53 * gm2-libs-coroutines/TimerHandler.mod (EnableLED): New constant.
54 (Timer): Test EnableLED before switching on the scroll LED.
56 2023-05-12 Gaius Mulley <gaiusmod2@gmail.com>
59 * gm2-libs-iso/SeqFile.mod (newCid): New parameter toAppend
60 used to select FIO.OpenForRandom.
61 (OpenRead): Pass extra parameter to newCid.
62 (OpenWrite): Pass extra parameter to newCid.
63 (OpenAppend): Pass extra parameter to newCid.
65 2023-05-11 Gaius Mulley <gaiusmod2@gmail.com>
68 * gm2-compiler/M2ALU.mod (ConvertConstToType): Use
69 PrepareCopyString in place of DoCopyString.
70 * gm2-compiler/M2GenGCC.def (DoCopyString): Rename to ...
71 (PrepareCopyString): ... this.
72 * gm2-compiler/M2GenGCC.mod (CodeStatement): Call CodeReturnValue
73 with a single parameter. Call CodeXIndr with a single parameter.
74 (CodeReturnValue): Remove parameters and replace with a single
75 quadno. Reimplement using PrepareCopyString. Issue error
76 if the string exceeds designator space.
77 (DoCopyString): Reimplement and rename to ...
78 (PrepareCopyString): ... this.
79 (CodeXIndr): Remove parameters and replace with a single
80 quadno. Reimplement using PrepareCopyString. Issue error
81 if the string exceeds designator space.
82 (CodeBecomes): Remove parameters and replace with a single
83 quadno. Reimplement using PrepareCopyString. Issue error
84 if the string exceeds designator space.
85 * gm2-compiler/M2Quads.def (BuildReturn): Rename parameter to
87 * gm2-compiler/M2Quads.mod (BuildReturn): Rename parameter to
88 tokreturn. Rename tokno to tokcombined.
90 2023-05-09 Gaius Mulley <gaiusmod2@gmail.com>
93 * gm2-libs-iso/RTgen.mod (doLook): Remove old.
94 Remove re-assignment of result.
95 * gm2-libs-iso/TextIO.mod (CanRead): Rename into ...
96 (CharAvailable): ... this.
97 (DumpState): New procedure.
98 (SetResult): Rename as SetNul.
99 (WasGoodChar): Rename into ...
100 (EofOrEoln): ... this.
101 (SkipLine): Skip over the newline.
102 (ReadString): Flip THEN ELSE statements after testing for
104 (ReadRestLine): Flip THEN ELSE statements after testing for
107 2023-05-04 Gaius Mulley <gaiusmod2@gmail.com>
110 * gm2-compiler/M2GenGCC.mod (CodeStatement): Detect
111 ArithAddOp and call CodeAddChecked.
112 (ResolveConstantExpressions): Detect ArithAddOp and call
114 (FoldArithAdd): New procedure.
115 (FoldAdd): Refactor to use FoldArithAdd.
116 * gm2-compiler/M2Quads.def (QuadOperator): Add ArithAddOp.
117 * gm2-compiler/M2Quads.mod: Remove commented imports.
118 (QuadFrame): Changed comments to use GNU coding standards.
119 (ArithPlusTok): New global variable.
120 (BuildForToByDo): Use ArithPlusTok instead of PlusTok.
121 (MakeOp): Detect ArithPlusTok and return ArithAddOp.
122 (WriteQuad): Add ArithAddOp clause.
123 (WriteOperator): Add ArithAddOp clause.
124 (Init): Initialize ArithPlusTok.
126 2023-05-04 Gaius Mulley <gaiusmod2@gmail.com>
129 * Make-lang.in (MC-LIB-DEFS): Remove M2LINK.def.
130 (BUILD-PGE-O): Remove GM2LINK.o.
131 * Make-maintainer.in (PPG-DEFS): New define.
132 (PPG-LIB-DEFS): Remove M2LINK.def.
133 (BUILD-BOOT-PPG-H): Add PPGDEF .h files.
134 (m2/ppg$(exeext)): Remove M2LINK.o
135 (PGE-DEPS): New define.
136 (m2/pg$(exeext)): Remove M2LINK.o.
137 (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Add -Im2/gm2-pge-boot.
138 (m2/pge$(exeext)): Remove M2LINK.o.
139 (pge-maintainer): Re-implement.
140 (pge-libs-push): Re-implement.
141 (m2/m2obj3/cc1gm2$(exeext)): Remove M2LINK.o.
142 * gm2-libs/DynamicStrings.mod (writeAddress): Re-implement
144 * gm2-libs/M2Dependent.mod: Remove commented out imports.
145 * mc-boot/GDynamicStrings.cc: Rebuild.
146 * mc-boot/GFIO.cc: Rebuild.
147 * mc-boot/GFormatStrings.cc: Rebuild.
148 * mc-boot/GM2Dependent.cc: Rebuild.
149 * mc-boot/GM2Dependent.h: Rebuild.
150 * mc-boot/GM2RTS.cc: Rebuild.
151 * mc-boot/GM2RTS.h: Rebuild.
152 * mc-boot/GRTExceptions.cc: Rebuild.
153 * mc-boot/GRTint.cc: Rebuild.
154 * mc-boot/GSFIO.cc: Rebuild.
155 * mc-boot/GStringConvert.cc: Rebuild.
156 * mc-boot/Gdecl.cc: Rebuild.
157 * pge-boot/GASCII.cc: Rebuild.
158 * pge-boot/GASCII.h: Rebuild.
159 * pge-boot/GArgs.cc: Rebuild.
160 * pge-boot/GArgs.h: Rebuild.
161 * pge-boot/GAssertion.cc: Rebuild.
162 * pge-boot/GAssertion.h: Rebuild.
163 * pge-boot/GBreak.h: Rebuild.
164 * pge-boot/GCmdArgs.h: Rebuild.
165 * pge-boot/GDebug.cc: Rebuild.
166 * pge-boot/GDebug.h: Rebuild.
167 * pge-boot/GDynamicStrings.cc: Rebuild.
168 * pge-boot/GDynamicStrings.h: Rebuild.
169 * pge-boot/GEnvironment.h: Rebuild.
170 * pge-boot/GFIO.cc: Rebuild.
171 * pge-boot/GFIO.h: Rebuild.
172 * pge-boot/GFormatStrings.h:: Rebuild.
173 * pge-boot/GFpuIO.h:: Rebuild.
174 * pge-boot/GIO.cc: Rebuild.
175 * pge-boot/GIO.h: Rebuild.
176 * pge-boot/GIndexing.cc: Rebuild.
177 * pge-boot/GIndexing.h: Rebuild.
178 * pge-boot/GLists.cc: Rebuild.
179 * pge-boot/GLists.h: Rebuild.
180 * pge-boot/GM2Dependent.cc: Rebuild.
181 * pge-boot/GM2Dependent.h: Rebuild.
182 * pge-boot/GM2EXCEPTION.cc: Rebuild.
183 * pge-boot/GM2EXCEPTION.h: Rebuild.
184 * pge-boot/GM2RTS.cc: Rebuild.
185 * pge-boot/GM2RTS.h: Rebuild.
186 * pge-boot/GNameKey.cc: Rebuild.
187 * pge-boot/GNameKey.h: Rebuild.
188 * pge-boot/GNumberIO.cc: Rebuild.
189 * pge-boot/GNumberIO.h: Rebuild.
190 * pge-boot/GOutput.cc: Rebuild.
191 * pge-boot/GOutput.h: Rebuild.
192 * pge-boot/GPushBackInput.cc: Rebuild.
193 * pge-boot/GPushBackInput.h: Rebuild.
194 * pge-boot/GRTExceptions.cc: Rebuild.
195 * pge-boot/GRTExceptions.h: Rebuild.
196 * pge-boot/GSArgs.h: Rebuild.
197 * pge-boot/GSEnvironment.h: Rebuild.
198 * pge-boot/GSFIO.cc: Rebuild.
199 * pge-boot/GSFIO.h: Rebuild.
200 * pge-boot/GSYSTEM.h: Rebuild.
201 * pge-boot/GScan.h: Rebuild.
202 * pge-boot/GStdIO.cc: Rebuild.
203 * pge-boot/GStdIO.h: Rebuild.
204 * pge-boot/GStorage.cc: Rebuild.
205 * pge-boot/GStorage.h: Rebuild.
206 * pge-boot/GStrCase.cc: Rebuild.
207 * pge-boot/GStrCase.h: Rebuild.
208 * pge-boot/GStrIO.cc: Rebuild.
209 * pge-boot/GStrIO.h: Rebuild.
210 * pge-boot/GStrLib.cc: Rebuild.
211 * pge-boot/GStrLib.h: Rebuild.
212 * pge-boot/GStringConvert.h: Rebuild.
213 * pge-boot/GSymbolKey.cc: Rebuild.
214 * pge-boot/GSymbolKey.h: Rebuild.
215 * pge-boot/GSysExceptions.h: Rebuild.
216 * pge-boot/GSysStorage.cc: Rebuild.
217 * pge-boot/GSysStorage.h: Rebuild.
218 * pge-boot/GTimeString.h: Rebuild.
219 * pge-boot/GUnixArgs.h: Rebuild.
220 * pge-boot/Gbnflex.cc: Rebuild.
221 * pge-boot/Gbnflex.h: Rebuild.
222 * pge-boot/Gdtoa.h: Rebuild.
223 * pge-boot/Gerrno.h: Rebuild.
224 * pge-boot/Gldtoa.h: Rebuild.
225 * pge-boot/Glibc.h: Rebuild.
226 * pge-boot/Glibm.h: Rebuild.
227 * pge-boot/Gpge.cc: Rebuild.
228 * pge-boot/Gtermios.h: Rebuild.
229 * pge-boot/Gwrapc.h: Rebuild.
230 * mc-boot/GM2LINK.h: Removed.
231 * pge-boot/GM2LINK.cc: Removed.
232 * pge-boot/GM2LINK.h: Removed.
234 2023-04-30 Gaius Mulley <gaiusmod2@gmail.com>
236 * gm2-compiler/SymbolTable.mod (ConstLitPoolEntry): New
238 (ConstLitSym): New field RangeError.
239 (ConstLitPoolTree): New SymbolTree representing name to
241 (ConstLitArray): New dynamic array containing pointers
242 to a ConstLitPoolEntry.
243 (CreateConstLit): New procedure function.
244 (LookupConstLitPoolEntry): New procedure function.
245 (AddConstLitPoolEntry): New procedure function.
246 (MakeConstLit): Re-implemented to check the constant lit
247 pool before calling CreateConstLit.
248 * m2.flex: Add ability to decode binary constant literals.
250 2023-04-26 Gaius Mulley <gaiusmod2@gmail.com>
253 * gm2-compiler/M2ALU.mod (Less): Reformatted.
254 * gm2-compiler/SymbolTable.mod (DetermineSizeOfConstant): Remove
256 (ConstantStringExceedsZType): Import.
257 (GetConstLitType): Re-implement using ConstantStringExceedsZType.
258 * gm2-gcc/m2decl.cc (m2decl_DetermineSizeOfConstant): Remove.
259 (m2decl_ConstantStringExceedsZType): New function.
260 (m2decl_BuildConstLiteralNumber): Re-implement.
261 * gm2-gcc/m2decl.def (DetermineSizeOfConstant): Remove.
262 (ConstantStringExceedsZType): New function.
263 * gm2-gcc/m2decl.h (m2decl_DetermineSizeOfConstant): Remove.
264 (m2decl_ConstantStringExceedsZType): New function.
265 * gm2-gcc/m2expr.cc (append_digit): Remove.
266 (m2expr_interpret_integer): Remove.
267 (append_m2_digit): Remove.
268 (m2expr_StrToWideInt): New function.
269 (m2expr_interpret_m2_integer): Remove.
270 * gm2-gcc/m2expr.def (CheckConstStrZtypeRange): New function.
271 * gm2-gcc/m2expr.h (m2expr_StrToWideInt): New function.
272 * gm2-gcc/m2type.cc (build_m2_word64_type_node): New function.
273 (build_m2_ztype_node): New function.
274 (m2type_InitBaseTypes): Call build_m2_ztype_node.
275 * gm2-lang.cc (gm2_type_for_size): Re-write using early returns.
277 2023-04-21 Arsen Arsenović <arsen@aarsen.me>
279 * Make-lang.in: Remove references to $(P).
280 * Make-maintainer.in: Ditto.
282 2023-04-21 Gaius Mulley <gaiusmod2@gmail.com>
285 * gm2-gcc/m2tree.cc (m2tree_IsAConstant): Add (TREE_CODE
286 (t) == CONSTRUCTOR) to expression.
288 2023-04-13 Gaius Mulley <gaiusmod2@gmail.com>
291 * lang.opt: Fix typo "maybe" to "may be".
293 2023-04-13 Gaius Mulley <gaiusmod2@gmail.com>
295 * gm2-compiler/M2ALU.def (PopChar): New procedure function.
296 * gm2-compiler/M2ALU.mod (PopChar): New procedure function.
297 * gm2-compiler/M2GCCDeclare.mod (PromoteToString): Detect
298 a single constant char and build a C string.
299 * gm2-compiler/M2GenGCC.mod (IsConstStr): New procedure
301 (GetStr): New procedure function.
302 (FoldAdd): Use IsConstStr.
303 * gm2-compiler/M2Quads.mod: Formatting changes.
304 * gm2-gcc/m2expr.cc (m2expr_GetCstInteger): New function.
305 * gm2-gcc/m2expr.def (GetCstInteger): New procedure function.
306 * gm2-gcc/m2expr.h (m2expr_GetCstInteger): New prototype.
308 2023-04-05 Gaius Mulley <gaiusmod2@gmail.com>
311 * gm2-compiler/M2Base.def (Unbounded): Remove.
312 * gm2-compiler/M2Error.def (ErrorAbort0): Add noreturn
314 * gm2-compiler/M2Quads.mod (BuildInclProcedure): Correct
316 (BuildExceptProcedure): Correct error format string.
317 (BuildAdrFunction): Call PutWriteQuad when taking the
318 address of a variable.
319 * gm2-libs-ch/SysExceptions.c (_M2_SysExceptions_init): Add
321 * gm2-libs-ch/wrapc.c (_M2_wrapc_init): Add parameters.
322 * gm2-libs/DynamicStrings.mod (DumpStringInfo): Remove t.
323 (PopAllocationExemption): Remove f.
324 * gm2-libs/FIO.mod (BufferedWrite): Remove result.
325 * gm2-libs/FormatStrings.mod (Copy): Remove endpos and
327 (HandlePercent): Remove result.
328 * gm2-libs/Indexing.mod (RemoveIndiceFromIndex): Remove k.
329 * gm2-libs/M2Dependent.mod (CreateModule): Remove p0
331 (DumpModuleData): Remove mptr.
332 (ConstructModules): Remove nulp.
333 * gm2-libs/RTExceptions.mod (PopHandler): Remove i.
334 * gm2-libs/RTint.mod (Listen): Remove b4s, b4m, afs
336 * gm2-libs/SFIO.mod (ReadS): Remove c.
337 * gm2-libs/StringConvert.mod (doDecimalPlaces): Remove
340 2023-04-03 Gaius Mulley <gaiusmod2@gmail.com>
343 * gm2-compiler/M2GCCDeclare.mod (DoVariableDeclaration):
344 Remove second parameter module. Adjust all callers to
345 remove the second parameter.
346 * gm2-compiler/PHBuild.bnf (CheckAndInsert): Remove.
349 (PushQualident): Remove.
351 (ActualParameters): Remove.
353 2023-04-02 Gaius Mulley <gaiusmod2@gmail.com>
356 * Make-lang.in (GM2_O): Set to -O0.
357 (GM2_LIBS): Remove target libraries and replace with build libs.
358 (BUILD-LIBS): New declaration.
359 (m2/gm2-libs/libgm2.a): New rule.
360 (m2/gm2-libs/%.o): New rule.
361 (m2/gm2-libs/choosetemp.o): New rule.
362 * gm2-compiler/M2ColorString.mod (append): Use ADR rather than
364 * gm2-compiler/M2Comp.mod (Compile): Add qprintf messages for when
365 a source file is not found. Improve comments and formatting.
366 * gm2-libs-ch/cgetopt.c (cgetopt_cgetopt_long): Remove
367 ansi-decl.h. Add getopt.h.
368 (cgetopt_cgetopt_long_only): Change cgetopt_ to getopt_.
369 * gm2spec.cc (lang_specific_driver): Do not skip -fmod=.
372 2023-03-29 Gaius Mulley <gaiusmod2@gmail.com>
376 * gm2-compiler/M2FileName.mod (CalculateFileName): Simplified by
377 ensuring the extension contains the ".".
378 (CalculateStemName): Re-formatted.
379 (ExtractExtension): Re-formatted.
380 (ExtractModule): Re-formatted.
381 * gm2-compiler/M2Options.def (setdefextension): Add block comment.
382 (setmodextension): Add block comment. Re-formatted.
383 * gm2-compiler/M2Options.mod (setdefextension): Add block comment.
384 (setmodextension): Add block comment. Re-formatted.
385 * gm2-compiler/M2Search.mod (FindSourceDefFile): Use
387 (DefaultDefExt): New constant.
388 (DefaultModExt): New constant.
389 (FindSourceModFile): Use DefaultModExt.
390 * gm2-gcc/m2decl.cc (m2decl_DeclareKnownVariable): Correct
392 * gm2spec.cc (M2SOURCE): New constant.
393 (LANGSPEC): New value.
394 (MATHLIB): New value.
395 (WITHLIBC): New value.
396 (SKIPOPT): New value.
397 (lang_specific_driver): Replace seen_module_extension bool with
398 module_extension char *. Detect -fmod= and remember extension.
399 Use the extension to detect modula-2 source and mark it as such.
401 2023-03-23 Gaius Mulley <gaiusmod2@gmail.com>
404 * gm2-compiler/M2Quads.mod (BuildConstFunctionCall): Comment
405 out ErrorString in debugging block.
406 (BuildConstructorStart): Replace Assert with a call to
407 MetaErrorT3. Import MetaErrorT3.
408 * gm2-compiler/PCSymBuild.mod (buildConstFunction): Rename
410 (WalkFunctionParam): Remove test for IsEnumeration when
411 resolving MIN or MAX parameters.
412 * gm2-compiler/PHBuild.bnf (BlockAssert): New procedure.
413 (ErrorArrayat): New procedure.
414 (Expect): Renamed parameter t to tok.
415 (PushQualident): New rule.
416 (ConstSetOrQualidentOrFunction): Force AutoOn.
417 (TypeDeclaration): Add debugging assert.
418 (SimpleType): Add debugging assert.
419 (DefaultRecordAttributes): New rule (and bugfix).
420 (FieldPragmaExpression): New rule (and bugfix).
421 (PragmaConstExpression): New rule (and bugfix).
422 (SetOrDesignatorOrFunction): Add debugging assert.
423 (Block): Add debugging assert.
424 * gm2-gcc/m2expr.cc (m2expr_ConstantExpressionWarning): int
426 * gm2-gcc/m2expr.h (m2expr_TreeOverflow): int to bool.
427 (m2expr_GetBooleanTrue): Remove.
428 (m2expr_GetBooleanFalse): Remove.
429 * gm2-gcc/m2options.h (M2Options_SetStatistics): Replace
432 2023-03-22 Gaius Mulley <gaiusmod2@gmail.com>
435 * Make-lang.in (m2/pge-boot/%.o): Add CFLAGS and CXXFLAGS for C
437 * gm2spec.cc (add_m2_I_path): Indentation.
438 (lang_specific_driver): New variable seen_pathname.
439 Detect -fm2-pathname. If not seen then push_back_Ipath (".").
440 Change non iso library path to "m2cor,m2log,m2pim,m2iso".
442 2023-03-22 Gaius Mulley <gaiusmod2@gmail.com>
445 * Make-lang.in (m2/stage2/cc1gm2$(exeext)): Remove
446 m2/gm2-libs-boot/M2LINK.o.
447 (m2/stage1/cc1gm2$(exeext)): Ditto.
448 (GM2-LIBS-BOOT-DEFS): Remove M2LINK.def.
449 (GM2-LIBS-DEFS): Ditto.
450 (m2/mc-boot/$(SRC_PREFIX)%.o): Replace CXX_FLAGS with CXXFLAGS.
451 (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto.
452 (m2/mc-boot/main.o): Ditto.
453 (mcflex.o): Add $(CFLAGS).
454 (m2/gm2-libs-boot/M2LINK.o): Remove rule.
455 * gm2-compiler/M2GCCDeclare.def (DeclareM2linkGlobals): Remove.
456 * gm2-compiler/M2GCCDeclare.mod: (M2LinkEntry): Remove.
457 (M2LinkIndex): Remove.
458 (DoVariableDeclaration): Remove initial and call to
460 (AddEntryM2Link): Remove.
461 (GetEntryM2Link): Remove.
462 (DeclareM2linkGlobals): Remove.
463 (DetectM2LinkInitial): Remove.
464 (InitM2LinkModule): Remove.
465 * gm2-compiler/M2GenGCC.mod (CodeFinallyEnd): Remove call to
466 DeclareM2linkGlobals.
467 * gm2-compiler/M2Quads.mod (BuildM2InitFunction): Add extra
468 parameter containing runtime module override to ConstructModules.
469 * gm2-compiler/M2Scaffold.mod: Update comment describing
471 * gm2-gcc/m2decl.cc (m2decl_DeclareM2linkForcedModuleInitOrder):
473 * gm2-libs-iso/M2RTS.def (ConstructModules): Add overrideliborder
475 * gm2-libs-iso/M2RTS.mod: Add overrideliborder parameter.
476 * gm2-libs/M2Dependent.def (ConstructModules): Add overrideliborder
478 * gm2-libs/M2Dependent.mod (ConstructModules): Add overrideliborder
480 * gm2-libs/M2RTS.def (ConstructModules): Add overrideliborder parameter.
481 * gm2-libs/M2RTS.mod (ConstructModules): Add overrideliborder
483 * gm2-libs/M2LINK.def: Removed.
485 2023-03-21 Gaius Mulley <gaiusmod2@gmail.com>
487 * Make-lang.in (m2/mc-boot/$(SRC_PREFIX)%.o): Add $(CXXFLAGS).
488 (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Add $(CXXFLAGS).
489 (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Add $(CXXFLAGS).
490 (m2/mc-boot/main.o): Add $(CXXFLAGS).
492 2023-03-19 Gaius Mulley <gaiusmod2@gmail.com>
494 * Make-maintainer.in (gm2.maintainer-clean): Remove.
495 (gm2.maintainer-help): Add gm2.maintainer-tools,
496 gm2.maintainer-doc. Remove gm2.maintainer-clean.
497 Change target-independent directory to target-independent/m2.
498 * gm2-compiler/ppg.mod: Correct __FILE_ typo to __FILE__.
499 * gm2-compiler/M2Options.def (SetAutoInit): Update comment.
500 * gm2-compiler/M2Options.mod (SetAutoInit): Update comment.
501 * gm2-gcc/m2color.cc (m2color_colorize_start): Rename name_len
503 * gm2-gcc/m2color.def (colorize_start): change ARRAY OF CHAR to
504 ADDRESS and add _name_high.
505 * gm2-gcc/m2decl.cc (m2decl_BuildStartFunctionDeclaration): Change
507 * gm2-gcc/m2decl.h (m2decl_BuildStartFunctionDeclaration): Change
509 * gm2-gcc/m2expr.cc (m2expr_BuildBinarySetDo): Change int to bool.
510 (m2expr_BuildIfConstInVar): Change int to bool.
511 (m2expr_BuildIfNotConstInVar): Change int to bool.
512 (m2expr_BuildIfVarInVar): Change int to bool.
513 (m2expr_BuildIfNotVarInVar): Change int to bool.
514 (m2expr_BuildForeachWordInSetDoIfExpr): Change int to bool.
515 * gm2-gcc/m2expr.h (m2expr_BuildIfNotVarInVar): Change int to bool.
516 (m2expr_BuildIfVarInVar): Change int to bool.
517 (m2expr_BuildIfNotConstInVar): Change int to bool.
518 (m2expr_BuildIfConstInVar): Change int to bool.
519 * gm2-gcc/m2options.h (M2Options_SetAutoInit): Change int to bool.
520 (M2Options_SetNilCheck): Change int to bool.
521 (M2Options_SetReturnCheck): Change int to bool.
522 (M2Options_SetCaseCheck): Change int to bool.
523 (M2Options_SetCheckAll): Change int to bool.
524 (M2Options_SetVerboseUnbounded): Change int to bool.
525 (M2Options_SetUnboundedByReference): Change int to bool.
526 (M2Options_SetOptimizing): Change int to bool.
527 (M2Options_SetQuiet): Change int to bool.
528 (M2Options_SetCpp): Change int to bool.
529 (M2Options_SetM2g): Change int to bool.
530 (M2Options_SetLowerCaseKeywords): Change int to bool.
531 (M2Options_SetVerbose): Change int to bool.
532 * gm2-gcc/m2treelib.cc (m2treelib_get_rvalue): Change int to bool.
533 (m2treelib_get_field_no): Change int to bool.
534 (m2treelib_get_set_value): Change int to bool.
535 (m2treelib_get_set_address): Change int to bool.
536 (m2treelib_get_set_address_if_var): Change int to bool.
537 * gm2-gcc/m2treelib.def (get_set_address_if_var): Change int to bool.
538 (get_set_address): Change int to bool.
539 (get_set_value): Change int to bool.
540 (get_field_no): Change int to bool.
541 (get_rvalue): Change int to bool.
542 * gm2-gcc/m2treelib.h (m2treelib_get_field_no): Change int to bool.
543 (m2treelib_get_set_value): Change int to bool.
544 (m2treelib_get_set_address): Change int to bool.
545 (m2treelib_get_set_address_if_var): Change int to bool.
546 * gm2-gcc/m2type.cc (m2type_BuildEndFunctionType): Change int to bool.
547 * gm2-gcc/m2type.h (m2type_BuildEndFunctionType): Change int to bool.
548 * gm2-libs-ch/dtoa.cc (dtoa_calcsign): Change int to bool.
549 * gm2-libs-ch/ldtoa.cc (dtoa_calcsign): Change int to bool.
550 (ldtoa_ldtoa): Change int to bool.
551 * m2.flex (functionInfo): Change int to bool.
552 (pushFunction): Change parameter from int to bool.
553 * mc-boot/GDebug.cc (Debug_Halt): Rebuild.
554 * mc-boot/GDebug.h (Debug_Halt): Rebuild.
555 * mc-boot/GDynamicStrings.cc: Rebuild.
556 * mc-boot/GDynamicStrings.h: Rebuild.
557 * mc-boot/GFIO.cc: Rebuild.
558 * mc-boot/GM2RTS.cc: Rebuild.
559 * mc-boot/GM2RTS.h: Rebuild.
560 * mc-boot/GPushBackInput.cc: Rebuild.
561 * mc-boot/GRTExceptions.cc: Rebuild.
562 * mc-boot/GRTint.cc: Rebuild.
563 * mc-boot/GSysStorage.cc: Rebuild.
564 * mc-boot/Gdecl.cc: Rebuild.
565 * mc-boot/GsymbolKey.cc: Rebuild.
566 * mc/symbolKey.mod: Rebuild.
567 * target-independent/m2/Builtins.texi: Rebuild.
568 * target-independent/m2/SYSTEM-iso.texi: Rebuild.
569 * target-independent/m2/SYSTEM-pim.texi: Rebuild.
570 * target-independent/m2/gm2-libs.texi: Rebuild.
571 * tools-src/def2doc.py (PIM_Log): Change gm2-libs-pim to
574 2023-03-17 Gaius Mulley <gaiusmod2@gmail.com>
577 * gm2-gcc/m2expr.cc: Correct ? : order in comments.
578 (m2expr_BuildDivM2): Improve comment.
579 * lang.opt: Improve option descriptions.
581 2023-03-17 Gaius Mulley <gaiusmod2@gmail.com>
584 * gm2-gcc/m2builtins.cc (ASSERT): Change format specifier to
585 use %qs rather than quotes.
587 2023-03-17 Gaius Mulley <gaiusmod2@gmail.com>
589 * gm2-compiler/M2AsmUtil.mod (SymNeedsModulePrefix):
591 * gm2-libs/SysStorage.mod (enableTrace): Disable tracing.
593 2023-03-16 Gaius Mulley <gaiusmod2@gmail.com>
595 * gm2-compiler/SymbolKey.mod (PutSymKey): Halt parameters
598 * gm2-compiler/ppg.mod (GetEpsilon): Ditto.
599 (GetReachEnd): Ditto.
601 (CodeCondition): Ditto.
604 (RecoverCondition): Ditto.
605 (ConditionIndent): Ditto.
606 * gm2-libs-ch/m2rts.h (M2RTS_Halt): Ditto.
607 * gm2-libs-coroutines/Executive.mod (Assert): Ditto.
608 (Resume): Remove redundant comments.
609 (Wait): Remove redundant comments.
610 * gm2-libs-coroutines/SYSTEM.mod (TRANSFER): Halt parameters
612 (IOTransferHandler): Ditto.
615 * gm2-libs-coroutines/TimerHandler.mod (WaitOn): Halt parameters
619 (OnActiveQueue): Ditto.
620 * gm2-libs-iso/COROUTINES.mod (NEWCOROUTINE): Ditto.
623 * gm2-libs-iso/EXCEPTIONS.mod (RAISE): Correct Halt parameters.
624 * gm2-libs-iso/M2RTS.def (Halt): Halt parameters reordered.
626 * gm2-libs-iso/M2RTS.mod: Ditto.
627 * gm2-libs-iso/RTentity.mod (PutKey): Ditto.
629 (findChildAndParent): Ditto.
631 * gm2-libs-iso/Storage.mod (ALLOCATE): Add DebugTrace.
632 Add UseMallocFree test.
633 (DEALLOCATE): Add DebugTrace. Add UseMallocFree test.
634 (assert): Halt parameters reordered.
635 * gm2-libs-log/Termbase.mod (Read): Ditto.
639 * gm2-libs/Debug.def (Halt): Halt parameters reordered.
640 * gm2-libs/Debug.mod (Halt): Ditto.
641 * gm2-libs/DynamicStrings.def (PopAllocation): Improve comment.
642 * gm2-libs/DynamicStrings.mod (PopAllocation): Improve comment.
643 Halt parameters reordered.
644 * gm2-libs/M2RTS.def (Halt): Ditto.
646 * gm2-libs/M2RTS.mod (Halt): Ditto.
648 * gm2-libs/PushBackInput.mod (PutStr): Ditto.
651 * gm2-libs/RTExceptions.mod (GetBaseExceptionBlock): Ditto.
652 * gm2-libs/RTint.mod (ReArmTimeVector): Ditto.
653 (GetTimeVector): Ditto.
654 (AttachVector): Ditto.
655 (IncludeVector): Ditto.
657 * gm2-libs/SysStorage.mod (ALLOCATE): Ditto.
660 * gm2-libs-coroutines/Debug.def: Removed.
661 * gm2-libs-coroutines/Debug.mod: Removed.
663 2023-03-16 Gaius Mulley <gaiusmod2@gmail.com>
665 * Make-lang.in: Rename target-independent to
666 target-independent/m2.
667 * target-independent/readme.txt: Update.
668 * target-independent/m2/gm2-ebnf.texi: New file.
669 * target-independent/m2/gpl_v3_without_node.texi: New file.
670 * target-independent/Builtins.texi: Rename ...
671 * target-independent/m2/Builtins.texi: ... to this.
672 * target-independent/SYSTEM-iso.texi: Rename ...
673 * target-independent/m2/SYSTEM-iso.texi: ... to this.
674 * target-independent/SYSTEM-pim.texi: Rename ...
675 * target-independent/m2/SYSTEM-pim.texi: ... to this.
676 * target-independent/gm2-libs.texi: Rename ...
677 * target-independent/m2/gm2-libs.texi: ... to this.
679 2023-03-15 Gaius Mulley <gaiusmod2@gmail.com>
682 * gm2-libs-ch/dtoa.cc (dtoa_strtod): Replace int with bool.
683 * gm2-libs-ch/ldtoa.cc (ldtoa_strtold): Replace int with bool.
685 2023-03-14 Gaius Mulley <gaiusmod2@gmail.com>
688 * gm2-libs-ch/cgetopt.c (cgetopt_SetOption): Replace int
690 * gm2-libs-ch/termios.c (doSetUnset): Replace int for bool.
691 * gm2-libs/Builtins.mod (isfinitef): Correct typo in return
694 2023-03-13 Gaius Mulley <gaiusmod2@gmail.com>
697 * gm2-compiler/M2ALU.def (PushString): New parameter issueError.
698 * gm2-compiler/M2ALU.mod (PushString): New parameter issueError.
699 * gm2-compiler/SymbolTable.mod (PushString): New parameter issueError.
700 * gm2-gcc/m2decl.cc (m2decl_DetermineSizeOfConstant): Pass
701 location to interpret_m2_integer.
702 (m2decl_BuildConstLiteralNumber): New parameter issueError.
703 * gm2-gcc/m2expr.cc (m2expr_IsTrue): Replace int with bool.
704 (m2expr_IsFalse): Replace int with bool.
705 (m2expr_AreConstantsEqual): Replace int with bool.
706 (m2expr_BuildBinaryForeachWordDo): Call m2linemap_internal_error_at.
707 (append_digit): Ditto.
708 (m2expr_interpret_integer): Add location parameter.
709 (append_m2_digit): Call m2linemap_internal_error_at.
710 (m2expr_interpret_m2_integer): Add location parameter.
711 (m2expr_GetSizeOf): Replace sizeof with SIZE in error message.
712 * gm2-gcc/m2expr.h (m2expr_AreRealOrComplexConstantsEqual):
713 Replace int with bool.
714 (m2expr_AreConstantsEqual): Ditto.
715 (m2expr_IsFalse): Ditto.
716 (m2expr_IsTrue): Ditto.
717 (m2expr_interpret_integer): Add location parameter.
718 (m2expr_interpret_m2_integer): Add location parameter.
719 * gm2-gcc/m2linemap.cc (mformat_value): New function.
720 (expand_format): New function.
721 (expand_message): New function.
722 (gm2_internal_error_at): New function.
723 (m2linemap_internal_error_at): New function.
724 * gm2-gcc/m2linemap.h (m2linemap_internal_error_at): New function.
725 * gm2-gcc/m2options.h (M2Options_SetISO): Replace int with bool.
726 (M2Options_SetPIM): Ditto.
727 (M2Options_SetPIM2): Ditto.
728 (M2Options_SetPIM3): Ditto.
729 (M2Options_SetPIM4): Ditto.
730 (M2Options_SetFloatValueCheck): Ditto.
731 (M2Options_SetWholeValueCheck): Ditto.
732 (M2Options_GetISO): Ditto.
733 (M2Options_GetPIM): Ditto.
734 (M2Options_GetPIM2): Ditto.
735 (M2Options_GetPIM3): Ditto.
736 (M2Options_GetPIM4): Ditto.
737 (M2Options_GetPositiveModFloor): Ditto.
738 (M2Options_GetFloatValueCheck): Ditto.
739 (M2Options_GetWholeValueCheck): Ditto.
740 (M2Options_Setc): Ditto.
741 (M2Options_Getc): Ditto.
742 (M2Options_SetPPOnly): Ditto.
743 (M2Options_GetPPOnly): Ditto.
744 (M2Options_SetUselist): Ditto.
745 (M2Options_SetAutoInit): Ditto.
746 (M2Options_SetPositiveModFloor): Ditto.
747 (M2Options_SetNilCheck): Ditto.
748 (M2Options_SetWholeDiv): Ditto.
749 (M2Options_SetIndex): Ditto.
750 (M2Options_SetRange): Ditto.
751 (M2Options_SetReturnCheck): Ditto.
752 (M2Options_SetCaseCheck): Ditto.
753 (M2Options_SetCheckAll): Ditto.
754 (M2Options_SetExceptions): Ditto.
755 (M2Options_SetStyle): Ditto.
756 (M2Options_SetPedantic): Ditto.
757 (M2Options_SetPedanticParamNames): Ditto.
758 (M2Options_SetPedanticCast): Ditto.
759 (M2Options_SetExtendedOpaque): Ditto.
760 (M2Options_SetVerboseUnbounded): Ditto.
761 (M2Options_SetXCode): Ditto.
762 (M2Options_SetCompilerDebugging): Ditto.
763 (M2Options_SetQuadDebugging): Ditto.
764 (M2Options_SetDebugTraceQuad): Ditto.
765 (M2Options_SetDebugTraceAPI): Ditto.
766 (M2Options_SetSources): Ditto.
767 (M2Options_SetUnboundedByReference): Ditto.
768 (M2Options_SetDumpSystemExports): Ditto.
769 (M2Options_SetOptimizing): Ditto.
770 (M2Options_SetQuiet): Ditto.
771 (M2Options_SetCC1Quiet): Ditto.
772 (M2Options_SetCpp): Ditto.
773 (M2Options_SetSwig): Ditto.
774 (M2Options_SetWholeProgram): Ditto.
775 (M2Options_SetDebugFunctionLineNumbers): Ditto.
776 (M2Options_SetGenerateStatementNote): Ditto.
777 (M2Options_GetCpp): Ditto.
778 (M2Options_GetM2g): Ditto.
779 (M2Options_SetM2g): Ditto.
780 (M2Options_SetLowerCaseKeywords): Ditto.
781 (M2Options_SetVerbose): Ditto.
782 (M2Options_SetUnusedVariableChecking): Ditto.
783 (M2Options_SetUnusedParameterChecking): Ditto.
784 (M2Options_SetStrictTypeChecking): Ditto.
785 (M2Options_SetWall): Ditto.
786 (M2Options_SetSaveTemps): Ditto.
787 (M2Options_GetSaveTemps): Ditto.
788 (M2Options_SetScaffoldStatic): Ditto.
789 (M2Options_SetScaffoldDynamic): Ditto.
790 (M2Options_SetScaffoldMain): Ditto.
791 (M2Options_SetGenModuleList): Ditto.
792 (M2Options_SetShared): Ditto.
793 * gm2-libs-ch/M2LINK.c: Ditto.
794 * gm2-libs-ch/m2rts.h (M2RTS_RequestDependant): Replace
795 const char * with const void *.
796 (M2RTS_RegisterModule): Ditto.
797 (M2RTS_ConstructModules): Ditto.
798 * gm2-gcc/m2decl.def (DetermineSizeOfConstant): New parameter
800 * gm2-gcc/m2decl.h (DetermineSizeOfConstant): New parameter
803 2023-03-12 Gaius Mulley <gaiusmod2@gmail.com>
806 * gm2-compiler/M2GCCDeclare.mod (DeclareKnownType): Import.
807 * gm2-gcc/gcc-consolidation.h (stdbool.h): Include.
808 * gm2-gcc/init.h (defined): Change block start.
809 * gm2-gcc/m2block.cc: Change FALSE to false, change TRUE to true.
810 * gm2-gcc/m2block.h: Change int to bool.
811 * gm2-gcc/m2builtins.cc: Ditto.
812 * gm2-gcc/m2builtins.h: Ditto.
813 * gm2-gcc/m2convert.cc: Change FALSE to false, TRUE to true and
815 * gm2-gcc/m2convert.h: Change int to bool.
816 * gm2-gcc/m2decl.cc: Change int to bool.
817 * gm2-gcc/m2decl.h: Change int to bool.
818 * gm2-gcc/m2expr.cc: Change FALSE to false, TRUE to true and
820 * gm2-gcc/m2expr.h: Change int to bool.
821 * gm2-gcc/m2statement.cc: Change FALSE to false, TRUE to true and
823 * gm2-gcc/m2statement.h: Change int to bool.
824 * gm2-gcc/m2top.cc: Change int to bool.
825 * gm2-gcc/m2top.h: Change int to bool.
826 * gm2-gcc/m2tree.cc: Change int to bool.
827 * gm2-gcc/m2tree.h: Change int to bool.
828 * gm2-gcc/m2type.cc: Change int to bool.
829 * gm2-gcc/m2type.h: Change int to bool.
830 * gm2-lang.cc (convert_loc): Call convert_to_integer for BOOLEAN_TYPE.
831 * gm2-libs/Builtins.def (isfinitef): Change return value from
835 * gm2-libs/Builtins.mod (isfinitef): Change return value from
839 * mc-boot/GASCII.cc: Rebuild.
840 * mc-boot/GASCII.h: Rebuild.
841 * mc-boot/GArgs.cc: Rebuild.
842 * mc-boot/GArgs.h: Rebuild.
843 * mc-boot/GAssertion.cc: Rebuild.
844 * mc-boot/GAssertion.h: Rebuild.
845 * mc-boot/GBreak.cc: Rebuild.
846 * mc-boot/GBreak.h: Rebuild.
847 * mc-boot/GCOROUTINES.h: Rebuild.
848 * mc-boot/GCmdArgs.cc: Rebuild.
849 * mc-boot/GCmdArgs.h: Rebuild.
850 * mc-boot/GDebug.cc: Rebuild.
851 * mc-boot/GDebug.h: Rebuild.
852 * mc-boot/GDynamicStrings.cc: Rebuild.
853 * mc-boot/GDynamicStrings.h: Rebuild.
854 * mc-boot/GEnvironment.cc: Rebuild.
855 * mc-boot/GEnvironment.h: Rebuild.
856 * mc-boot/GFIO.cc: Rebuild.
857 * mc-boot/GFIO.h: Rebuild.
858 * mc-boot/GFormatStrings.cc: Rebuild.
859 * mc-boot/GFormatStrings.h: Rebuild.
860 * mc-boot/GFpuIO.cc: Rebuild.
861 * mc-boot/GFpuIO.h: Rebuild.
862 * mc-boot/GIO.cc: Rebuild.
863 * mc-boot/GIO.h: Rebuild.
864 * mc-boot/GIndexing.cc: Rebuild.
865 * mc-boot/GIndexing.h: Rebuild.
866 * mc-boot/GM2Dependent.cc: Rebuild.
867 * mc-boot/GM2Dependent.h: Rebuild.
868 * mc-boot/GM2EXCEPTION.cc: Rebuild.
869 * mc-boot/GM2EXCEPTION.h: Rebuild.
870 * mc-boot/GM2LINK.h: Rebuild.
871 * mc-boot/GM2RTS.cc: Rebuild.
872 * mc-boot/GM2RTS.h: Rebuild.
873 * mc-boot/GMemUtils.cc: Rebuild.
874 * mc-boot/GMemUtils.h: Rebuild.
875 * mc-boot/GNumberIO.cc: Rebuild.
876 * mc-boot/GNumberIO.h: Rebuild.
877 * mc-boot/GPushBackInput.cc: Rebuild.
878 * mc-boot/GPushBackInput.h: Rebuild.
879 * mc-boot/GRTExceptions.cc: Rebuild.
880 * mc-boot/GRTExceptions.h: Rebuild.
881 * mc-boot/GRTco.h: Rebuild.
882 * mc-boot/GRTentity.h: Rebuild.
883 * mc-boot/GRTint.cc: Rebuild.
884 * mc-boot/GRTint.h: Rebuild.
885 * mc-boot/GSArgs.cc: Rebuild.
886 * mc-boot/GSArgs.h: Rebuild.
887 * mc-boot/GSFIO.cc: Rebuild.
888 * mc-boot/GSFIO.h: Rebuild.
889 * mc-boot/GSYSTEM.h: Rebuild.
890 * mc-boot/GSelective.h: Rebuild.
891 * mc-boot/GStdIO.cc: Rebuild.
892 * mc-boot/GStdIO.h: Rebuild.
893 * mc-boot/GStorage.cc: Rebuild.
894 * mc-boot/GStorage.h: Rebuild.
895 * mc-boot/GStrCase.cc: Rebuild.
896 * mc-boot/GStrCase.h: Rebuild.
897 * mc-boot/GStrIO.cc: Rebuild.
898 * mc-boot/GStrIO.h: Rebuild.
899 * mc-boot/GStrLib.cc: Rebuild.
900 * mc-boot/GStrLib.h: Rebuild.
901 * mc-boot/GStringConvert.cc: Rebuild.
902 * mc-boot/GStringConvert.h: Rebuild.
903 * mc-boot/GSysExceptions.h: Rebuild.
904 * mc-boot/GSysStorage.cc: Rebuild.
905 * mc-boot/GSysStorage.h: Rebuild.
906 * mc-boot/GTimeString.cc: Rebuild.
907 * mc-boot/GTimeString.h: Rebuild.
908 * mc-boot/GUnixArgs.h: Rebuild.
909 * mc-boot/Galists.cc: Rebuild.
910 * mc-boot/Galists.h: Rebuild.
911 * mc-boot/Gdecl.cc: Rebuild.
912 * mc-boot/Gdecl.h: Rebuild.
913 * mc-boot/Gdtoa.h: Rebuild.
914 * mc-boot/Gerrno.h: Rebuild.
915 * mc-boot/Gkeyc.cc: Rebuild.
916 * mc-boot/Gkeyc.h: Rebuild.
917 * mc-boot/Gldtoa.h: Rebuild.
918 * mc-boot/Glibc.h: Rebuild.
919 * mc-boot/Glibm.h: Rebuild.
920 * mc-boot/Glists.cc: Rebuild.
921 * mc-boot/Glists.h: Rebuild.
922 * mc-boot/GmcComment.cc: Rebuild.
923 * mc-boot/GmcComment.h: Rebuild.
924 * mc-boot/GmcComp.cc: Rebuild.
925 * mc-boot/GmcComp.h: Rebuild.
926 * mc-boot/GmcDebug.cc: Rebuild.
927 * mc-boot/GmcDebug.h: Rebuild.
928 * mc-boot/GmcError.cc: Rebuild.
929 * mc-boot/GmcError.h: Rebuild.
930 * mc-boot/GmcFileName.cc: Rebuild.
931 * mc-boot/GmcFileName.h: Rebuild.
932 * mc-boot/GmcLexBuf.cc: Rebuild.
933 * mc-boot/GmcLexBuf.h: Rebuild.
934 * mc-boot/GmcMetaError.cc: Rebuild.
935 * mc-boot/GmcMetaError.h: Rebuild.
936 * mc-boot/GmcOptions.cc: Rebuild.
937 * mc-boot/GmcOptions.h: Rebuild.
938 * mc-boot/GmcPreprocess.cc: Rebuild.
939 * mc-boot/GmcPreprocess.h: Rebuild.
940 * mc-boot/GmcPretty.cc: Rebuild.
941 * mc-boot/GmcPretty.h: Rebuild.
942 * mc-boot/GmcPrintf.cc: Rebuild.
943 * mc-boot/GmcPrintf.h: Rebuild.
944 * mc-boot/GmcQuiet.cc: Rebuild.
945 * mc-boot/GmcQuiet.h: Rebuild.
946 * mc-boot/GmcReserved.cc: Rebuild.
947 * mc-boot/GmcReserved.h: Rebuild.
948 * mc-boot/GmcSearch.cc: Rebuild.
949 * mc-boot/GmcSearch.h: Rebuild.
950 * mc-boot/GmcStack.cc: Rebuild.
951 * mc-boot/GmcStack.h: Rebuild.
952 * mc-boot/GmcStream.cc: Rebuild.
953 * mc-boot/GmcStream.h: Rebuild.
954 * mc-boot/Gmcflex.h: Rebuild.
955 * mc-boot/Gmcp1.cc: Rebuild.
956 * mc-boot/Gmcp1.h: Rebuild.
957 * mc-boot/Gmcp2.cc: Rebuild.
958 * mc-boot/Gmcp2.h: Rebuild.
959 * mc-boot/Gmcp3.cc: Rebuild.
960 * mc-boot/Gmcp3.h: Rebuild.
961 * mc-boot/Gmcp4.cc: Rebuild.
962 * mc-boot/Gmcp4.h: Rebuild.
963 * mc-boot/Gmcp5.cc: Rebuild.
964 * mc-boot/Gmcp5.h: Rebuild.
965 * mc-boot/GnameKey.cc: Rebuild.
966 * mc-boot/GnameKey.h: Rebuild.
967 * mc-boot/GsymbolKey.cc: Rebuild.
968 * mc-boot/GsymbolKey.h: Rebuild.
969 * mc-boot/Gtermios.h: Rebuild.
970 * mc-boot/Gtop.cc: Rebuild.
971 * mc-boot/Gvarargs.cc: Rebuild.
972 * mc-boot/Gvarargs.h: Rebuild.
973 * mc-boot/Gwlists.cc: Rebuild.
974 * mc-boot/Gwlists.h: Rebuild.
975 * mc-boot/Gwrapc.h: Rebuild.
976 * mc/decl.mod (doBoolC): New procedure.
977 (doBaseC): Call doBoolC.
978 * mc/keyc.mod: Import useBool.
979 (genBool): New procedure.
980 (genDefs): Call genBool.
981 * mc/mcOptions.def (useBool): New procedure.
982 * mc/mcOptions.mod (useBool): New procedure.
983 (useBoolType): New variable.
984 (optionIs): Assign useBoolType to TRUE.
986 2023-03-04 Gaius Mulley <gaiusmod2@gmail.com>
988 * mc-boot-ch/GBuiltins.cc: New file.
989 * mc-boot-ch/Gdtoa.cc: New file.
990 * mc-boot-ch/Gerrno.cc: New file.
991 * mc-boot-ch/Gldtoa.cc: New file.
992 * mc-boot-ch/Gm2rtsdummy.cc: New file.
993 * mc-boot/GASCII.cc: New file.
994 * mc-boot/GArgs.cc: New file.
995 * mc-boot/GAssertion.cc: New file.
996 * mc-boot/GBreak.cc: New file.
997 * mc-boot/GCmdArgs.cc: New file.
998 * mc-boot/GDebug.cc: New file.
999 * mc-boot/GDynamicStrings.cc: New file.
1000 * mc-boot/GEnvironment.cc: New file.
1001 * mc-boot/GFIO.cc: New file.
1002 * mc-boot/GFormatStrings.cc: New file.
1003 * mc-boot/GFpuIO.cc: New file.
1004 * mc-boot/GIO.cc: New file.
1005 * mc-boot/GIndexing.cc: New file.
1006 * mc-boot/GM2Dependent.cc: New file.
1007 * mc-boot/GM2EXCEPTION.cc: New file.
1008 * mc-boot/GM2RTS.cc: New file.
1009 * mc-boot/GMemUtils.cc: New file.
1010 * mc-boot/GNumberIO.cc: New file.
1011 * mc-boot/GPushBackInput.cc: New file.
1012 * mc-boot/GRTExceptions.cc: New file.
1013 * mc-boot/GRTint.cc: New file.
1014 * mc-boot/GSArgs.cc: New file.
1015 * mc-boot/GSFIO.cc: New file.
1016 * mc-boot/GStdIO.cc: New file.
1017 * mc-boot/GStorage.cc: New file.
1018 * mc-boot/GStrCase.cc: New file.
1019 * mc-boot/GStrIO.cc: New file.
1020 * mc-boot/GStrLib.cc: New file.
1021 * mc-boot/GStringConvert.cc: New file.
1022 * mc-boot/GSysStorage.cc: New file.
1023 * mc-boot/GTimeString.cc: New file.
1024 * mc-boot/Galists.cc: New file.
1025 * mc-boot/Gdecl.cc: New file.
1026 * mc-boot/Gkeyc.cc: New file.
1027 * mc-boot/Glists.cc: New file.
1028 * mc-boot/GmcComment.cc: New file.
1029 * mc-boot/GmcComp.cc: New file.
1030 * mc-boot/GmcDebug.cc: New file.
1031 * mc-boot/GmcError.cc: New file.
1032 * mc-boot/GmcFileName.cc: New file.
1033 * mc-boot/GmcLexBuf.cc: New file.
1034 * mc-boot/GmcMetaError.cc: New file.
1035 * mc-boot/GmcOptions.cc: New file.
1036 * mc-boot/GmcPreprocess.cc: New file.
1037 * mc-boot/GmcPretty.cc: New file.
1038 * mc-boot/GmcPrintf.cc: New file.
1039 * mc-boot/GmcQuiet.cc: New file.
1040 * mc-boot/GmcReserved.cc: New file.
1041 * mc-boot/GmcSearch.cc: New file.
1042 * mc-boot/GmcStack.cc: New file.
1043 * mc-boot/GmcStream.cc: New file.
1044 * mc-boot/Gmcp1.cc: New file.
1045 * mc-boot/Gmcp2.cc: New file.
1046 * mc-boot/Gmcp3.cc: New file.
1047 * mc-boot/Gmcp4.cc: New file.
1048 * mc-boot/Gmcp5.cc: New file.
1049 * mc-boot/GnameKey.cc: New file.
1050 * mc-boot/GsymbolKey.cc: New file.
1051 * mc-boot/Gtop.cc: New file.
1052 * mc-boot/Gvarargs.cc: New file.
1053 * mc-boot/Gwlists.cc: New file.
1054 * pge-boot/GASCII.cc: New file.
1055 * pge-boot/GArgs.cc: New file.
1056 * pge-boot/GAssertion.cc: New file.
1057 * pge-boot/GBuiltins.cc: New file.
1058 * pge-boot/GDebug.cc: New file.
1059 * pge-boot/GDynamicStrings.cc: New file.
1060 * pge-boot/GFIO.cc: New file.
1061 * pge-boot/GIO.cc: New file.
1062 * pge-boot/GIndexing.cc: New file.
1063 * pge-boot/GLists.cc: New file.
1064 * pge-boot/GM2Dependent.cc: New file.
1065 * pge-boot/GM2EXCEPTION.cc: New file.
1066 * pge-boot/GM2LINK.cc: New file.
1067 * pge-boot/GM2RTS.cc: New file.
1068 * pge-boot/GNameKey.cc: New file.
1069 * pge-boot/GNumberIO.cc: New file.
1070 * pge-boot/GOutput.cc: New file.
1071 * pge-boot/GPushBackInput.cc: New file.
1072 * pge-boot/GRTExceptions.cc: New file.
1073 * pge-boot/GRTco.cc: New file.
1074 * pge-boot/GSFIO.cc: New file.
1075 * pge-boot/GSYSTEM.cc: New file.
1076 * pge-boot/GSelective.cc: New file.
1077 * pge-boot/GStdIO.cc: New file.
1078 * pge-boot/GStorage.cc: New file.
1079 * pge-boot/GStrCase.cc: New file.
1080 * pge-boot/GStrIO.cc: New file.
1081 * pge-boot/GStrLib.cc: New file.
1082 * pge-boot/GSymbolKey.cc: New file.
1083 * pge-boot/GSysExceptions.cc: New file.
1084 * pge-boot/GSysStorage.cc: New file.
1085 * pge-boot/Gabort.cc: New file.
1086 * pge-boot/Gbnflex.cc: New file.
1087 * pge-boot/Gcbuiltin.cc: New file.
1088 * pge-boot/Gdtoa.cc: New file.
1089 * pge-boot/Gerrno.cc: New file.
1090 * pge-boot/Gldtoa.cc: New file.
1091 * pge-boot/Glibc.cc: New file.
1092 * pge-boot/Glibm.cc: New file.
1093 * pge-boot/Gmcrts.cc: New file.
1094 * pge-boot/Gpge.cc: New file.
1095 * pge-boot/Gwrapc.cc: New file.
1096 * pge-boot/main.cc: New file.
1097 * pge-boot/network.cc: New file.
1099 2023-03-04 Gaius Mulley <gaiusmod2@gmail.com>
1101 * Make-lang.in (MC-LIB-BOOT-C): Rename to MC-LIB-BOOT-CC.
1102 (MC-BOOT-C): Rename to MC-BOOT-CC.
1103 (BUILD-MC-BOOT-C): Rename to BUILD-MC-BOOT-CC.
1104 (BUILD-MC-BOOT-AUTO-C): Rename to BUILD-MC-BOOT-AUTO-CC.
1105 (m2/mc-boot/$(SRC_PREFIX)%.o): Change source file extension to .cc.
1106 (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto.
1107 * Make-maintainer.in (m2/gm2-ppg-boot/$(SRC_PREFIX)%.o): Change
1108 source file extension to .cc.
1109 (m2/gm2-ppg-boot/main.o): Ditto.
1110 (m2/gm2-ppg-boot/$(SRC_PREFIX)%.o): Ditto.
1112 (m2/gm2-pg-boot/main.o): Ditto.
1113 (m2/gm2-pge-boot/$(SRC_PREFIX)ldtoa.o): Ditto.
1114 (m2/gm2-pge-boot/$(SRC_PREFIX)dtoa.o): Ditto.
1115 (m2/gm2-pge-boot/$(SRC_PREFIX)errno.o): Ditto.
1116 (m2/gm2-pge-boot/$(SRC_PREFIX)M2RTS.o): Ditto.
1117 (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Ditto.
1118 (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Ditto.
1119 (m2/gm2-pge-boot/$(SRC_PREFIX)pge.o): Ditto.
1120 (m2/gm2-pge-boot/main.o): Ditto.
1124 ((objdir)/m2/mc-boot-gen): Ditto.
1125 (m2/mc-boot-gen/$(SRC_PREFIX)decl.c): Ditto.
1126 (m2/mc-boot-gen/$(SRC_PREFIX)%.c): Ditto.
1127 * mc-boot-ch/GBuiltins.c: Correct comment and rename.
1128 * mc-boot-ch/Gdtoa.c: Correct comment and rename.
1129 * mc-boot-ch/Gldtoa.c: Correct comment and rename
1130 * mc-boot-ch/Gtermios.cc: Rename from Gtermios.c.
1131 * mc-boot-ch/Gerrno.c: Rename.
1132 * mc-boot-ch/GRTco.c: Removed.
1133 * mc-boot/GASCII.c: Rename to mc-boot/GASCII.cc.
1134 * mc-boot/GArgs.c: Rename to mc-boot/GArgs.cc.
1135 * mc-boot/GAssertion.c: Rename to mc-boot/GAssertion.cc.
1136 * mc-boot/GBreak.c: Rename to mc-boot/GBreak.cc.
1137 * mc-boot/GCmdArgs.c: Rename to mc-boot/GCmdArgs.cc.
1138 * mc-boot/GDebug.c: Rename to mc-boot/GDebug.cc.
1139 * mc-boot/GDynamicStrings.c: Rename to mc-boot/GDynamicStrings.cc.
1140 * mc-boot/GEnvironment.c: Rename to mc-boot/GEnvironment.cc.
1141 * mc-boot/GFIO.c: Rename to mc-boot/GFIO.cc.
1142 * mc-boot/GFormatStrings.c: Rename to mc-boot/GFormatStrings.cc.
1143 * mc-boot/GFpuIO.c: Rename to mc-boot/GFpuIO.cc.
1144 * mc-boot/GIO.c: Rename to mc-boot/GIO.cc.
1145 * mc-boot/GIndexing.c: Rename to mc-boot/GIndexing.cc.
1146 * mc-boot/GM2Dependent.c: Rename to mc-boot/GM2Dependent.cc.
1147 * mc-boot/GM2EXCEPTION.c: Rename to mc-boot/GM2EXCEPTION.cc.
1148 * mc-boot/GM2RTS.c: Rename to mc-boot/GM2RTS.cc.
1149 * mc-boot/GMemUtils.c: Rename to mc-boot/GMemUtils.cc.
1150 * mc-boot/GNumberIO.c: Rename to mc-boot/GNumberIO.cc.
1151 * mc-boot/GPushBackInput.c: Rename to mc-boot/GPushBackInput.cc.
1152 * mc-boot/GRTExceptions.c: Rename to mc-boot/GRTExceptions.cc.
1153 * mc-boot/GRTint.c: Rename to mc-boot/GRTint.cc.
1154 * mc-boot/GSArgs.c: Rename to mc-boot/GSArgs.cc.
1155 * mc-boot/GSFIO.c: Rename to mc-boot/GSFIO.cc.
1156 * mc-boot/GStdIO.c: Rename to mc-boot/GStdIO.cc.
1157 * mc-boot/GStorage.c: Rename to mc-boot/GStorage.cc.
1158 * mc-boot/GStrCase.c: Rename to mc-boot/GStrCase.cc.
1159 * mc-boot/GStrIO.c: Rename to mc-boot/GStrIO.cc.
1160 * mc-boot/GStrLib.c: Rename to mc-boot/GStrLib.cc.
1161 * mc-boot/GStringConvert.c: Rename to mc-boot/GStringConvert.cc.
1162 * mc-boot/GSysStorage.c: Rename to mc-boot/GSysStorage.cc.
1163 * mc-boot/GTimeString.c: Rename to mc-boot/GTimeString.cc.
1164 * mc-boot/Galists.c: Rename to mc-boot/Galists.cc.
1165 * mc-boot/Gdecl.c: Rename to mc-boot/Gdecl.cc.
1166 * mc-boot/Gkeyc.c: Rename to mc-boot/Gkeyc.cc.
1167 * mc-boot/Glists.c: Rename to mc-boot/Glists.cc.
1168 * mc-boot/GmcComment.c: Rename to mc-boot/GmcComment.cc.
1169 * mc-boot/GmcComp.c: Rename to mc-boot/GmcComp.cc.
1170 * mc-boot/GmcDebug.c: Rename to mc-boot/GmcDebug.cc.
1171 * mc-boot/GmcError.c: Rename to mc-boot/GmcError.cc.
1172 * mc-boot/GmcFileName.c: Rename to mc-boot/GmcFileName.cc.
1173 * mc-boot/GmcLexBuf.c: Rename to mc-boot/GmcLexBuf.cc.
1174 * mc-boot/GmcMetaError.c: Rename to mc-boot/GmcMetaError.cc.
1175 * mc-boot/GmcOptions.c: Rename to mc-boot/GmcOptions.cc.
1176 * mc-boot/GmcPreprocess.c: Rename to mc-boot/GmcPreprocess.cc.
1177 * mc-boot/GmcPretty.c: Rename to mc-boot/GmcPretty.cc.
1178 * mc-boot/GmcPrintf.c: Rename to mc-boot/GmcPrintf.cc.
1179 * mc-boot/GmcQuiet.c: Rename to mc-boot/GmcQuiet.cc.
1180 * mc-boot/GmcReserved.c: Rename to mc-boot/GmcReserved.cc.
1181 * mc-boot/GmcSearch.c: Rename to mc-boot/GmcSearch.cc.
1182 * mc-boot/GmcStack.c: Rename to mc-boot/GmcStack.cc.
1183 * mc-boot/GmcStream.c: Rename to mc-boot/GmcStream.cc.
1184 * mc-boot/Gmcp1.c: Rename to mc-boot/Gmcp1.cc.
1185 * mc-boot/Gmcp2.c: Rename to mc-boot/Gmcp2.cc.
1186 * mc-boot/Gmcp3.c: Rename to mc-boot/Gmcp3.cc.
1187 * mc-boot/Gmcp4.c: Rename to mc-boot/Gmcp4.cc.
1188 * mc-boot/Gmcp5.c: Rename to mc-boot/Gmcp5.cc.
1189 * mc-boot/GnameKey.c: Rename to mc-boot/GnameKey.cc.
1190 * mc-boot/GsymbolKey.c: Rename to mc-boot/GsymbolKey.cc.
1191 * mc-boot/Gtop.c: Rename to mc-boot/Gtop.cc.
1192 * mc-boot/Gvarargs.c: Rename to mc-boot/Gvarargs.cc.
1193 * mc-boot/Gwlists.c: Rename to mc-boot/Gwlists.cc.
1194 * pge-boot/GASCII.c: Rename to pge-boot/GASCII.cc.
1195 * pge-boot/GArgs.c: Rename to pge-boot/GArgs.cc.
1196 * pge-boot/GAssertion.c: Rename to pge-boot/GAssertion.cc.
1197 * pge-boot/GBuiltins.c: Rename to pge-boot/GBuiltins.cc.
1198 * pge-boot/GDebug.c: Rename to pge-boot/GDebug.cc.
1199 * pge-boot/GDynamicStrings.c: Rename to pge-boot/GDynamicStrings.cc.
1200 * pge-boot/GFIO.c: Rename to pge-boot/GFIO.cc.
1201 * pge-boot/GIO.c: Rename to pge-boot/GIO.cc.
1202 * pge-boot/GIndexing.c: Rename to pge-boot/GIndexing.cc.
1203 * pge-boot/GLists.c: Rename to pge-boot/GLists.cc.
1204 * pge-boot/GM2Dependent.c: Rename to pge-boot/GM2Dependent.cc.
1205 * pge-boot/GM2EXCEPTION.c: Rename to pge-boot/GM2EXCEPTION.cc.
1206 * pge-boot/GM2LINK.c: Rename to pge-boot/GM2LINK.cc.
1207 * pge-boot/GM2RTS.c: Rename to pge-boot/GM2RTS.cc.
1208 * pge-boot/GNameKey.c: Rename to pge-boot/GNameKey.cc.
1209 * pge-boot/GNumberIO.c: Rename to pge-boot/GNumberIO.cc.
1210 * pge-boot/GOutput.c: Rename to pge-boot/GOutput.cc.
1211 * pge-boot/GPushBackInput.c: Rename to pge-boot/GPushBackInput.cc.
1212 * pge-boot/GRTExceptions.c: Rename to pge-boot/GRTExceptions.cc.
1213 * pge-boot/GRTco.c: Rename to pge-boot/GRTco.cc.
1214 * pge-boot/GSFIO.c: Rename to pge-boot/GSFIO.cc.
1215 * pge-boot/GSYSTEM.c: Rename to pge-boot/GSYSTEM.cc.
1216 * pge-boot/GSelective.c: Rename to pge-boot/GSelective.cc.
1217 * pge-boot/GStdIO.c: Rename to pge-boot/GStdIO.cc.
1218 * pge-boot/GStorage.c: Rename to pge-boot/GStorage.cc.
1219 * pge-boot/GStrCase.c: Rename to pge-boot/GStrCase.cc.
1220 * pge-boot/GStrIO.c: Rename to pge-boot/GStrIO.cc.
1221 * pge-boot/GStrLib.c: Rename to pge-boot/GStrLib.cc.
1222 * pge-boot/GSymbolKey.c: Rename to pge-boot/GSymbolKey.cc.
1223 * pge-boot/GSysExceptions.c: Rename to pge-boot/GSysExceptions.cc.
1224 * pge-boot/GSysStorage.c: Rename to pge-boot/GSysStorage.cc.
1225 * pge-boot/Gabort.c: Rename to pge-boot/Gabort.cc.
1226 * pge-boot/Gbnflex.c: Rename to pge-boot/Gbnflex.cc.
1227 * pge-boot/Gcbuiltin.c: Rename to pge-boot/Gcbuiltin.cc.
1228 * pge-boot/Gdtoa.c: Rename to pge-boot/Gdtoa.cc.
1229 * pge-boot/Gerrno.c: Rename to pge-boot/Gerrno.cc.
1230 * pge-boot/Gldtoa.c: Rename to pge-boot/Gldtoa.cc.
1231 * pge-boot/Glibc.c: Rename to pge-boot/Glibc.cc.
1232 * pge-boot/Glibm.c: Rename to pge-boot/Glibm.cc.
1233 * pge-boot/Gmcrts.c: Rename to pge-boot/Gmcrts.cc.
1234 * pge-boot/Gpge.c: Rename to pge-boot/Gpge.cc.
1235 * pge-boot/Gwrapc.c: Rename to pge-boot/Gwrapc.cc.
1236 * pge-boot/README: Correct description.
1237 * pge-boot/main.c: Rename to pge-boot/main.cc.
1238 * pge-boot/network.c: Rename to pge-boot/network.cc.
1240 2023-02-28 Gaius Mulley <gaiusmod2@gmail.com>
1243 * Make-lang.in (m2/gm2-libs-boot/M2RTS.o): New specific rule to
1244 add the --suppress-noreturn option.
1245 * Make-maintainer.in (m2/gm2-ppg-boot/$(SRC_PREFIX)M2RTS.o): New
1246 specific rule to add the --suppress-noreturn option.
1247 (m2/gm2-pg-boot/$(SRC_PREFIX)M2RTS.o): New
1248 specific rule to add the --suppress-noreturn option.
1249 (m2/gm2-pg-boot/$(SRC_PREFIX)%.o): Add missing $(srcdir).
1250 (m2/gm2-pge-boot/$(SRC_PREFIX)M2RTS.o): New
1251 specific rule to add the --suppress-noreturn option.
1252 (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Add missing $(srcdir).
1253 * gm2-libs-ch/UnixArgs.cc (LIBNAME): New define.
1254 (_M2_UnixArgs_ctor): Add LIBNAME parameter to RegisterModule.
1255 * gm2-libs-ch/dtoa.cc (LIBNAME): New define.
1256 (_M2_dtoa_ctor): Add LIBNAME parameter to RegisterModule.
1257 * gm2-libs-ch/ldtoa.cc (LIBNAME): New define.
1258 (_M2_ldtoa_ctor): Add LIBNAME parameter to RegisterModule.
1259 * pge-boot/m2rts.h (M2RTS_RegisterModule): Add libname
1261 * gm2-libs-ch/m2rts.h (M2RTS_RegisterModule): Add libname
1263 * mc-boot-ch/GUnixArgs.cc (_M2_UnixArgs_ctor): Remove.
1264 * pge-boot/GUnixArgs.cc (LIBNAME): New define.
1265 (_M2_UnixArgs_ctor): Add LIBNAME parameter to RegisterModule.
1266 * gm2-libs/RTint.def (AttachVector): Rename parameter.
1267 * mc-boot/GDynamicStrings.c: Rebuilt.
1268 * mc-boot/GFIO.c: Rebuilt.
1269 * mc-boot/GIndexing.c: Rebuilt.
1270 * mc-boot/GM2EXCEPTION.c: Rebuilt.
1271 * mc-boot/GPushBackInput.c: Rebuilt.
1272 * mc-boot/GRTExceptions.c: Rebuilt.
1273 * mc-boot/GRTint.c: Rebuilt.
1274 * mc-boot/GRTint.h: Rebuilt.
1275 * mc-boot/GStdIO.c: Rebuilt.
1276 * mc-boot/GStringConvert.c: Rebuilt.
1277 * mc-boot/GSysStorage.c: Rebuilt.
1278 * mc-boot/Gdecl.c: Rebuilt.
1279 * mc-boot/Gkeyc.c: Rebuilt.
1280 * mc-boot/GmcComment.c: Rebuilt.
1281 * mc-boot/GmcComp.c: Rebuilt.
1282 * mc-boot/GmcDebug.c: Rebuilt.
1283 * mc-boot/GmcMetaError.c: Rebuilt.
1284 * mc-boot/GmcOptions.c: Rebuilt.
1285 * mc-boot/GmcOptions.h: Rebuilt.
1286 * mc-boot/GmcStack.c: Rebuilt.
1287 * mc-boot/GnameKey.c: Rebuilt.
1288 * mc-boot/GsymbolKey.c: Rebuilt.
1289 * mc/decl.mod:: Rebuilt.
1290 * mc/mcOptions.def: Rebuilt.
1291 * mc/mcOptions.mod:: Rebuilt.
1292 * pge-boot/GDynamicStrings.c: Rebuilt.
1293 * pge-boot/GFIO.c: Rebuilt.
1294 * pge-boot/GIndexing.c: Rebuilt.
1295 * pge-boot/GM2EXCEPTION.c: Rebuilt.
1296 * pge-boot/GM2RTS.c: Rebuilt.
1297 * pge-boot/GNameKey.c: Rebuilt.
1298 * pge-boot/GPushBackInput.c: Rebuilt.
1299 * pge-boot/GRTExceptions.c: Rebuilt.
1300 * pge-boot/GStdIO.c: Rebuilt.
1301 * pge-boot/GSymbolKey.c: Rebuilt.
1302 * pge-boot/GSysStorage.c: Rebuilt.
1304 2023-02-25 Gaius Mulley <gaiusmod2@gmail.com>
1307 * Make-lang.in (GM2-COMP-BOOT-DEFS): DynamicStringPath.def
1308 remove. DynamicPath.def add.
1309 (GM2-COMP-BOOT-MODS): DynamicStringPath.mod remove.
1310 DynamicPath.mod add.
1311 * Make-maintainer.in (BUILD-BOOT-PPG-H): New dependency.
1312 (m2/gm2-ppg-boot/$(SRC_PREFIX)%.o): $(BUILD-BOOT-PPG-H) Add
1314 (PGE-DEF): New definition.
1315 (BUILD-BOOT-PG-H): New dependency.
1316 (m2/gm2-pg-boot/$(SRC_PREFIX)%.o): $(BUILD-BOOT-PG-H) Add
1318 (BUILD-BOOT-PGE-H): New dependency.
1319 (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): $(BUILD-BOOT-PGE-H) Add
1321 (GM2PATH): Add pathname entries.
1322 (m2/boot-bin/mc-devel$(exeext)): Add m2/mc-boot-ch/Gm2rtsdummy.o
1324 (m2/boot-bin/mc-opt$(exeext)): Fix -I path.
1325 * gm2-compiler/DynamicStringPath.def: Renamed module to
1327 (GetUserPath): Remove.
1328 (GetSystemPath): Remove.
1329 (SetUserPath): Remove.
1330 (SetSystemPath): Remove.
1331 (DumpPath): New procedure definition.
1332 * gm2-compiler/DynamicStringPath.mod: Renamed module to
1334 (GetUserPath): Remove.
1335 (GetSystemPath): Remove.
1336 (SetUserPath): Remove.
1337 (SetSystemPath): Remove.
1338 (DumpPath): Remove Debugging conditional.
1339 * gm2-compiler/M2AsmUtil.mod: Import EqualArray, NulName and
1341 (Debugging): New declaration.
1342 (GetFullSymName): Re-implemented to prefix (mange) libname
1343 to any extern variable/procedure which is IsExportQualified.
1344 * gm2-compiler/M2Comp.mod (qprintLibName): New procedure.
1345 * gm2-compiler/M2Graph.mod (resolveImports): Add libname.
1346 * gm2-compiler/M2Options.def (SetM2Prefix): New procedure.
1347 (GetM2Prefix): New procedure function.
1348 (SetM2PathName): New procedure.
1349 (GetM2PathName): New procedure function.
1350 * gm2-compiler/M2Options.mod: (SetM2Prefix): New procedure implemented.
1351 (GetM2Prefix): New procedure function implemented.
1352 (SetM2PathName): New procedure implemented.
1353 (GetM2PathName): New procedure function implemented.
1354 (RuntimeModuleOverride): Set to DefaultRuntimeModuleOverride.
1355 * gm2-compiler/M2Quads.mod: Import GetLibName.
1356 (SafeRequestSym) Pass result of GetLibName to RequestDependant.
1357 (callRequestDependant): Add libname as a parameter.
1358 (BuildM2InitFunction): Add libname as a parameter.
1359 (BuildM2FiniFunction): Add libname as a parameter.
1360 (BuildM2CtorFunction): Add libname as a parameter.
1361 * gm2-compiler/M2Scaffold.mod (LookupModuleSym): Set LibName
1362 if a definition source was found.
1363 * gm2-compiler/M2Search.def (FindSourceFile): Add named library parameter.
1364 (FindSourceDefFile): Add named library parameter.
1365 (FindSourceModFile): Add named library parameter.
1366 * gm2-compiler/M2Search.mod (FindSourceFile): Reimplement.
1367 (FindSourceDefFile): Add named library parameter.
1368 (FindSourceModFile): Add named library parameter.
1369 * gm2-compiler/SymbolTable.def (MakeProcedureCtorExtern): Add
1371 (PutLibName): New procedure.
1372 (GetLibName): New procedure function.
1373 * gm2-compiler/SymbolTable.mod (MakeProcedureCtorExtern): Add
1375 (GenName): Add libname parameter.
1376 (InitCtorFields): Add moduleSym as a parameter.
1377 (PutCtorExtern): Add libname parameter to GenName.
1378 * gm2-gcc/init.cc (_M2_DynamicStringPath_init): Rename function...
1379 (_M2_DynamicPath_init): ...to this.
1380 (_M2_PathName_init): Added.
1381 * gm2-gcc/m2decl.cc (m2decl_DeclareM2linkStaticInitialization):
1382 Add m2pim as the manged component of the exported symbol.
1383 (m2decl_DeclareM2linkForcedModuleInitOrder): Add m2pim mangle prefix.
1384 * gm2-gcc/m2options.h (M2Options_SetM2Prefix): New function.
1385 (M2Options_GetM2Prefix): New function.
1386 (M2Options_SetM2PathName): New function.
1387 (M2Options_GetM2PathName): New function.
1388 * gm2-lang.cc (push_back_Ipath): New function.
1389 (add_one_import_path): New function.
1390 (gm2_langhook_handle_option): Record -I component. Call
1391 SetM2PathName when -fm2-pathname= is seen. Record -fm2-pathnameI
1392 component. Call SetM2Prefix when -fm2-prefix= is seen.
1393 (gm2_langhook_post_options): Iterative over pathname entries
1394 and call SetM2PathName, SetSearchPath as appropriate.
1395 * gm2-libs-iso/M2RTS.def (ConstructModules): Add libname parameter.
1396 (DeconstructModules): Add libname parameter.
1397 (RegisterModule): Add libname parameter.
1398 (RequestDependant): Add libname parameter.
1399 * gm2-libs-iso/M2RTS.mod (ConstructModules): Add libname parameter.
1400 (DeconstructModules): Add libname parameter.
1401 (RegisterModule): Add libname parameter.
1402 (RequestDependant): Add libname parameter.
1403 * gm2-libs-min/M2RTS.def (ConstructModules): Add libname parameter.
1404 (DeconstructModules): Add libname parameter.
1405 (RegisterModule): Add libname parameter.
1406 (RequestDependant): Add libname parameter.
1407 * gm2-libs-min/M2RTS.mod (ConstructModules): Add libname parameter.
1408 (DeconstructModules): Add libname parameter.
1409 (RegisterModule): Add libname parameter.
1410 (RequestDependant): Add libname parameter.
1411 * gm2-libs/M2Dependent.def (ConstructModules): Add libname parameter.
1412 (DeconstructModules): Add libname parameter.
1413 (RegisterModule): Add libname parameter.
1414 (RequestDependant): Add libname parameter.
1415 * gm2-libs/M2Dependent.mod (ConstructModules): Add libname parameter.
1416 (DeconstructModules): Add libname parameter.
1417 (RegisterModule): Add libname parameter.
1418 (RequestDependant): Add libname parameter.
1419 * gm2-libs/M2RTS.def (ConstructModules): Add libname parameter.
1420 (DeconstructModules): Add libname parameter.
1421 (RegisterModule): Add libname parameter.
1422 (RequestDependant): Add libname parameter.
1423 * gm2-libs/M2RTS.mod (ConstructModules): Add libname parameter.
1424 (DeconstructModules): Add libname parameter.
1425 (RegisterModule): Add libname parameter.
1426 (RequestDependant): Add libname parameter.
1427 * gm2-libs/RTint.mod (FindVector): Rename variables.
1428 (initInputVector): Rename variables.
1429 (initOutputVector): Rename variables.
1430 (InitTimeVector): Rename variables.
1431 (FindVectorNo): Rename variables.
1432 (FindPendingVector): Rename variables.
1433 (ReArmTimeVector): Rename variables.
1434 (GetTimeVector): Rename variables.
1435 (AttachVector): Rename variables.
1436 (AttachVector): Rename variables.
1437 (IncludeVector): Rename variables.
1438 (ExcludeVector): Rename variables.
1439 (AddFd): Rename variables.
1440 (AddFd): Rename variables.
1441 (DumpPendingQueue): Rename variables.
1443 (activatePending): Rename variables.
1444 (Listen): Rename variables.
1445 * gm2-libs/libc.def (snprintf): New function.
1446 * gm2-libs/sckt.def: Change all exported identifiers to be
1448 * gm2spec.cc (push_back_Ipath): New function.
1449 (add_m2_I_path): New function.
1450 (lang_specific_driver): Skip -fm2-pathname= and remember pathname.
1451 Skip -I and record the path and current pathname. Call add_m2_I_path.
1452 * lang-specs.h: Replace %{I*} with %{fm2-pathname*}.
1453 * lang.opt (-fm2-pathname=): New entry.
1454 (-fm2-pathname): New entry.
1455 (-fm2-prefix=): New entry.
1456 * mc-boot-ch/GUnixArgs.cc (_M2_UnixArgs_dep): New function.
1457 (_M2_UnixArgs_ctor::_M2_UnixArgs_ctor): New method.
1458 * mc-boot-ch/Glibc.c (libc_snprintf): New function.
1459 * mc-boot-ch/m2rts.h (M2RTS_RequestDependant): Changed prototype.
1460 (M2RTS_RegisterModule): Changed prototype.
1461 * mc-boot/GDynamicStrings.c: Rebuild.
1462 * mc-boot/GFIO.c: Rebuild.
1463 * mc-boot/GIndexing.c: Rebuild.
1464 * mc-boot/GM2Dependent.c: Rebuild.
1465 * mc-boot/GM2Dependent.h: Rebuild.
1466 * mc-boot/GM2EXCEPTION.c: Rebuild.
1467 * mc-boot/GM2RTS.c: Rebuild.
1468 * mc-boot/GM2RTS.h: Rebuild.
1469 * mc-boot/GPushBackInput.c: Rebuild.
1470 * mc-boot/GRTExceptions.c: Rebuild.
1471 * mc-boot/GRTint.c: Rebuild.
1472 * mc-boot/GStdIO.c: Rebuild.
1473 * mc-boot/GStringConvert.c: Rebuild.
1474 * mc-boot/GSysStorage.c: Rebuild.
1475 * mc-boot/Gdecl.c: Rebuild.
1476 * mc-boot/Gkeyc.c: Rebuild.
1477 * mc-boot/Glibc.h: Rebuild.
1478 * mc-boot/GmcComment.c: Rebuild.
1479 * mc-boot/GmcComp.c: Rebuild.
1480 * mc-boot/GmcDebug.c: Rebuild.
1481 * mc-boot/GmcMetaError.c: Rebuild.
1482 * mc-boot/GmcStack.c: Rebuild.
1483 * mc-boot/GnameKey.c: Rebuild.
1484 * mc-boot/GsymbolKey.c: Rebuild.
1485 * pge-boot/GASCII.c: Rebuild.
1486 * pge-boot/GArgs.c: Rebuild.
1487 * pge-boot/GAssertion.c: Rebuild.
1488 * pge-boot/GDebug.c: Rebuild.
1489 * pge-boot/GDynamicStrings.c: Rebuild.
1490 * pge-boot/GFIO.c: Rebuild.
1491 * pge-boot/GIO.c: Rebuild.
1492 * pge-boot/GIndexing.c: Rebuild.
1493 * pge-boot/GLists.c: Rebuild.
1494 * pge-boot/GM2Dependent.c: Rebuild.
1495 * pge-boot/GM2Dependent.h: Rebuild.
1496 * pge-boot/GM2EXCEPTION.c: Rebuild.
1497 * pge-boot/GM2RTS.c: Rebuild.
1498 * pge-boot/GM2RTS.h: Rebuild.
1499 * pge-boot/GNameKey.c: Rebuild.
1500 * pge-boot/GNumberIO.c: Rebuild.
1501 * pge-boot/GOutput.c: Rebuild.
1502 * pge-boot/GPushBackInput.c: Rebuild.
1503 * pge-boot/GRTExceptions.c: Rebuild.
1504 * pge-boot/GSFIO.c: Rebuild.
1505 * pge-boot/GStdIO.c: Rebuild.
1506 * pge-boot/GStorage.c: Rebuild.
1507 * pge-boot/GStrCase.c: Rebuild.
1508 * pge-boot/GStrIO.c: Rebuild.
1509 * pge-boot/GStrLib.c: Rebuild.
1510 * pge-boot/GSymbolKey.c: Rebuild.
1511 * pge-boot/GSysExceptions.c (_M2_SysExceptions_finish): Rename this...
1512 (_M2_SysExceptions_fini): ... to this.
1513 * pge-boot/GSysStorage.c: Rebuild.
1514 (_M2_SysStorage_finish): Rename this...
1515 (_M2_SysStorage_fini): ... to this.
1516 * pge-boot/GUnixArgs.cc: New file.
1517 * pge-boot/Gbnflex.c (_M2_bnflex_finish): Rename this...
1518 (_M2_bnflex_fini): ... to this.
1519 * pge-boot/Gerrno.c (_M2_errno_finish): Rename this...
1520 (_M2_errno_fini): ... to this.
1521 * pge-boot/Glibc.c (libc_snprintf): New function.
1522 * pge-boot/Glibc.h (libc_snprintf): New prototype.
1523 * pge-boot/Gpge.c (_M2_pge_finish): Rename this...
1524 (_M2_pge_fini): ... to this.
1525 * pge-boot/Gtermios.cc (_M2_termios_finish): Rename this...
1526 (_M2_termios_fini): ... to this.
1527 * pge-boot/main.c (_M2_RTExceptions_finish): Rename this...
1528 (_M2_RTExceptions_fini): ... to this.
1529 (_M2_M2EXCEPTION_finish): Rename this...
1530 (_M2_M2EXCEPTION_fini): ... to this.
1531 (_M2_M2RTS_finish): Rename this...
1532 (_M2_M2RTS_fini): ... to this.
1533 (_M2_SysExceptions_finish): Rename this...
1534 (_M2_SysExceptions_fini): ... to this.
1535 (_M2_StrLib_finish): Rename this...
1536 (_M2_StrLib_fini): ... to this.
1537 (_M2_errno_finish): Rename this...
1538 (_M2_errno_fini): ... to this.
1539 (_M2_termios_finish): Rename this...
1540 (_M2_termios_fini): ... to this.
1541 (_M2_IO_finish): Rename this...
1542 (_M2_IO_fini): ... to this.
1543 (_M2_StdIO_finish): Rename this...
1544 (_M2_StdIO_fini): ... to this.
1545 (_M2_Debug_finish): Rename this...
1546 (_M2_Debug_fini): ... to this.
1547 (_M2_SysStorage_finish): Rename this...
1548 (_M2_SysStorage_fini): ... to this.
1549 (_M2_Storage_finish): Rename this...
1550 (_M2_Storage_fini): ... to this.
1551 (_M2_StrIO_finish): Rename this...
1552 (_M2_StrIO_fini): ... to this.
1553 (_M2_DynamicStrings_finish): Rename this...
1554 (_M2_DynamicStrings_fini): ... to this.
1555 (_M2_Assertion_finish): Rename this...
1556 (_M2_Assertion_fini): ... to this.
1557 (_M2_Indexing_finish): Rename this...
1558 (_M2_Indexing_fini): ... to this.
1559 (_M2_NameKey_finish): Rename this...
1560 (_M2_NameKey_fini): ... to this.
1561 (_M2_NumberIO_finish): Rename this...
1562 (_M2_NumberIO_fini): ... to this.
1563 (_M2_PushBackInput_finish): Rename this...
1564 (_M2_PushBackInput_fini): ... to this.
1565 (_M2_SymbolKey_finish): Rename this...
1566 (_M2_SymbolKey_fini): ... to this.
1567 (_M2_UnixArgs_finish): Rename this...
1568 (_M2_UnixArgs_fini): ... to this.
1569 (_M2_FIO_finish): Rename this...
1570 (_M2_FIO_fini): ... to this.
1571 (_M2_SFIO_finish): Rename this...
1572 (_M2_SFIO_fini): ... to this.
1573 (_M2_StrCase_finish): Rename this...
1574 (_M2_StrCase_fini): ... to this.
1575 (_M2_bnflex_finish): Rename this...
1576 (_M2_bnflex_fini): ... to this.
1577 (_M2_Lists_finish): Rename this...
1578 (_M2_Lists_fini): ... to this.
1579 (_M2_Args_finish): Rename this...
1580 (_M2_Args_fini): ... to this.
1581 (_M2_Output_finish): Rename this...
1582 (_M2_Output_fini): ... to this.
1583 (_M2_pge_finish): Rename this...
1584 (_M2_pge_fini): ... to this.
1585 * plugin/m2rte.cc (m2_runtime_error_calls): Change all runtime
1586 procedure names to their name mangled counterparts.
1587 * gm2-libs-iso/wrapsock.c: Removed.
1588 * gm2-libs-iso/wraptime.c: Removed.
1589 * mc-boot/Gpth.h: Removed.
1590 * gm2-compiler/PathName.def: New file.
1591 * gm2-compiler/PathName.mod: New file.
1592 * gm2-compiler/DynamicPath.def: New file.
1593 * gm2-compiler/DynamicPath.mod: New file.
1595 2023-02-06 Gaius Mulley <gaiusmod2@gmail.com>
1598 * gm2-compiler/M2Search.mod (DSdbEnter): Comment out.
1599 (DSdbExit): Comment out.
1601 2023-02-06 Co-Authored by: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1604 * m2pp.cc (m2pp_integer_cst): Use
1605 HOST_WIDE_INT_PRINT_UNSIGNED as the format specifier.
1607 2023-02-06 Gaius Mulley <gaiusmod2@gmail.com>
1609 * gm2-compiler/M2Preprocess.mod (BaseName): Comment out.
1610 * gm2-lang.cc (opt): Remove.
1611 * gm2spec.cc (add_include): Remove.
1612 (full_libraries): Remove.
1613 (concat_option): Remove.
1615 2023-02-03 Gaius Mulley <gaiusmod2@gmail.com>
1617 * Make-lang.in (TEXISRC): Remove m2/images/gnu.eps.
1618 (RSTSRC): Remove m2/images/gnu.eps.
1619 (doc/m2.dvi): Add $(objdir)/m2/images/gnu.eps.
1620 (doc/m2.pdf): Add $(objdir)/m2/images/gnu.eps.
1621 (M2_PDFFILES): New definition.
1622 (m2.install-pdf): New rule.
1623 (m2.pod): Add $(objdir)/m2/images/gnu.eps.
1624 (m2.info): Add $(objdir)/m2/images/gnu.eps.
1625 (m2.html): New rule.
1626 (m2/gpl_v3_without_node.texi): New rule.
1627 (plugin/m2rte$(soext)): Simplify mkinstalldirs.
1628 (cc1gm2$(exeext)): Ditto.
1629 (m2/stage1/cc1gm2$(exeext)): Ditto.
1630 (m2/gm2-gcc/%.o): Ditto.
1631 (m2/gm2-gcc/rtegraph.o): Ditto.
1632 (m2/gm2-gcc/$(SRC_PREFIX)%.h): Ditto.
1633 (m2/mc-boot/$(SRC_PREFIX)%.o):Ditto.
1634 (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto.
1635 (m2/mc-boot/main.o): Ditto.
1636 (m2/gm2-libs-boot/%.o): Ditto.
1637 (m2/gm2-libs-boot/$(SRC_PREFIX)%.h): Ditto.
1638 (m2/gm2-libs-boot/RTcodummy.o): Ditto.
1639 (m2/gm2-libs-boot/wrapc.o): Ditto.
1640 (m2/gm2-libs-boot/M2LINK.o): Ditto.
1641 (m2/gm2-libs-boot/UnixArgs.o): Ditto.
1642 (m2/gm2-libs-boot/choosetemp.o): Ditto.
1643 (m2/gm2-libs-boot/errno.o): Ditto.
1644 (m2/gm2-libs-boot/dtoa.o): Ditto.
1645 (m2/gm2-libs-boot/ldtoa.o): Ditto.
1646 (m2/gm2-libs-boot/termios.o): Ditto.
1647 (m2/gm2-libs-boot/SysExceptions.o): Ditto.
1648 (m2/gm2-libs-boot/SysStorage.o): Ditto.
1649 (m2/gm2-compiler-boot/M2GCCDeclare.o): Ditto.
1650 (m2/gm2-compiler-boot/M2Error.o): Ditto.
1651 (m2/gm2-compiler-boot/%.o): Ditto.
1652 (m2/gm2-compiler-boot/$(SRC_PREFIX)%.h): Ditto.
1653 (m2/gm2-compiler-boot/m2flex.o): Ditto.
1654 (m2/gm2-compiler/m2flex.c): Ditto.
1655 (m2/gm2-libiberty/$(SRC_PREFIX)%.h): Ditto.
1656 (m2/gm2-compiler/%.o): Ditto.
1657 (m2/gm2-compiler/m2flex.o): Ditto.
1658 (m2/gm2-compiler/%.o): Ditto.
1659 (m2/gm2-libs-iso/%.o): Ditto.
1660 (m2/gm2-libs/gm2-libs-host.h): Ditto.
1661 ($(objdir)/m2/gm2-libs-min/SYSTEM.def): Ditto.
1662 ($(objdir)/m2/gm2-libs/SYSTEM.def): Ditto.
1663 ($(objdir)/m2/gm2-libs-iso/SYSTEM.def): Ditto.
1664 ($(objdir)/m2/gm2-libs-coroutines/SYSTEM.def): Ditto.
1665 (m2/gm2-compiler/gm2.a): Ditto.
1666 (m2/gm2-libs-boot/libgm2.a): Ditto.
1667 (m2/gm2-compiler-boot/gm2.a): Ditto.
1668 (m2/boot-bin/mklink$(exeext)): Ditto.
1669 (m2/gm2-compiler-boot/$(SRC_PREFIX)%.h): Ditto.
1670 (m2/gm2-compiler/%.mod): Ditto.
1671 (m2/gm2-compiler-boot/%.mod): Ditto.
1672 (m2/pge-boot/%.o): Ditto.
1674 2023-02-01 Gaius Mulley <gaiusmod2@gmail.com>
1676 * Make-lang.in (GM2_FLAGS): Add -fno-return -Wreturn-type.
1677 (GM2_ISO_FLAGS): Add -fno-return -Wreturn-type.
1678 * Make-maintainer.in (GM2PATH): Split into separate -I components.
1679 (MC-LIB-DEFS): Add RTentity.def.
1680 (m2/boot-bin/mc-devel$(exeext)): Changed -I$(GM2PATH) to
1682 (m2/boot-bin/mc-opt$(exeext)): Separate -I paths.
1683 (m2/mc/decl.o): Separate -I paths.
1684 (gm2-bootstrap): Separate -I paths.
1685 (m2/mc-boot-gen/$(SRC_PREFIX)%.h): Separate -I paths.
1686 (m2/mc-boot-gen/$(SRC_PREFIX)decl.c): Separate -I paths.
1687 (m2/mc-boot-gen/$(SRC_PREFIX)%.c): Separate -I paths.
1688 (gm2.verifyparanoid): Separate -I paths.
1689 (gm2.verifystage12): Separate -I paths.
1690 * gm2-compiler/M2ALU.mod (GetConstructorElement): Add default
1691 Return NulSym. Remove return from the error case.
1692 * gm2-compiler/M2Base.mod (ComplexToScalar): Return RType
1693 from the error case.
1694 (MixMetaTypes): Return MakeError as a default.
1695 * gm2-compiler/M2GCCDeclare.mod (GetTypeMin): Return NulSym
1696 from the error case.
1697 (GetTypeMax): Return NulSym from the error case.
1698 * gm2-compiler/M2GenGCC.mod (IsExportedGcc): Replace Assert
1700 * gm2-compiler/M2Quads.mod (GetItemPointedTo): Add InternalError.
1701 (GetTypeMin): Add InternalError.
1702 (GetTypeMax): Add InternalError.
1703 * gm2-compiler/M2System.mod (InitSystem): Call
1704 PutProcedureNoReturn on Throw.
1705 * gm2-gcc/m2except.cc (m2except_InitExceptions): fn_throw_tree
1706 declare as noreturn. fn_rethrow_tree declare as noreturn.
1707 * gm2-libs-coroutines/Debug.def (Halt): Add noreturn attribute.
1708 * gm2-libs-coroutines/SYSTEM.def (THROW): Add noreturn attribute.
1709 * gm2-libs-iso/ClientSocket.mod (dorbytes): Add return FALSE.
1710 * gm2-libs-iso/EXCEPTIONS.def (RAISE): Add noreturn attribute.
1711 * gm2-libs-iso/IOLink.def (RAISEdevException): Add noreturn attribute.
1712 * gm2-libs-iso/M2RTS.def (HALT): Add noreturn attribute.
1715 (ErrorMessage): Ditto.
1716 (AssignmentException): Ditto.
1717 (ReturnException): Ditto.
1718 (IncException): Ditto.
1719 (DecException): Ditto.
1720 (InclException): Ditto.
1721 (ExclException): Ditto.
1722 (ShiftException): Ditto.
1723 (RotateException): Ditto.
1724 (StaticArraySubscriptException): Ditto.
1725 (DynamicArraySubscriptException): Ditto.
1726 (ForLoopBeginException): Ditto.
1727 (ForLoopToException): Ditto.
1728 (ForLoopEndException): Ditto.
1729 (PointerNilException): Ditto.
1730 (NoReturnException): Ditto.
1731 (CaseException): Ditto.
1732 (WholeNonPosDivException): Ditto.
1733 (WholeNonPosModException): Ditto.
1734 (WholeZeroDivException): Ditto.
1735 (WholeZeroRemException): Ditto.
1736 (WholeValueException): Ditto.
1737 (RealValueException): Ditto.
1738 (ParameterException): Ditto.
1739 (NoException): Ditto.
1740 * gm2-libs-iso/SYSTEM.def (THROW): Ditto.
1741 * gm2-libs-iso/TermFile.mod (dorbytes): Add default return FALSE.
1742 * gm2-libs-min/M2RTS.def: Add noreturn attribute.
1743 * gm2-libs/FIO.mod (BufferedRead): Return -1.
1744 (getFileName): Return NIL.
1745 (getFileNameLength): Return 0.
1746 * gm2-libs/M2RTS.def (HaltC): Add noreturn attribute.
1747 (AssignmentException): Ditto.
1748 (ReturnException): Ditto.
1749 (IncException): Ditto.
1750 (DecException): Ditto.
1751 (InclException): Ditto.
1752 (ExclException): Ditto.
1753 (ShiftException): Ditto.
1754 (RotateException): Ditto.
1755 (StaticArraySubscriptException): Ditto.
1756 (DynamicArraySubscriptException): Ditto.
1757 (ForLoopBeginException): Ditto.
1758 (ForLoopToException): Ditto.
1759 (ForLoopEndException): Ditto.
1760 (PointerNilException): Ditto.
1761 (NoReturnException): Ditto.
1762 (CaseException): Ditto.
1763 (WholeNonPosDivException): Ditto.
1764 (WholeNonPosModException): Ditto.
1765 (WholeZeroDivException): Ditto.
1766 (WholeZeroRemException): Ditto.
1767 (WholeValueException): Ditto.
1768 (RealValueException): Ditto.
1769 (ParameterException): Ditto.
1770 (NoException): Ditto.
1771 * gm2-libs/RTExceptions.def (Raise): Ditto.
1772 * gm2-libs/RTExceptions.mod (InvokeHandler): Ditto.
1773 * gm2-libs/SYSTEM.def (THROW): Ditto.
1774 * m2.flex (_M2_m2flex_fini): Remamed to...
1775 (_M2_m2flex_finish): ...here.
1776 * mc-boot-ch/GBuiltins.c (_M2_Builtins_finish): Remamed to...
1777 (_M2_Builtins_fini): ...this.
1778 * mc-boot-ch/GRTco.c (_M2_RTco_finish): Remamed to...
1779 (_M2_RTco_fini): ...this.
1780 * mc-boot-ch/GSYSTEM.c (_M2_SYSTEM_finish): Remamed to...
1781 (_M2_SYSTEM_fini): ...this.
1782 * mc-boot-ch/GSelective.c (_M2_Selective_finish): Remamed to...
1783 (_M2_Selective_fini): ...this.
1784 * mc-boot-ch/GSysExceptions.c (_M2_SysExceptions_init): Add
1786 (_M2_SysExceptions_finish): Remamed to...
1787 (_M2_SysExceptions_fini): ...this.
1788 * mc-boot-ch/GUnixArgs.cc (_M2_UnixArgs_finish): Remamed to...
1789 (_M2_UnixArgs_fini): ...this.
1790 (_M2_UnixArgs_ctor::_M2_UnixArgs_ctor): Change parameter
1791 to _M2_UnixArgs_fini.
1792 * mc-boot-ch/Gdtoa.c (_M2_dtoa_finish): Remamed to...
1793 (_M2_dtoa_fini): ...this.
1794 * mc-boot-ch/Gerrno.c (_M2_errno_finish): Remamed to...
1795 (_M2_errno_fini): ...this.
1796 * mc-boot-ch/Gldtoa.c (_M2_ldtoa_finish): Remamed to...
1797 (_M2_ldtoa_fini): ...this.
1798 * mc-boot-ch/Gtermios.cc (_M2_termios_init): Add parameters.
1799 (_M2_termios_finish): Remamed to...
1800 (_M2_termios_fini): ...this.
1801 * mc-boot-ch/Gwrapc.c (_M2_wrapc_init): Add parameters.
1802 (_M2_wrapc_finish): Remamed to...
1803 (_M2_wrapc_fini): ...this.
1804 * mc-boot/GASCII.c: Rebuild.
1805 * mc-boot/GArgs.c: Rebuild.
1806 * mc-boot/GAssertion.c: Rebuild.
1807 * mc-boot/GBreak.c: Rebuild.
1808 * mc-boot/GCmdArgs.c: Rebuild.
1809 * mc-boot/GDebug.c: Rebuild.
1810 * mc-boot/GDynamicStrings.c: Rebuild.
1811 * mc-boot/GEnvironment.c: Rebuild.
1812 * mc-boot/GFIO.c: Rebuild.
1813 * mc-boot/GFormatStrings.c: Rebuild.
1814 * mc-boot/GFpuIO.c: Rebuild.
1815 * mc-boot/GIO.c: Rebuild.
1816 * mc-boot/GIndexing.c: Rebuild.
1817 * mc-boot/GM2Dependent.c: Rebuild.
1818 * mc-boot/GM2EXCEPTION.c: Rebuild.
1819 * mc-boot/GM2RTS.c: Rebuild.
1820 * mc-boot/GM2RTS.h: Rebuild.
1821 * mc-boot/GMemUtils.c: Rebuild.
1822 * mc-boot/GNumberIO.c: Rebuild.
1823 * mc-boot/GPushBackInput.c: Rebuild.
1824 * mc-boot/GRTExceptions.c: Rebuild.
1825 * mc-boot/GRTExceptions.h: Rebuild.
1826 * mc-boot/GRTco.h: Rebuild.
1827 * mc-boot/GRTint.c: Rebuild.
1828 * mc-boot/GSArgs.c: Rebuild.
1829 * mc-boot/GSFIO.c: Rebuild.
1830 * mc-boot/GStdIO.c: Rebuild.
1831 * mc-boot/GStorage.c: Rebuild.
1832 * mc-boot/GStrCase.c: Rebuild.
1833 * mc-boot/GStrIO.c: Rebuild.
1834 * mc-boot/GStrLib.c: Rebuild.
1835 * mc-boot/GStringConvert.c: Rebuild.
1836 * mc-boot/GSysStorage.c: Rebuild.
1837 * mc-boot/GTimeString.c: Rebuild.
1838 * mc-boot/Galists.c: Rebuild.
1839 * mc-boot/Gdecl.c: Rebuild.
1840 * mc-boot/Gkeyc.c: Rebuild.
1841 * mc-boot/Glists.c: Rebuild.
1842 * mc-boot/GmcComment.c: Rebuild.
1843 * mc-boot/GmcComp.c: Rebuild.
1844 * mc-boot/GmcDebug.c: Rebuild.
1845 * mc-boot/GmcError.c: Rebuild.
1846 * mc-boot/GmcFileName.c: Rebuild.
1847 * mc-boot/GmcLexBuf.c: Rebuild.
1848 * mc-boot/GmcMetaError.c: Rebuild.
1849 * mc-boot/GmcOptions.c: Rebuild.
1850 * mc-boot/GmcPreprocess.c: Rebuild.
1851 * mc-boot/GmcPretty.c: Rebuild.
1852 * mc-boot/GmcPrintf.c: Rebuild.
1853 * mc-boot/GmcQuiet.c: Rebuild.
1854 * mc-boot/GmcReserved.c: Rebuild.
1855 * mc-boot/GmcSearch.c: Rebuild.
1856 * mc-boot/GmcStack.c: Rebuild.
1857 * mc-boot/GmcStream.c: Rebuild.
1858 * mc-boot/Gmcp1.c: Rebuild.
1859 * mc-boot/Gmcp2.c: Rebuild.
1860 * mc-boot/Gmcp3.c: Rebuild.
1861 * mc-boot/Gmcp4.c: Rebuild.
1862 * mc-boot/Gmcp5.c: Rebuild.
1863 * mc-boot/GnameKey.c: Rebuild.
1864 * mc-boot/GsymbolKey.c: Rebuild.
1865 * mc-boot/Gtop.c: Rebuild.
1866 * mc-boot/Gvarargs.c: Rebuild.
1867 * mc-boot/Gwlists.c: Rebuild.
1868 * mc-boot/GRTentity.h: New file.
1869 * mc/decl.mod (scaffoldStatic): Change _finish to _fini.
1870 * mc/mc.flex (_M2_mcflex_fini): New function.
1871 (_M2_mcflex_finish): Remove function.
1872 * tools-src/mklink.c (GenerateFinishCalls): Change
1874 (GeneratePrototypes): Change _finish to _fini.
1876 2023-01-31 Gaius Mulley <gaiusmod2@gmail.com>
1878 * Make-lang.in (gm2-libs.texi-check): Rename
1879 m2/gm2-libs-pim to m2/gm2-libs-log.
1880 * gm2-libs-pim/BitBlockOps.def: Moved to...
1881 * gm2-libs-log/BitBlockOps.def: ...here.
1882 * gm2-libs-pim/BitBlockOps.mod: Moved to...
1883 * gm2-libs-log/BitBlockOps.mod: ...here.
1884 * gm2-libs-pim/BitByteOps.def: Moved to...
1885 * gm2-libs-log/BitByteOps.def: ...here.
1886 * gm2-libs-pim/BitByteOps.mod: Moved to...
1887 * gm2-libs-log/BitByteOps.mod: ...here.
1888 * gm2-libs-pim/BitWordOps.def: Moved to...
1889 * gm2-libs-log/BitWordOps.def: ...here.
1890 * gm2-libs-pim/BitWordOps.mod: Moved to...
1891 * gm2-libs-log/BitWordOps.mod: ...here.
1892 * gm2-libs-pim/BlockOps.def: Moved to...
1893 * gm2-libs-log/BlockOps.def: ...here.
1894 * gm2-libs-pim/BlockOps.mod: Moved to...
1895 * gm2-libs-log/BlockOps.mod: ...here.
1896 * gm2-libs-pim/Break.c: Moved to...
1897 * gm2-libs-log/Break.c: ...here.
1898 * gm2-libs-pim/Break.def: Moved to...
1899 * gm2-libs-log/Break.def: ...here.
1900 * gm2-libs-pim/CardinalIO.def: Moved to...
1901 * gm2-libs-log/CardinalIO.def: ...here.
1902 * gm2-libs-pim/CardinalIO.mod: Moved to...
1903 * gm2-libs-log/CardinalIO.mod: ...here.
1904 * gm2-libs-pim/Conversions.def: Moved to...
1905 * gm2-libs-log/Conversions.def: ...here.
1906 * gm2-libs-pim/Conversions.mod: Moved to...
1907 * gm2-libs-log/Conversions.mod: ...here.
1908 * gm2-libs-pim/DebugPMD.def: Moved to...
1909 * gm2-libs-log/DebugPMD.def: ...here.
1910 * gm2-libs-pim/DebugPMD.mod: Moved to...
1911 * gm2-libs-log/DebugPMD.mod: ...here.
1912 * gm2-libs-pim/DebugTrace.def: Moved to...
1913 * gm2-libs-log/DebugTrace.def: ...here.
1914 * gm2-libs-pim/DebugTrace.mod: Moved to...
1915 * gm2-libs-log/DebugTrace.mod: ...here.
1916 * gm2-libs-pim/Delay.def: Moved to...
1917 * gm2-libs-log/Delay.def: ...here.
1918 * gm2-libs-pim/Delay.mod: Moved to...
1919 * gm2-libs-log/Delay.mod: ...here.
1920 * gm2-libs-pim/Display.def: Moved to...
1921 * gm2-libs-log/Display.def: ...here.
1922 * gm2-libs-pim/Display.mod: Moved to...
1923 * gm2-libs-log/Display.mod: ...here.
1924 * gm2-libs-pim/ErrorCode.def: Moved to...
1925 * gm2-libs-log/ErrorCode.def: ...here.
1926 * gm2-libs-pim/ErrorCode.mod: Moved to...
1927 * gm2-libs-log/ErrorCode.mod: ...here.
1928 * gm2-libs-pim/FileSystem.def: Moved to...
1929 * gm2-libs-log/FileSystem.def: ...here.
1930 * gm2-libs-pim/FileSystem.mod: Moved to...
1931 * gm2-libs-log/FileSystem.mod: ...here.
1932 * gm2-libs-pim/FloatingUtilities.def: Moved to...
1933 * gm2-libs-log/FloatingUtilities.def: ...here.
1934 * gm2-libs-pim/FloatingUtilities.mod: Moved to...
1935 * gm2-libs-log/FloatingUtilities.mod: ...here.
1936 * gm2-libs-pim/InOut.def: Moved to...
1937 * gm2-libs-log/InOut.def: ...here.
1938 * gm2-libs-pim/InOut.mod: Moved to...
1939 * gm2-libs-log/InOut.mod: ...here.
1940 * gm2-libs-pim/Keyboard.def: Moved to...
1941 * gm2-libs-log/Keyboard.def: ...here.
1942 * gm2-libs-pim/Keyboard.mod: Moved to...
1943 * gm2-libs-log/Keyboard.mod: ...here.
1944 * gm2-libs-pim/LongIO.def: Moved to...
1945 * gm2-libs-log/LongIO.def: ...here.
1946 * gm2-libs-pim/LongIO.mod: Moved to...
1947 * gm2-libs-log/LongIO.mod: ...here.
1948 * gm2-libs-pim/NumberConversion.def: Moved to...
1949 * gm2-libs-log/NumberConversion.def: ...here.
1950 * gm2-libs-pim/NumberConversion.mod: Moved to...
1951 * gm2-libs-log/NumberConversion.mod: ...here.
1952 * gm2-libs-pim/README.texi: Moved to...
1953 * gm2-libs-log/README.texi: ...here.
1954 * gm2-libs-pim/Random.def: Moved to...
1955 * gm2-libs-log/Random.def: ...here.
1956 * gm2-libs-pim/Random.mod: Moved to...
1957 * gm2-libs-log/Random.mod: ...here.
1958 * gm2-libs-pim/RealConversions.def: Moved to...
1959 * gm2-libs-log/RealConversions.def: ...here.
1960 * gm2-libs-pim/RealConversions.mod: Moved to...
1961 * gm2-libs-log/RealConversions.mod: ...here.
1962 * gm2-libs-pim/RealInOut.def: Moved to...
1963 * gm2-libs-log/RealInOut.def: ...here.
1964 * gm2-libs-pim/RealInOut.mod: Moved to...
1965 * gm2-libs-log/RealInOut.mod: ...here.
1966 * gm2-libs-pim/Strings.def: Moved to...
1967 * gm2-libs-log/Strings.def: ...here.
1968 * gm2-libs-pim/Strings.mod: Moved to...
1969 * gm2-libs-log/Strings.mod: ...here.
1970 * gm2-libs-pim/Termbase.def: Moved to...
1971 * gm2-libs-log/Termbase.def: ...here.
1972 * gm2-libs-pim/Termbase.mod: Moved to...
1973 * gm2-libs-log/Termbase.mod: ...here.
1974 * gm2-libs-pim/Terminal.def: Moved to...
1975 * gm2-libs-log/Terminal.def: ...here.
1976 * gm2-libs-pim/Terminal.mod: Moved to...
1977 * gm2-libs-log/Terminal.mod: ...here.
1978 * gm2-libs-pim/TimeDate.def: Moved to...
1979 * gm2-libs-log/TimeDate.def: ...here.
1980 * gm2-libs-pim/TimeDate.mod: Moved to...
1981 * gm2-libs-log/TimeDate.mod: ...here.
1983 2023-01-28 Iain Sandoe <iain@sandoe.co.uk>
1985 * lang.opt: Claim Wreturn-type.
1987 2023-01-27 Gaius Mulley <gaiusmod2@gmail.com>
1989 * gm2-compiler/M2Comp.mod: Import MetaString0.
1990 (ExamineCompilationUnit): New variable Message.
1991 Create and format error string.
1992 * gm2-compiler/M2LexBuf.mod: New variable SeenEof.
1993 (GetNonEofToken): New procedure.
1994 (Init): Set SeenEof to FALSE.
1995 (GetToken): Use GetNonEofToken instead of calls to
1996 m2flex.GetToken and GetToken.
1997 (AddTok): Detect eoftok and set SeenEof.
1999 2023-01-27 Gaius Mulley <gaiusmod2@gmail.com>
2001 * gm2-compiler/M2Options.def: Export GetMQ, SetMQ.
2002 * gm2-compiler/M2Preprocess.mod: (MakeSaveTempsFileName):
2003 Test NewDir against NIL. Test Dumpdir against NIL.
2004 Test GetMD () against NIL. Test GetMMD () against NIL.
2005 Test GetMQ () against NIL. Test GetObj () against NIL.
2006 Test tempfile against NIL.
2007 * gm2-compiler/P2SymBuild.def: Export
2008 BuildNoReturnAttribute.
2010 2023-01-27 Iain Sandoe <iain@sandoe.co.uk>
2015 * gm2-lang.cc (gm2_langhook_option_lang_mask): Do not claim CL_C
2017 (gm2_langhook_init_options): Handle options that we want to pass
2018 to the preprocessor.
2019 * lang-specs.h: Pass -B and -save-temps to regular compile lines.
2020 * lang.opt: Add C and Driver options that Modula-2 intercepts for
2021 internal use. Reorder options into two sections and to collate.
2023 2023-01-26 Gaius Mulley <gaiusmod2@gmail.com>
2025 * gm2-compiler/M2GCCDeclare.mod: Import IsProcedureNoReturn.
2026 (DeclareProcedureToGccWholeProgram): New variable declared and set
2027 returnType. Pass returnType to BuildEndFunctionDeclaration.
2028 Extra parameter IsProcedureNoReturn passed to
2029 BuildEndFunctionDeclaration.
2030 * gm2-compiler/M2Quads.mod (BuildM2MainFunction): Correct
2031 scaffold comment and add extra return 0.
2032 * gm2-compiler/P2Build.bnf: Import BuildNoReturnAttribute.
2033 (ProcedureHeading): Process EndBuildFormalParameters before
2034 parsing AttributeNoReturn.
2035 (DefProcedureHeading): Process EndBuildFormalParameters before
2036 parsing AttributeNoReturn.
2037 (AttributeNoReturn): Call BuildNoReturnAttribute.
2038 * gm2-compiler/P2SymBuild.def (BuildNoReturnAttribute): New
2040 * gm2-compiler/P2SymBuild.mod (BuildNoReturnAttribute): New
2042 * gm2-compiler/SymbolTable.def (PutProcedureInline): Corrected
2044 (PutProcedureNoReturn): New procedure.
2045 (IsProcedureNoReturn): New procedure function.
2046 * gm2-compiler/SymbolTable.mod (SymProcedure): IsNoReturn
2048 (MakeProcedure): Initialize IsNoReturn to FALSE.
2049 (PutProcedureNoReturn): New procedure.
2050 (IsProcedureNoReturn): New procedure function.
2051 * gm2-gcc/m2decl.cc (m2decl_BuildEndFunctionDeclaration):
2052 Add extra parameter isnoreturn. Set TREE_THIS_VOLATILE
2054 * gm2-gcc/m2decl.def (BuildEndFunctionDeclaration): Add
2055 extra parameter isnoreturn.
2056 * gm2-gcc/m2decl.h (m2decl_BuildEndFunctionDeclaration): Add
2057 extra parameter isnoreturn.
2058 * gm2-gcc/m2except.cc (m2except_InitExceptions): Change all
2059 function decl to pass an extra parameter isnoreturn.
2061 2023-01-26 Gaius Mulley <gaiusmod2@gmail.com>
2063 * m2.flex (splitSlashStar): Fix comment so that /* does not
2064 appear inside the comment.
2066 2023-01-26 Iain Sandoe <iain@sandoe.co.uk>
2069 * gm2-lang.cc (gm2_langhook_init_options): Remove debug code.
2071 2023-01-26 Gaius Mulley <gaiusmod2@gmail.com>
2073 * Make-lang.in (m2/gm2config.h): Rewrite rule to be
2074 dependent upon m2/gm2config.aci.
2075 (m2/gm2config.aci): Newrule.
2076 * configure.ac (AC_CONFIG_HEADERS): Change destination
2078 * configure: Regenerate.
2079 * gm2-libs/config-host: Regenerate.
2080 * gm2-compiler/M2GCCDeclare.mod (AddSymToWatch): Comment
2082 * gm2-compiler/M2Quads.mod (BuildConstHighFromSym): Remove
2084 (StartBuildWith): Call BuildStmtNoteTok.
2085 (BuildStmtNoteTok): New procedure.
2086 (BuildStmtNote): Re-implement re-factor into two
2087 procedures and call BuildStmtNoteTok.
2088 * gm2config.h.in: Remove.
2089 * gm2config.aci.in: New file.
2091 2023-01-25 Iain Sandoe <iain@sandoe.co.uk>
2095 * gm2-compiler/M2Comp.mod: Early exit for pre-processor-only jobs.
2096 * gm2-compiler/M2Options.def (SetPPOnly, GetPPOnly, SetMD, GetMD,
2097 SetMMD, GetMMD, SetMQ, GetMQ, SetObj, GetObj, SetDumpDir,
2099 * gm2-compiler/M2Options.mod:(SetPPOnly, GetPPOnly, SetMD, GetMD,
2100 SetMMD, GetMMD, SetMQ, GetMQ, SetObj, GetObj, SetDumpDir,
2102 * gm2-compiler/M2Preprocess.def (PreprocessModule): Add flag to
2103 indicate the main file.
2104 * gm2-compiler/M2Preprocess.mod: Handle Preprocess-only jobs,
2105 handle MD, MMD and MQ options.
2106 * gm2-gcc/m2options.h (M2Options_SetPPOnly, M2Options_GetPPOnly,
2107 M2Options_SetDumpDir, M2Options_SetMD, M2Options_GetMD,
2108 M2Options_SetMMD, M2Options_GetMMD, M2Options_SetMQ, M2Options_GetMQ,
2109 M2Options_SetObj, M2Options_GetObj): New.
2110 * gm2-gcc/m2type.cc (m2type_InitBaseTypes): Early exit for pre-
2111 processor-only jobs.
2112 * gm2-lang.cc (gm2_langhook_init): Handle preprocess-only commands.
2113 (gm2_langhook_option_lang_mask): Claim C and Driver options so that
2114 we can intercept them for building pre-processor commands.
2115 (gm2_langhook_init_options): Collect the preprocessor line here.
2116 Save options that have different actions for preprocessor and compile
2118 (gm2_langhook_handle_option): Only handle the modula-2 options here.
2119 (gm2_langhook_post_options): Do not create a back-end for pre-
2120 processor-only jobs.
2121 * gm2spec.cc (lang_specific_driver): Ignore PCH options, append a
2122 scaffold-main for cases where we are building a main module with
2124 * lang-specs.h: Revise to handle preprocessor-only jobs and to
2125 consume pre-processed files.
2126 * lang.opt: Remove Driver and C options copies (we claim these
2129 2023-01-24 Co-Authored by: Iain Sandoe <iain@sandoe.co.uk>
2131 * Make-lang.in (GM2-COMP-BOOT-DEFS): Add
2132 DynamicStringPath.def.
2133 (GM2-COMP-BOOT-MODS): Add DynamicStringPath.mod.
2134 (GM2-COMP-DEFS): Add DynamicStringPath.def.
2135 (GM2-COMP-MODS): Add DynamicStringPath.mod.
2136 ($(objdir)/m2/gm2-libs-min/SYSTEM.def): Split path into
2137 multiple -I components.
2138 ($(objdir)/m2/gm2-libs/SYSTEM.def): Ditto.
2139 ($(objdir)/m2/gm2-libs-coroutines/SYSTEM.def): Ditto.
2140 * gm2-compiler/M2Options.mod: Import DynamicStringPath.
2141 (SetSearchPath): Reimplement using DynamicStringPath
2143 * gm2-compiler/M2Search.def (InitSearchPath): Remove.
2144 (PrependSearchPath): Remove.
2145 * gm2-compiler/M2Search.mod (SFIO): Remove import.
2146 (DynamicStringPath): Add import.
2147 (Directory): Remove.
2149 (InitialPath): Remove.
2150 (InitSearchPath): Remove.
2151 (PrependSearchPath): Remove.
2152 (FindSourceFile): Re-implement.
2153 (FindSourceDefFile): Re-implement.
2154 (FindSourceModFile): Re-implement.
2155 * gm2-gcc/init.cc (_M2_DynamicStringPath_init):
2157 (init_FrontEndInit): Call _M2_DynamicStringPath_init.
2158 * tools-src/makeSystem: Allow multiple -I paths.
2159 * gm2-compiler/DynamicStringPath.def: New file.
2160 * gm2-compiler/DynamicStringPath.mod: New file.
2161 * gm2-gcc/m2options.h (M2Options_SetMakeIncludePath): Add
2164 2023-01-24 Gaius Mulley <gaiusmod2@gmail.com>
2166 * m2.flex (cpreprocessor): Add temporary variable
2167 which is initialized to 0.
2168 (commentCLevel): New variable.
2169 (endOfCComment): New function.
2170 (splitSlashStar): New function to split /* into / and *
2172 (COMMENTC): New flex state.
2173 ("/*"): New rule to test whether we should treat /*
2174 as a single token or as two tokens.
2175 (<COMMENTC>.): New rule to skip a character.
2176 (<COMMENTC>\n.*): New rule to consume the line.
2177 (<COMMENTC>"*/"): New rule to call endOfCComment.
2179 2023-01-24 Gaius Mulley <gaiusmod2@gmail.com>
2181 * gm2-libs-iso/RTco.def: Import RTentity.
2182 Declare RTco as a definition for C module.
2184 2023-01-23 Iain Sandoe <iain@sandoe.co.uk>
2188 * Make-lang.in: Pass libsubdir to the language init
2190 * gm2-lang.cc (INCLUDE_VECTOR): Define.
2191 (add_one_import_path): New.
2192 (add_m2_import_paths): New.
2193 (gm2_langhook_post_options): Arrange to add the include
2194 paths (and add the system ones) in the same order as C
2196 * gm2spec.cc (build_archive_path): Remove.
2197 (add_default_combination): Remove.
2198 (add_default_archives): Remove.
2199 (add_default_libs): We no longer need a '-L' option, just
2200 emit the -l and each library in use.
2201 (build_include_path): Remove.
2202 (add_include): Remove.
2203 (add_default_includes): Remove.
2204 (library_installed): Remove.
2205 (check_valid_library): Remove.
2206 (check_valid_list): Remove.
2207 (convert_abbreviation): Diagnose unhandled cases.
2208 (lang_specific_driver): Skip options where we will add back
2209 a validated version.
2210 * lang-specs.h (M2CPP): Reformat, append %I when -fcpp is not
2211 in use. Revise the cc1gm2 spec to omit mentioning options that
2212 are handled in the c pre-processor line.
2213 * lang.opt: Allow preprocessing and path options as input to the
2214 cc1gm2 invocation, so that they can be passed to the preprocessor
2217 2023-01-23 Iain Sandoe <iain@sandoe.co.uk>
2220 * gm2-libs-iso/Preemptive.mod (initPreemptive): Use a value for
2221 extra space that is divisible by common OS pagesizes.
2223 2023-01-20 Gaius Mulley <gaiusmod2@gmail.com>
2225 * gm2-libs/Args.mod (GetArg): Check index before
2227 * gm2-libs/M2Dependent.mod (toCString): Check index
2228 before accessing array.
2229 * mc-boot/GArgs.c: Rebuilt.
2230 * mc-boot/GM2Dependent.c: Rebuilt.
2231 * mc-boot/Gkeyc.c: Rebuilt.
2232 * mc/keyc.mod (seenUIntMin): Initialize once.
2233 (seenUIntMax): Initialize once.
2234 (checkLimits): Only test seenUIntMin and seenUIntMax
2236 * pge-boot/GArgs.c: Rebuilt.
2237 * pge-boot/GM2Dependent.c: Rebuilt.
2239 2023-01-20 Gaius Mulley <gaiusmod2@gmail.com>
2241 * gm2-gcc/m2statement.cc (gm2_gimplify_function_node):
2243 * gm2-libs/DynamicStrings.mod (Equal): Remove dead code.
2244 * m2.flex (<COMMENT>"<*"): Add {} for else statement.
2245 * m2pp.cc (hextree): Add conditional #ifdef DEBUGGING.
2246 * mc-boot/GDynamicStrings.c: Rebuild.
2247 * pge-boot/GDynamicStrings.c: Rebuild.
2248 * pge-boot/GFIO.c: Rebuild.
2249 * pge-boot/GIndexing.c: Rebuild.
2250 * pge-boot/GM2EXCEPTION.c: Rebuild.
2251 * pge-boot/GM2RTS.c: Rebuild.
2252 * pge-boot/GNameKey.c: Rebuild.
2253 * pge-boot/GPushBackInput.c: Rebuild.
2254 * pge-boot/GRTExceptions.c: Rebuild.
2255 * pge-boot/GStdIO.c: Rebuild.
2256 * pge-boot/GSymbolKey.c: Rebuild.
2257 * pge-boot/GSysStorage.c: Rebuild.
2259 2023-01-17 Gaius Mulley <gaiusmod2@gmail.com>
2261 * mc-boot/GM2RTS.c: Rebuilt.
2262 * mc-boot/GM2RTS.h: Rebuilt.
2263 * mc-boot/Gdecl.c: Rebuilt.
2264 * mc-boot/GmcOptions.c: Rebuilt.
2265 * mc/mcOptions.mod (displayVersion):
2266 Split first printf into three components
2268 2023-01-17 Gaius Mulley <gaiusmod2@gmail.com>
2270 * gm2-libs-iso/M2RTS.def (Halt): Parameter file renamed to filename.
2271 (HaltC): New procedure declaration.
2272 (ErrorMessage): Parameter file renamed to filename.
2273 * gm2-libs-iso/M2RTS.mod (Halt): Parameter file renamed to
2275 (HaltC): New procedure implementation.
2276 (ErrorStringC): New procedure implementation.
2277 (ErrorMessageC): New procedure implementation.
2278 * gm2-libs/M2RTS.def (Halt): Parameter file renamed to filename.
2279 (HaltC): New procedure declaration.
2280 (ErrorMessage): Parameter file renamed to filename.
2281 * gm2-libs/M2RTS.mod (Halt): Parameter file renamed to filename.
2282 (HaltC): New procedure implementation.
2283 (ErrorStringC): New procedure implementation.
2284 (ErrorMessageC): New procedure implementation.
2286 2023-01-16 Gaius Mulley <gaiusmod2@gmail.com>
2288 * mc-boot-ch/Glibc.c (libc_time): New function.
2289 (libc_localtime): New function.
2290 * mc-boot/GDynamicStrings.c: Regenerate.
2291 * mc-boot/GFIO.c: Regenerate.
2292 * mc-boot/GFormatStrings.c: Regenerate.
2293 * mc-boot/GIndexing.c: Regenerate.
2294 * mc-boot/GM2Dependent.c: Regenerate.
2295 * mc-boot/GM2EXCEPTION.c: Regenerate.
2296 * mc-boot/GPushBackInput.c: Regenerate.
2297 * mc-boot/GRTExceptions.c: Regenerate.
2298 * mc-boot/GRTint.c: Regenerate.
2299 * mc-boot/GStdIO.c: Regenerate.
2300 * mc-boot/GStringConvert.c: Regenerate.
2301 * mc-boot/GSysStorage.c: Regenerate.
2302 * mc-boot/Gdecl.c: Regenerate.
2303 * mc-boot/GmcComment.c: Regenerate.
2304 * mc-boot/GmcComp.c: Regenerate.
2305 * mc-boot/GmcDebug.c: Regenerate.
2306 * mc-boot/GmcMetaError.c: Regenerate.
2307 * mc-boot/GmcOptions.c: Regenerate.
2308 * mc-boot/GmcStack.c: Regenerate.
2309 * mc-boot/GnameKey.c: Regenerate.
2310 * mc-boot/GsymbolKey.c: Regenerate.
2311 * mc-boot/Gkeyc.c: Regenerate.
2312 * mc/decl.mod (putFieldRecord): Change NulName to NulKey
2313 and fix type comparision.
2314 * mc/mcOptions.mod (YEAR): Remove.
2315 (getYear): New procedure function.
2316 (displayVersion): Use result from getYear instead of YEAR.
2317 Emit boilerplate for GPL v3.
2318 (gplBody): Use result from getYear instead of YEAR.
2319 (glplBody): Use result from getYear instead of YEAR.
2321 2023-01-16 Gaius Mulley <gaiusmod2@gmail.com>
2323 * gm2-compiler/M2Quads.mod (AssignUnboundedVar): Check Type
2324 against NulSym and call MetaErrorT1 if necessary.
2325 (AssignUnboundedNonVar): Check Type against NulSym and
2326 call MetaErrorT1 if necessary.
2327 (BuildDesignatorPointer): Check Type1 against NulSym and
2328 call MetaErrorT1 if necessary.
2330 2023-01-16 Gaius Mulley <gaiusmod2@gmail.com>
2332 * mc/mcOptions.mod (displayVersion): Change GPLv2 to GPLv3.
2335 2023-01-15 Gaius Mulley <gaiusmod2@gmail.com>
2337 * gm2-compiler/M2LexBuf.mod (isSrcToken): Add block comment.
2339 * gm2-compiler/M2Quads.def (BuildNot): Add notTokPos parameter.
2340 * gm2-compiler/M2Quads.mod (BuildNot): Add notTokPos parameter.
2341 Create and push virtual token.
2342 (PopBooltok): New procedure.
2343 (PushBooltok): New procedure.
2344 (PushBool): Re-implement using PushBooltok.
2345 (PopBool): Re-implement using PopBooltok.
2346 * gm2-compiler/P3Build.bnf (ConstFactor): Record token
2348 (Factor): Record token position of NOT.
2349 * gm2-compiler/PHBuild.bnf (ConstFactor): Record token
2351 (Relation): Push token position.
2352 (UnaryOrConstTerm): Push token position.
2353 (AddOperator): Push token position.
2354 (MulOperator): Push token position.
2356 2023-01-13 Iain Sandoe <iain@sandoe.co.uk>
2358 * gm2-gcc/m2options.h (M2Options_SetVerbose): Export the
2360 * gm2-lang.cc: Handle OPT_v, passing it to the compiler.
2361 * lang-specs.h: Pass -v to cc1gm2.
2363 2023-01-13 Gaius Mulley <gaiusmod2@gmail.com>
2365 * mc-boot-ch/GRTco.c (RTco_select): Add return 0.
2366 * pge-boot/GRTco.c (RTco_select): Add return 0.
2368 2023-01-10 Gaius Mulley <gaiusmod2@gmail.com>
2370 * Make-lang.in (m2/mc-boot/$(SRC_PREFIX)%.o): Add
2371 m2/gm2-libs/gm2-libs-host.h dependency.
2372 (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Add
2373 m2/gm2-libs/gm2-libs-host.h dependency.
2375 2023-01-10 Gaius Mulley <gaiusmod2@gmail.com>
2377 * Make-lang.in (GM2_1): Change -B path to m2/stage1.
2378 ($(objdir)/m2/images/gnu.eps): Check and create dest dir
2380 (gm2-libs.texi-check): Check and create dir m2/gm2-libs-pim,
2381 m2/gm2-libs-iso and m2/gm2-libs if necessary.
2382 ($(objdir)/m2/gm2-compiler-boot): Remove.
2383 ($(objdir)/m2/gm2-libs-boot): Remove.
2384 ($(objdir)/m2/gm2-libs-libiberty): Remove.
2385 ($(objdir)/m2/gm2-libiberty): Remove.
2386 ($(objdir)/m2/gm2-gcc): Remove.
2387 ($(objdir)/m2/gm2-compiler): Remove.
2388 ($(objdir)/m2/gm2-libs): Remove.
2389 ($(objdir)/m2/gm2-libs-iso): Remove.
2390 ($(objdir)/m2/gm2-libs-min): Remove.
2391 ($(objdir)/m2/gm2-compiler-paranoid): Remove.
2392 ($(objdir)/m2/gm2-libs-paranoid): Remove.
2393 ($(objdir)/m2/gm2-compiler-verify): Remove.
2394 ($(objdir)/m2/boot-bin): Remove.
2395 ($(objdir)/m2/gm2-libs-pim): Remove.
2396 ($(objdir)/m2/gm2-libs-coroutines): Remove.
2397 (stage1/m2): Remove.
2398 (stage2/m2): Remove.
2399 (stage3/m2): Remove.
2400 (m2.stageprofile): New rule.
2401 (m2.stagefeedback): New rule.
2402 (cc1gm2$(exeext)): Change dependent name.
2403 (m2/stage2/cc1gm2$(exeext)): Change dependent name.
2404 Check and create dest dir.
2405 (m2/stage1/cc1gm2$(exeext)): Check and create dest dir
2407 (m2/gm2-gcc/%.o): Ditto.
2408 (m2/gm2-gcc/rtegraph.o): Ditto.
2409 (m2/gm2-gcc/$(SRC_PREFIX)%.h): Ditto.
2410 (m2/gm2-gcc/$(SRC_PREFIX)%.h): Ditto.
2411 (m2/mc-boot): Ditto.
2412 (m2/mc-boot-ch): Ditto.
2413 (m2/gm2-libs-boot): Ditto.
2414 (m2/gm2-compiler-boot): Ditto.
2415 (m2/gm2-compiler): Ditto.
2416 (m2/gm2-libiberty): Ditto.
2417 (m2/gm2-compiler): Ditto.
2418 (m2/gm2-libs-iso): Ditto.
2419 (m2/gm2-libs): Ditto.
2420 (m2/gm2-libs-min): Ditto.
2421 (m2/gm2-libs-coroutines): Ditto.
2422 (m2/boot-bin): Ditto.
2423 (m2/pge-boot): Ditto.
2424 (m2/pge-boot): Ditto.
2425 * Make-maintainer.in (m2/gm2-ppg-boot): Check and create
2426 dest dir if necessary.
2428 (m2/gm2-ppg-boot): Ditto.
2429 (m2/gm2-pg-boot): Ditto.
2430 (m2/gm2-auto): Ditto.
2431 (m2/gm2-pg-boot): Ditto.
2432 (m2/gm2-pge-boot): Ditto.
2433 ($(objdir)/plugin): Ditto.
2434 ($(objdir)/m2/mc-boot-ch): Ditto.
2435 ($(objdir)/m2/mc-boot-gen): Ditto.
2436 (m2/boot-bin): Ditto.
2439 ($(objdir)/m2/gm2-ppg-boot): Ditto.
2440 ($(objdir)/m2/gm2-pg-boot): Ditto.
2441 ($(objdir)/m2/gm2-pge-boot): Ditto.
2442 (m2/mc-boot-gen): Ditto.
2444 (m2/gm2-libs-paranoid): Ditto.
2445 (m2/gm2-compiler-paranoid): Ditto.
2446 (m2/gm2-libs-paranoid): Ditto.
2447 (m2/gm2-compiler-paranoid): Ditto.
2448 (m2/gm2-libs-paranoid): Ditto.
2449 (m2/gm2-compiler-paranoid): Ditto.
2450 * config-lang.in (m2/gm2-compiler-boot): Remove mkdir.
2451 (m2/gm2-libs-boot): Ditto.
2452 (m2/gm2-ici-boot): Ditto.
2453 (m2/gm2-libiberty): Ditto.
2454 (m2/gm2-gcc): Ditto.
2455 (m2/gm2-compiler): Ditto.
2456 (m2/gm2-libs): Ditto.
2457 (m2/gm2-libs-iso): Ditto.
2458 (m2/gm2-compiler-paranoid): Ditto.
2459 (m2/gm2-libs-paranoid): Ditto.
2460 (m2/gm2-compiler-verify): Ditto.
2461 (m2/boot-bin): Ditto.
2462 (m2/gm2-libs-pim): Ditto.
2463 (m2/gm2-libs-coroutines): Ditto.
2464 (m2/gm2-libs-min): Ditto.
2465 (m2/pge-boot): Ditto.
2471 (m2/gm2-auto): Ditto.
2472 (m2/gm2-pg-boot): Ditto.
2473 (m2/gm2-pge-boot): Ditto.
2474 (m2/gm2-ppg-boot): Ditto.
2475 (m2/mc-boot): Ditto.
2476 (m2/mc-boot-ch): Ditto.
2477 (m2/mc-boot-gen): Ditto.
2479 2023-01-09 Gaius Mulley <gaiusmod2@gmail.com>
2481 * Make-lang.in (m2/pge-boot/%.o): Add m2/gm2config.h.
2482 * gm2-libs/config-host: Regenerate.
2484 2023-01-07 Iain Sandoe <iain@sandoe.co.uk>
2486 * gm2-libs-min/libc.c (abort): Update declaration to match the
2487 expected form, add no-return attribute.
2488 (exit): Add no-return attribute.
2490 2023-01-05 Iain Sandoe <iain@sandoe.co.uk>
2493 * gm2-gcc/m2builtins.cc: Remove scalb, scalbf, scalbl,
2494 significand, significandf, significandl.
2495 * gm2-libs/Builtins.def (significand): Likewise.
2496 * gm2-libs/Builtins.mod: Likewise.
2497 * target-independent/Builtins.texi: Likewise.
2498 * gm2-libs-iso/LowLong.mod: Implement fraction with scalbn*() and
2500 * gm2-libs-iso/LowReal.mod: Likewise.
2501 * gm2-libs-iso/LowShort.mod: Likewise.
2503 2023-01-05 Gaius Mulley <gaiusmod2@gmail.com>
2505 * gm2-libs-min/M2RTS.def (ConstructModules): New procedure
2507 (DeconstructModules): New procedure declaration.
2508 * gm2-libs-min/M2RTS.mod (ConstructModules): New procedure
2509 dummy implementation.
2510 (DeconstructModules): New procedure dummy implementation.
2512 2023-01-05 Iain Sandoe <iain@sandoe.co.uk>
2514 * gm2spec.cc (lang_specific_driver): Handle static-libgm2.
2515 * lang.opt: Add static-libgm2.
2517 2023-01-05 Iain Sandoe <iain@sandoe.co.uk>
2519 * gm2spec.cc (lang_specific_driver): Pass -static-libstdc++ on to
2520 the target driver if the linker does not support Bstatic/dynamic.
2522 2023-01-04 Iain Sandoe <iain@sandoe.co.uk>
2525 * gm2-libs-ch/UnixArgs.cc (_M2_UnixArgs_ctor): Rework to use
2526 an extern "C" function with 'constructor' attribute.
2527 * gm2-libs-ch/dtoa.cc (_M2_dtoa_ctor): Likewise.
2528 * gm2-libs-ch/ldtoa.cc (_M2_ldtoa_ctor): Likewise.
2530 2023-01-04 Iain Sandoe <iain@sandoe.co.uk>
2533 * gm2-gcc/m2decl.cc (m2decl_DeclareModuleCtor): Make module
2534 registration constructors visible.
2536 2023-01-04 Iain Sandoe <iain@sandoe.co.uk>
2538 * Make-lang.in (dvi, ps, pdf): Build in the gcc/doc directory, also
2539 use the configured tools for texi -> dvi and texi -> pdf.
2541 2023-01-01 Iain Sandoe <iain@sandoe.co.uk>
2542 Gaius Mulley <gaiusmod2@gmail.com>
2545 * gm2-compiler/M2GCCDeclare.mod: Module registration constructors are
2546 externs to the builder of m2_link.
2548 2022-12-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2549 Iain Sandoe <iain@sandoe.co.uk>
2552 * Make-lang.in (soext): Use .dylib for Darwin.
2553 (PLUGINLDFLAGS): Use dynmic lookup, set the plugin name, and append
2554 -nodefaultlibs to suppress the linking of libstdc++.
2555 Use INCINTL in compile lines for the plugin.
2557 2022-12-21 Jakub Jelinek <jakub@redhat.com>
2560 * gm2-gcc/m2linemap.def (location_t): Use CARDINAL instead of INTEGER.
2562 2022-12-19 Jakub Jelinek <jakub@redhat.com>
2564 * gm2-gcc/m2linemap.cc (m2linemap_ErrorAt, m2linemap_ErrorAtf,
2565 m2linemap_WarningAtf, m2linemap_NoteAtf, m2linemap_internal_error):
2566 Call functions with "%s", message rather than just message, so that
2567 % chars in message aren't treated as format specifiers.
2569 2022-12-19 Jakub Jelinek <jakub@redhat.com>
2572 * gm2-gcc/m2linemap.def (ErrorAtf, WarningAtf, NoteAtf):
2573 Comment out prototypes with varargs.
2574 * gm2-gcc/m2linemap.h (m2linemap_ErrorAtf, m2linemap_WarningAtf,
2575 m2linemap_NoteAtf): No longer varargs.
2576 * gm2-gcc/m2linemap.cc (m2linemap_ErrorAtf): Turned into a
2577 non-varargs wrapper around ...
2578 (m2linemap_ErrorAtf_1): ... this. New static function.
2579 (m2linemap_WarningAtf): Turned into a non-varargs wrapper around ...
2580 (m2linemap_WarningAtf_1): ... this. New static function.
2581 (m2linemap_NoteAtf): Turned into a non-varargs wrapper around ...
2582 (m2linemap_NoteAtf_1): ... this. New static function.
2584 2022-12-15 Gaius Mulley <gaiusmod2@gmail.com>
2586 * configure.ac: Stop probing for realpath.
2587 * tools-src/calcpath: Break dependency on realpath, cut
2589 * configure: Rebuilt.
2591 2022-12-15 Gaius Mulley <gaiusmod2@gmail.com>
2593 * gm2config.h.in: Rebuilt.
2595 2022-12-14 Gaius Mulley <gaiusmod2@gmail.com>
2597 * COPYING.FDL: New file.
2598 * COPYING.RUNTIME: New file.
2599 * COPYING3: New file.
2600 * COPYING3.LIB: New file.
2601 * Make-lang.in: New file.
2602 * Make-maintainer.in: New file.
2605 * config-lang.in: New file.
2606 * config-make.in: New file.
2607 * configure.ac: New file.
2608 * gm2-compiler/CLexBuf.def: New file.
2609 * gm2-compiler/CLexBuf.mod: New file.
2610 * gm2-compiler/FifoQueue.def: New file.
2611 * gm2-compiler/FifoQueue.mod: New file.
2612 * gm2-compiler/Lists.def: New file.
2613 * gm2-compiler/Lists.mod: New file.
2614 * gm2-compiler/M2ALU.def: New file.
2615 * gm2-compiler/M2ALU.mod: New file.
2616 * gm2-compiler/M2AsmUtil.def: New file.
2617 * gm2-compiler/M2AsmUtil.mod: New file.
2618 * gm2-compiler/M2Base.def: New file.
2619 * gm2-compiler/M2Base.mod: New file.
2620 * gm2-compiler/M2BasicBlock.def: New file.
2621 * gm2-compiler/M2BasicBlock.mod: New file.
2622 * gm2-compiler/M2Batch.def: New file.
2623 * gm2-compiler/M2Batch.mod: New file.
2624 * gm2-compiler/M2Bitset.def: New file.
2625 * gm2-compiler/M2Bitset.mod: New file.
2626 * gm2-compiler/M2CaseList.def: New file.
2627 * gm2-compiler/M2CaseList.mod: New file.
2628 * gm2-compiler/M2Check.def: New file.
2629 * gm2-compiler/M2Check.mod: New file.
2630 * gm2-compiler/M2Code.def: New file.
2631 * gm2-compiler/M2Code.mod: New file.
2632 * gm2-compiler/M2ColorString.def: New file.
2633 * gm2-compiler/M2ColorString.mod: New file.
2634 * gm2-compiler/M2Comp.def: New file.
2635 * gm2-compiler/M2Comp.mod: New file.
2636 * gm2-compiler/M2Const.def: New file.
2637 * gm2-compiler/M2Const.mod: New file.
2638 * gm2-compiler/M2Debug.def: New file.
2639 * gm2-compiler/M2Debug.mod: New file.
2640 * gm2-compiler/M2DebugStack.def: New file.
2641 * gm2-compiler/M2DebugStack.mod: New file.
2642 * gm2-compiler/M2Defaults.def: New file.
2643 * gm2-compiler/M2Defaults.mod: New file.
2644 * gm2-compiler/M2DriverOptions.def: New file.
2645 * gm2-compiler/M2DriverOptions.mod: New file.
2646 * gm2-compiler/M2Emit.def: New file.
2647 * gm2-compiler/M2Emit.mod: New file.
2648 * gm2-compiler/M2Error.def: New file.
2649 * gm2-compiler/M2Error.mod: New file.
2650 * gm2-compiler/M2EvalSym.def: New file.
2651 * gm2-compiler/M2FileName.def: New file.
2652 * gm2-compiler/M2FileName.mod: New file.
2653 * gm2-compiler/M2GCCDeclare.def: New file.
2654 * gm2-compiler/M2GCCDeclare.mod: New file.
2655 * gm2-compiler/M2GenGCC.def: New file.
2656 * gm2-compiler/M2GenGCC.mod: New file.
2657 * gm2-compiler/M2Graph.def: New file.
2658 * gm2-compiler/M2Graph.mod: New file.
2659 * gm2-compiler/M2Lex.def: New file.
2660 * gm2-compiler/M2Lex.mod: New file.
2661 * gm2-compiler/M2LexBuf.def: New file.
2662 * gm2-compiler/M2LexBuf.mod: New file.
2663 * gm2-compiler/M2MetaError.def: New file.
2664 * gm2-compiler/M2MetaError.mod: New file.
2665 * gm2-compiler/M2Optimize.def: New file.
2666 * gm2-compiler/M2Optimize.mod: New file.
2667 * gm2-compiler/M2Options.def: New file.
2668 * gm2-compiler/M2Options.mod: New file.
2669 * gm2-compiler/M2Pass.def: New file.
2670 * gm2-compiler/M2Pass.mod: New file.
2671 * gm2-compiler/M2Preprocess.def: New file.
2672 * gm2-compiler/M2Preprocess.mod: New file.
2673 * gm2-compiler/M2Printf.def: New file.
2674 * gm2-compiler/M2Printf.mod: New file.
2675 * gm2-compiler/M2Quads.def: New file.
2676 * gm2-compiler/M2Quads.mod: New file.
2677 * gm2-compiler/M2Quiet.def: New file.
2678 * gm2-compiler/M2Quiet.mod: New file.
2679 * gm2-compiler/M2Range.def: New file.
2680 * gm2-compiler/M2Range.mod: New file.
2681 * gm2-compiler/M2Reserved.def: New file.
2682 * gm2-compiler/M2Reserved.mod: New file.
2683 * gm2-compiler/M2SSA.def: New file.
2684 * gm2-compiler/M2SSA.mod: New file.
2685 * gm2-compiler/M2Scaffold.def: New file.
2686 * gm2-compiler/M2Scaffold.mod: New file.
2687 * gm2-compiler/M2Scope.def: New file.
2688 * gm2-compiler/M2Scope.mod: New file.
2689 * gm2-compiler/M2Search.def: New file.
2690 * gm2-compiler/M2Search.mod: New file.
2691 * gm2-compiler/M2Size.def: New file.
2692 * gm2-compiler/M2Size.mod: New file.
2693 * gm2-compiler/M2StackAddress.def: New file.
2694 * gm2-compiler/M2StackAddress.mod: New file.
2695 * gm2-compiler/M2StackWord.def: New file.
2696 * gm2-compiler/M2StackWord.mod: New file.
2697 * gm2-compiler/M2Students.def: New file.
2698 * gm2-compiler/M2Students.mod: New file.
2699 * gm2-compiler/M2Swig.def: New file.
2700 * gm2-compiler/M2Swig.mod: New file.
2701 * gm2-compiler/M2System.def: New file.
2702 * gm2-compiler/M2System.mod: New file.
2703 * gm2-compiler/M2Version.def: New file.
2704 * gm2-compiler/NameKey.def: New file.
2705 * gm2-compiler/NameKey.mod: New file.
2706 * gm2-compiler/ObjectFiles.def: New file.
2707 * gm2-compiler/ObjectFiles.mod: New file.
2708 * gm2-compiler/Output.def: New file.
2709 * gm2-compiler/Output.mod: New file.
2710 * gm2-compiler/P0SymBuild.def: New file.
2711 * gm2-compiler/P0SymBuild.mod: New file.
2712 * gm2-compiler/P0SyntaxCheck.bnf: New file.
2713 * gm2-compiler/P0SyntaxCheck.def: New file.
2714 * gm2-compiler/P1Build.bnf: New file.
2715 * gm2-compiler/P1Build.def: New file.
2716 * gm2-compiler/P1SymBuild.def: New file.
2717 * gm2-compiler/P1SymBuild.mod: New file.
2718 * gm2-compiler/P2Build.bnf: New file.
2719 * gm2-compiler/P2Build.def: New file.
2720 * gm2-compiler/P2SymBuild.def: New file.
2721 * gm2-compiler/P2SymBuild.mod: New file.
2722 * gm2-compiler/P3Build.bnf: New file.
2723 * gm2-compiler/P3Build.def: New file.
2724 * gm2-compiler/P3SymBuild.def: New file.
2725 * gm2-compiler/P3SymBuild.mod: New file.
2726 * gm2-compiler/PCBuild.bnf: New file.
2727 * gm2-compiler/PCBuild.def: New file.
2728 * gm2-compiler/PCSymBuild.def: New file.
2729 * gm2-compiler/PCSymBuild.mod: New file.
2730 * gm2-compiler/PHBuild.bnf: New file.
2731 * gm2-compiler/PHBuild.def: New file.
2732 * gm2-compiler/README: New file.
2733 * gm2-compiler/Sets.def: New file.
2734 * gm2-compiler/Sets.mod: New file.
2735 * gm2-compiler/SymbolConversion.def: New file.
2736 * gm2-compiler/SymbolConversion.mod: New file.
2737 * gm2-compiler/SymbolKey.def: New file.
2738 * gm2-compiler/SymbolKey.mod: New file.
2739 * gm2-compiler/SymbolTable.def: New file.
2740 * gm2-compiler/SymbolTable.mod: New file.
2741 * gm2-compiler/bnflex.def: New file.
2742 * gm2-compiler/bnflex.mod: New file.
2743 * gm2-compiler/cflex.def: New file.
2744 * gm2-compiler/gm2.mod: New file.
2745 * gm2-compiler/gm2lcc.mod: New file.
2746 * gm2-compiler/gm2lgen.mod: New file.
2747 * gm2-compiler/gm2lorder.mod: New file.
2748 * gm2-compiler/m2flex.def: New file.
2749 * gm2-compiler/ppg.mod: New file.
2750 * gm2-gcc/README: New file.
2751 * gm2-gcc/dynamicstrings.h: New file.
2752 * gm2-gcc/gcc-consolidation.h: New file.
2753 * gm2-gcc/init.cc: New file.
2754 * gm2-gcc/init.def: New file.
2755 * gm2-gcc/init.h: New file.
2756 * gm2-gcc/m2assert.cc: New file.
2757 * gm2-gcc/m2assert.h: New file.
2758 * gm2-gcc/m2block.cc: New file.
2759 * gm2-gcc/m2block.def: New file.
2760 * gm2-gcc/m2block.h: New file.
2761 * gm2-gcc/m2builtins.cc: New file.
2762 * gm2-gcc/m2builtins.def: New file.
2763 * gm2-gcc/m2builtins.h: New file.
2764 * gm2-gcc/m2color.cc: New file.
2765 * gm2-gcc/m2color.def: New file.
2766 * gm2-gcc/m2color.h: New file.
2767 * gm2-gcc/m2configure.cc: New file.
2768 * gm2-gcc/m2configure.def: New file.
2769 * gm2-gcc/m2configure.h: New file.
2770 * gm2-gcc/m2convert.cc: New file.
2771 * gm2-gcc/m2convert.def: New file.
2772 * gm2-gcc/m2convert.h: New file.
2773 * gm2-gcc/m2decl.cc: New file.
2774 * gm2-gcc/m2decl.def: New file.
2775 * gm2-gcc/m2decl.h: New file.
2776 * gm2-gcc/m2except.cc: New file.
2777 * gm2-gcc/m2except.def: New file.
2778 * gm2-gcc/m2except.h: New file.
2779 * gm2-gcc/m2expr.cc: New file.
2780 * gm2-gcc/m2expr.def: New file.
2781 * gm2-gcc/m2expr.h: New file.
2782 * gm2-gcc/m2linemap.cc: New file.
2783 * gm2-gcc/m2linemap.def: New file.
2784 * gm2-gcc/m2linemap.h: New file.
2785 * gm2-gcc/m2misc.cc: New file.
2786 * gm2-gcc/m2misc.def: New file.
2787 * gm2-gcc/m2misc.h: New file.
2788 * gm2-gcc/m2options.h: New file.
2789 * gm2-gcc/m2range.h: New file.
2790 * gm2-gcc/m2search.h: New file.
2791 * gm2-gcc/m2statement.cc: New file.
2792 * gm2-gcc/m2statement.def: New file.
2793 * gm2-gcc/m2statement.h: New file.
2794 * gm2-gcc/m2top.cc: New file.
2795 * gm2-gcc/m2top.def: New file.
2796 * gm2-gcc/m2top.h: New file.
2797 * gm2-gcc/m2tree.cc: New file.
2798 * gm2-gcc/m2tree.def: New file.
2799 * gm2-gcc/m2tree.h: New file.
2800 * gm2-gcc/m2treelib.cc: New file.
2801 * gm2-gcc/m2treelib.def: New file.
2802 * gm2-gcc/m2treelib.h: New file.
2803 * gm2-gcc/m2type.cc: New file.
2804 * gm2-gcc/m2type.def: New file.
2805 * gm2-gcc/m2type.h: New file.
2806 * gm2-gcc/rtegraph.cc: New file.
2807 * gm2-gcc/rtegraph.h: New file.
2808 * gm2-ici/M2Emit.mod: New file.
2809 * gm2-ici/README: New file.
2810 * gm2-ici/m2linemap.c: New file.
2811 * gm2-internals.texi: New file.
2812 * gm2-lang.cc: New file.
2813 * gm2-lang.h: New file.
2814 * gm2-libiberty/README: New file.
2815 * gm2-libiberty/choosetemp.def: New file.
2816 * gm2-libiberty/pexecute.def: New file.
2817 * gm2-libs-ch/M2LINK.c: New file.
2818 * gm2-libs-ch/README: New file.
2819 * gm2-libs-ch/RTcodummy.c: New file.
2820 * gm2-libs-ch/RTintdummy.c: New file.
2821 * gm2-libs-ch/Selective.c: New file.
2822 * gm2-libs-ch/SysExceptions.c: New file.
2823 * gm2-libs-ch/UnixArgs.cc: New file.
2824 * gm2-libs-ch/cgetopt.c: New file.
2825 * gm2-libs-ch/choosetemp.c: New file.
2826 * gm2-libs-ch/dtoa.cc: New file.
2827 * gm2-libs-ch/errno.c: New file.
2828 * gm2-libs-ch/host.c: New file.
2829 * gm2-libs-ch/ldtoa.cc: New file.
2830 * gm2-libs-ch/m2rts.h: New file.
2831 * gm2-libs-ch/termios.c: New file.
2832 * gm2-libs-ch/tools.c: New file.
2833 * gm2-libs-ch/wrapc.c: New file.
2834 * gm2-libs-ch/xlibc.c: New file.
2835 * gm2-libs-coroutines/Debug.def: New file.
2836 * gm2-libs-coroutines/Debug.mod: New file.
2837 * gm2-libs-coroutines/Executive.def: New file.
2838 * gm2-libs-coroutines/Executive.mod: New file.
2839 * gm2-libs-coroutines/KeyBoardLEDs.def: New file.
2840 * gm2-libs-coroutines/README.texi: New file.
2841 * gm2-libs-coroutines/SYSTEM.def: New file.
2842 * gm2-libs-coroutines/SYSTEM.mod: New file.
2843 * gm2-libs-coroutines/TimerHandler.def: New file.
2844 * gm2-libs-coroutines/TimerHandler.mod: New file.
2845 * gm2-libs-iso/COROUTINES.def: New file.
2846 * gm2-libs-iso/COROUTINES.mod: New file.
2847 * gm2-libs-iso/ChanConsts.def: New file.
2848 * gm2-libs-iso/ChanConsts.h: New file.
2849 * gm2-libs-iso/ChanConsts.mod: New file.
2850 * gm2-libs-iso/CharClass.def: New file.
2851 * gm2-libs-iso/CharClass.mod: New file.
2852 * gm2-libs-iso/ClientSocket.def: New file.
2853 * gm2-libs-iso/ClientSocket.mod: New file.
2854 * gm2-libs-iso/ComplexMath.def: New file.
2855 * gm2-libs-iso/ComplexMath.mod: New file.
2856 * gm2-libs-iso/ConvStringLong.def: New file.
2857 * gm2-libs-iso/ConvStringLong.mod: New file.
2858 * gm2-libs-iso/ConvStringReal.def: New file.
2859 * gm2-libs-iso/ConvStringReal.mod: New file.
2860 * gm2-libs-iso/ConvTypes.def: New file.
2861 * gm2-libs-iso/ConvTypes.mod: New file.
2862 * gm2-libs-iso/EXCEPTIONS.def: New file.
2863 * gm2-libs-iso/EXCEPTIONS.mod: New file.
2864 * gm2-libs-iso/ErrnoCategory.def: New file.
2865 * gm2-libs-iso/GeneralUserExceptions.def: New file.
2866 * gm2-libs-iso/GeneralUserExceptions.mod: New file.
2867 * gm2-libs-iso/IOChan.def: New file.
2868 * gm2-libs-iso/IOChan.mod: New file.
2869 * gm2-libs-iso/IOConsts.def: New file.
2870 * gm2-libs-iso/IOConsts.mod: New file.
2871 * gm2-libs-iso/IOLink.def: New file.
2872 * gm2-libs-iso/IOLink.mod: New file.
2873 * gm2-libs-iso/IOResult.def: New file.
2874 * gm2-libs-iso/IOResult.mod: New file.
2875 * gm2-libs-iso/LongComplexMath.def: New file.
2876 * gm2-libs-iso/LongComplexMath.mod: New file.
2877 * gm2-libs-iso/LongConv.def: New file.
2878 * gm2-libs-iso/LongConv.mod: New file.
2879 * gm2-libs-iso/LongIO.def: New file.
2880 * gm2-libs-iso/LongIO.mod: New file.
2881 * gm2-libs-iso/LongMath.def: New file.
2882 * gm2-libs-iso/LongMath.mod: New file.
2883 * gm2-libs-iso/LongStr.def: New file.
2884 * gm2-libs-iso/LongStr.mod: New file.
2885 * gm2-libs-iso/LongWholeIO.def: New file.
2886 * gm2-libs-iso/LongWholeIO.mod: New file.
2887 * gm2-libs-iso/LowLong.def: New file.
2888 * gm2-libs-iso/LowLong.mod: New file.
2889 * gm2-libs-iso/LowReal.def: New file.
2890 * gm2-libs-iso/LowReal.mod: New file.
2891 * gm2-libs-iso/LowShort.def: New file.
2892 * gm2-libs-iso/LowShort.mod: New file.
2893 * gm2-libs-iso/M2EXCEPTION.def: New file.
2894 * gm2-libs-iso/M2EXCEPTION.mod: New file.
2895 * gm2-libs-iso/M2RTS.def: New file.
2896 * gm2-libs-iso/M2RTS.mod: New file.
2897 * gm2-libs-iso/MemStream.def: New file.
2898 * gm2-libs-iso/MemStream.mod: New file.
2899 * gm2-libs-iso/Preemptive.def: New file.
2900 * gm2-libs-iso/Preemptive.mod: New file.
2901 * gm2-libs-iso/Processes.def: New file.
2902 * gm2-libs-iso/Processes.mod: New file.
2903 * gm2-libs-iso/ProgramArgs.def: New file.
2904 * gm2-libs-iso/ProgramArgs.mod: New file.
2905 * gm2-libs-iso/README.texi: New file.
2906 * gm2-libs-iso/RTco.def: New file.
2907 * gm2-libs-iso/RTdata.def: New file.
2908 * gm2-libs-iso/RTdata.mod: New file.
2909 * gm2-libs-iso/RTentity.def: New file.
2910 * gm2-libs-iso/RTentity.mod: New file.
2911 * gm2-libs-iso/RTfio.def: New file.
2912 * gm2-libs-iso/RTfio.mod: New file.
2913 * gm2-libs-iso/RTgen.def: New file.
2914 * gm2-libs-iso/RTgen.mod: New file.
2915 * gm2-libs-iso/RTgenif.def: New file.
2916 * gm2-libs-iso/RTgenif.mod: New file.
2917 * gm2-libs-iso/RTio.def: New file.
2918 * gm2-libs-iso/RTio.mod: New file.
2919 * gm2-libs-iso/RandomNumber.def: New file.
2920 * gm2-libs-iso/RandomNumber.mod: New file.
2921 * gm2-libs-iso/RawIO.def: New file.
2922 * gm2-libs-iso/RawIO.mod: New file.
2923 * gm2-libs-iso/RealConv.def: New file.
2924 * gm2-libs-iso/RealConv.mod: New file.
2925 * gm2-libs-iso/RealIO.def: New file.
2926 * gm2-libs-iso/RealIO.mod: New file.
2927 * gm2-libs-iso/RealMath.def: New file.
2928 * gm2-libs-iso/RealMath.mod: New file.
2929 * gm2-libs-iso/RealStr.def: New file.
2930 * gm2-libs-iso/RealStr.mod: New file.
2931 * gm2-libs-iso/RndFile.def: New file.
2932 * gm2-libs-iso/RndFile.mod: New file.
2933 * gm2-libs-iso/SIOResult.def: New file.
2934 * gm2-libs-iso/SIOResult.mod: New file.
2935 * gm2-libs-iso/SLongIO.def: New file.
2936 * gm2-libs-iso/SLongIO.mod: New file.
2937 * gm2-libs-iso/SLongWholeIO.def: New file.
2938 * gm2-libs-iso/SLongWholeIO.mod: New file.
2939 * gm2-libs-iso/SRawIO.def: New file.
2940 * gm2-libs-iso/SRawIO.mod: New file.
2941 * gm2-libs-iso/SRealIO.def: New file.
2942 * gm2-libs-iso/SRealIO.mod: New file.
2943 * gm2-libs-iso/SShortIO.def: New file.
2944 * gm2-libs-iso/SShortIO.mod: New file.
2945 * gm2-libs-iso/SShortWholeIO.def: New file.
2946 * gm2-libs-iso/SShortWholeIO.mod: New file.
2947 * gm2-libs-iso/STextIO.def: New file.
2948 * gm2-libs-iso/STextIO.mod: New file.
2949 * gm2-libs-iso/SWholeIO.def: New file.
2950 * gm2-libs-iso/SWholeIO.mod: New file.
2951 * gm2-libs-iso/SYSTEM.def: New file.
2952 * gm2-libs-iso/SYSTEM.mod: New file.
2953 * gm2-libs-iso/Semaphores.def: New file.
2954 * gm2-libs-iso/Semaphores.mod: New file.
2955 * gm2-libs-iso/SeqFile.def: New file.
2956 * gm2-libs-iso/SeqFile.mod: New file.
2957 * gm2-libs-iso/ShortComplexMath.def: New file.
2958 * gm2-libs-iso/ShortComplexMath.mod: New file.
2959 * gm2-libs-iso/ShortIO.def: New file.
2960 * gm2-libs-iso/ShortIO.mod: New file.
2961 * gm2-libs-iso/ShortWholeIO.def: New file.
2962 * gm2-libs-iso/ShortWholeIO.mod: New file.
2963 * gm2-libs-iso/SimpleCipher.def: New file.
2964 * gm2-libs-iso/SimpleCipher.mod: New file.
2965 * gm2-libs-iso/StdChans.def: New file.
2966 * gm2-libs-iso/StdChans.mod: New file.
2967 * gm2-libs-iso/Storage.def: New file.
2968 * gm2-libs-iso/Storage.mod: New file.
2969 * gm2-libs-iso/StreamFile.def: New file.
2970 * gm2-libs-iso/StreamFile.mod: New file.
2971 * gm2-libs-iso/StringChan.def: New file.
2972 * gm2-libs-iso/StringChan.mod: New file.
2973 * gm2-libs-iso/Strings.def: New file.
2974 * gm2-libs-iso/Strings.mod: New file.
2975 * gm2-libs-iso/SysClock.def: New file.
2976 * gm2-libs-iso/SysClock.mod: New file.
2977 * gm2-libs-iso/TERMINATION.def: New file.
2978 * gm2-libs-iso/TERMINATION.mod: New file.
2979 * gm2-libs-iso/TermFile.def: New file.
2980 * gm2-libs-iso/TermFile.mod: New file.
2981 * gm2-libs-iso/TextIO.def: New file.
2982 * gm2-libs-iso/TextIO.mod: New file.
2983 * gm2-libs-iso/WholeConv.def: New file.
2984 * gm2-libs-iso/WholeConv.mod: New file.
2985 * gm2-libs-iso/WholeIO.def: New file.
2986 * gm2-libs-iso/WholeIO.mod: New file.
2987 * gm2-libs-iso/WholeStr.def: New file.
2988 * gm2-libs-iso/WholeStr.mod: New file.
2989 * gm2-libs-iso/wrapsock.c: New file.
2990 * gm2-libs-iso/wrapsock.def: New file.
2991 * gm2-libs-iso/wraptime.c: New file.
2992 * gm2-libs-iso/wraptime.def: New file.
2993 * gm2-libs-min/M2RTS.def: New file.
2994 * gm2-libs-min/M2RTS.mod: New file.
2995 * gm2-libs-min/SYSTEM.def: New file.
2996 * gm2-libs-min/SYSTEM.mod: New file.
2997 * gm2-libs-min/libc.c: New file.
2998 * gm2-libs-min/libc.def: New file.
2999 * gm2-libs-pim/BitBlockOps.def: New file.
3000 * gm2-libs-pim/BitBlockOps.mod: New file.
3001 * gm2-libs-pim/BitByteOps.def: New file.
3002 * gm2-libs-pim/BitByteOps.mod: New file.
3003 * gm2-libs-pim/BitWordOps.def: New file.
3004 * gm2-libs-pim/BitWordOps.mod: New file.
3005 * gm2-libs-pim/BlockOps.def: New file.
3006 * gm2-libs-pim/BlockOps.mod: New file.
3007 * gm2-libs-pim/Break.c: New file.
3008 * gm2-libs-pim/Break.def: New file.
3009 * gm2-libs-pim/CardinalIO.def: New file.
3010 * gm2-libs-pim/CardinalIO.mod: New file.
3011 * gm2-libs-pim/Conversions.def: New file.
3012 * gm2-libs-pim/Conversions.mod: New file.
3013 * gm2-libs-pim/DebugPMD.def: New file.
3014 * gm2-libs-pim/DebugPMD.mod: New file.
3015 * gm2-libs-pim/DebugTrace.def: New file.
3016 * gm2-libs-pim/DebugTrace.mod: New file.
3017 * gm2-libs-pim/Delay.def: New file.
3018 * gm2-libs-pim/Delay.mod: New file.
3019 * gm2-libs-pim/Display.def: New file.
3020 * gm2-libs-pim/Display.mod: New file.
3021 * gm2-libs-pim/ErrorCode.def: New file.
3022 * gm2-libs-pim/ErrorCode.mod: New file.
3023 * gm2-libs-pim/FileSystem.def: New file.
3024 * gm2-libs-pim/FileSystem.mod: New file.
3025 * gm2-libs-pim/FloatingUtilities.def: New file.
3026 * gm2-libs-pim/FloatingUtilities.mod: New file.
3027 * gm2-libs-pim/InOut.def: New file.
3028 * gm2-libs-pim/InOut.mod: New file.
3029 * gm2-libs-pim/Keyboard.def: New file.
3030 * gm2-libs-pim/Keyboard.mod: New file.
3031 * gm2-libs-pim/LongIO.def: New file.
3032 * gm2-libs-pim/LongIO.mod: New file.
3033 * gm2-libs-pim/NumberConversion.def: New file.
3034 * gm2-libs-pim/NumberConversion.mod: New file.
3035 * gm2-libs-pim/README.texi: New file.
3036 * gm2-libs-pim/Random.def: New file.
3037 * gm2-libs-pim/Random.mod: New file.
3038 * gm2-libs-pim/RealConversions.def: New file.
3039 * gm2-libs-pim/RealConversions.mod: New file.
3040 * gm2-libs-pim/RealInOut.def: New file.
3041 * gm2-libs-pim/RealInOut.mod: New file.
3042 * gm2-libs-pim/Strings.def: New file.
3043 * gm2-libs-pim/Strings.mod: New file.
3044 * gm2-libs-pim/Termbase.def: New file.
3045 * gm2-libs-pim/Termbase.mod: New file.
3046 * gm2-libs-pim/Terminal.def: New file.
3047 * gm2-libs-pim/Terminal.mod: New file.
3048 * gm2-libs-pim/TimeDate.def: New file.
3049 * gm2-libs-pim/TimeDate.mod: New file.
3050 * gm2-libs/ASCII.def: New file.
3051 * gm2-libs/ASCII.mod: New file.
3052 * gm2-libs/Args.def: New file.
3053 * gm2-libs/Args.mod: New file.
3054 * gm2-libs/Assertion.def: New file.
3055 * gm2-libs/Assertion.mod: New file.
3056 * gm2-libs/Break.def: New file.
3057 * gm2-libs/Break.mod: New file.
3058 * gm2-libs/Builtins.def: New file.
3059 * gm2-libs/Builtins.mod: New file.
3060 * gm2-libs/COROUTINES.def: New file.
3061 * gm2-libs/COROUTINES.mod: New file.
3062 * gm2-libs/CmdArgs.def: New file.
3063 * gm2-libs/CmdArgs.mod: New file.
3064 * gm2-libs/Debug.def: New file.
3065 * gm2-libs/Debug.mod: New file.
3066 * gm2-libs/DynamicStrings.def: New file.
3067 * gm2-libs/DynamicStrings.mod: New file.
3068 * gm2-libs/Environment.def: New file.
3069 * gm2-libs/Environment.mod: New file.
3070 * gm2-libs/FIO.def: New file.
3071 * gm2-libs/FIO.mod: New file.
3072 * gm2-libs/FormatStrings.def: New file.
3073 * gm2-libs/FormatStrings.mod: New file.
3074 * gm2-libs/FpuIO.def: New file.
3075 * gm2-libs/FpuIO.mod: New file.
3076 * gm2-libs/GetOpt.def: New file.
3077 * gm2-libs/GetOpt.mod: New file.
3078 * gm2-libs/IO.def: New file.
3079 * gm2-libs/IO.mod: New file.
3080 * gm2-libs/Indexing.def: New file.
3081 * gm2-libs/Indexing.mod: New file.
3082 * gm2-libs/LMathLib0.def: New file.
3083 * gm2-libs/LMathLib0.mod: New file.
3084 * gm2-libs/LegacyReal.def: New file.
3085 * gm2-libs/LegacyReal.mod: New file.
3086 * gm2-libs/M2Dependent.def: New file.
3087 * gm2-libs/M2Dependent.mod: New file.
3088 * gm2-libs/M2EXCEPTION.def: New file.
3089 * gm2-libs/M2EXCEPTION.mod: New file.
3090 * gm2-libs/M2LINK.def: New file.
3091 * gm2-libs/M2RTS.def: New file.
3092 * gm2-libs/M2RTS.mod: New file.
3093 * gm2-libs/MathLib0.def: New file.
3094 * gm2-libs/MathLib0.mod: New file.
3095 * gm2-libs/MemUtils.def: New file.
3096 * gm2-libs/MemUtils.mod: New file.
3097 * gm2-libs/NumberIO.def: New file.
3098 * gm2-libs/NumberIO.mod: New file.
3099 * gm2-libs/OptLib.def: New file.
3100 * gm2-libs/OptLib.mod: New file.
3101 * gm2-libs/PushBackInput.def: New file.
3102 * gm2-libs/PushBackInput.mod: New file.
3103 * gm2-libs/README.texi: New file.
3104 * gm2-libs/RTExceptions.def: New file.
3105 * gm2-libs/RTExceptions.mod: New file.
3106 * gm2-libs/RTint.def: New file.
3107 * gm2-libs/RTint.mod: New file.
3108 * gm2-libs/SArgs.def: New file.
3109 * gm2-libs/SArgs.mod: New file.
3110 * gm2-libs/SCmdArgs.def: New file.
3111 * gm2-libs/SCmdArgs.mod: New file.
3112 * gm2-libs/SEnvironment.def: New file.
3113 * gm2-libs/SEnvironment.mod: New file.
3114 * gm2-libs/SFIO.def: New file.
3115 * gm2-libs/SFIO.mod: New file.
3116 * gm2-libs/SMathLib0.def: New file.
3117 * gm2-libs/SMathLib0.mod: New file.
3118 * gm2-libs/SYSTEM.def: New file.
3119 * gm2-libs/SYSTEM.mod: New file.
3120 * gm2-libs/Scan.def: New file.
3121 * gm2-libs/Scan.mod: New file.
3122 * gm2-libs/Selective.def: New file.
3123 * gm2-libs/StdIO.def: New file.
3124 * gm2-libs/StdIO.mod: New file.
3125 * gm2-libs/Storage.def: New file.
3126 * gm2-libs/Storage.mod: New file.
3127 * gm2-libs/StrCase.def: New file.
3128 * gm2-libs/StrCase.mod: New file.
3129 * gm2-libs/StrIO.def: New file.
3130 * gm2-libs/StrIO.mod: New file.
3131 * gm2-libs/StrLib.def: New file.
3132 * gm2-libs/StrLib.mod: New file.
3133 * gm2-libs/StringConvert.def: New file.
3134 * gm2-libs/StringConvert.mod: New file.
3135 * gm2-libs/SysExceptions.def: New file.
3136 * gm2-libs/SysStorage.def: New file.
3137 * gm2-libs/SysStorage.mod: New file.
3138 * gm2-libs/TimeString.def: New file.
3139 * gm2-libs/TimeString.mod: New file.
3140 * gm2-libs/UnixArgs.def: New file.
3141 * gm2-libs/cbuiltin.def: New file.
3142 * gm2-libs/cgetopt.def: New file.
3143 * gm2-libs/config-host: New file.
3144 * gm2-libs/config-host.in: New file.
3145 * gm2-libs/cxxabi.def: New file.
3146 * gm2-libs/dtoa.def: New file.
3147 * gm2-libs/errno.def: New file.
3148 * gm2-libs/gdbif.def: New file.
3149 * gm2-libs/gdbif.mod: New file.
3150 * gm2-libs/gm2-libs-host.h.in: New file.
3151 * gm2-libs/ldtoa.def: New file.
3152 * gm2-libs/libc.def: New file.
3153 * gm2-libs/libm.def: New file.
3154 * gm2-libs/sckt.def: New file.
3155 * gm2-libs/termios.def: New file.
3156 * gm2-libs/wrapc.def: New file.
3157 * gm2config.h.in: New file.
3158 * gm2spec.cc: New file.
3159 * gm2version.h: New file.
3160 * init/README: New file.
3161 * init/mcinit: New file.
3162 * init/ppginit: New file.
3163 * lang-specs.h: New file.
3164 * lang.opt: New file.
3165 * m2-tree.def: New file.
3166 * m2-tree.h: New file.
3167 * m2.flex: New file.
3168 * m2pp.cc: New file.
3170 * mc-boot-ch/GBuiltins.c: New file.
3171 * mc-boot-ch/GM2LINK.c: New file.
3172 * mc-boot-ch/GRTco.c: New file.
3173 * mc-boot-ch/GSYSTEM.c: New file.
3174 * mc-boot-ch/GSelective.c: New file.
3175 * mc-boot-ch/GSysExceptions.c: New file.
3176 * mc-boot-ch/GUnixArgs.cc: New file.
3177 * mc-boot-ch/Gabort.c: New file.
3178 * mc-boot-ch/Gcbuiltin.c: New file.
3179 * mc-boot-ch/Gdtoa.c: New file.
3180 * mc-boot-ch/Gerrno.c: New file.
3181 * mc-boot-ch/Gldtoa.c: New file.
3182 * mc-boot-ch/Glibc.c: New file.
3183 * mc-boot-ch/Glibm.c: New file.
3184 * mc-boot-ch/Gmcrts.c: New file.
3185 * mc-boot-ch/Gmcrts.h: New file.
3186 * mc-boot-ch/Gnetwork.h: New file.
3187 * mc-boot-ch/Gtermios.cc: New file.
3188 * mc-boot-ch/Gwrapc.c: New file.
3189 * mc-boot-ch/README: New file.
3190 * mc-boot-ch/m2rts.h: New file.
3191 * mc-boot-ch/network.c: New file.
3192 * mc-boot/GASCII.c: New file.
3193 * mc-boot/GASCII.h: New file.
3194 * mc-boot/GArgs.c: New file.
3195 * mc-boot/GArgs.h: New file.
3196 * mc-boot/GAssertion.c: New file.
3197 * mc-boot/GAssertion.h: New file.
3198 * mc-boot/GBreak.c: New file.
3199 * mc-boot/GBreak.h: New file.
3200 * mc-boot/GCOROUTINES.h: New file.
3201 * mc-boot/GCmdArgs.c: New file.
3202 * mc-boot/GCmdArgs.h: New file.
3203 * mc-boot/GDebug.c: New file.
3204 * mc-boot/GDebug.h: New file.
3205 * mc-boot/GDynamicStrings.c: New file.
3206 * mc-boot/GDynamicStrings.h: New file.
3207 * mc-boot/GEnvironment.c: New file.
3208 * mc-boot/GEnvironment.h: New file.
3209 * mc-boot/GFIO.c: New file.
3210 * mc-boot/GFIO.h: New file.
3211 * mc-boot/GFormatStrings.c: New file.
3212 * mc-boot/GFormatStrings.h: New file.
3213 * mc-boot/GFpuIO.c: New file.
3214 * mc-boot/GFpuIO.h: New file.
3215 * mc-boot/GIO.c: New file.
3216 * mc-boot/GIO.h: New file.
3217 * mc-boot/GIndexing.c: New file.
3218 * mc-boot/GIndexing.h: New file.
3219 * mc-boot/GM2Dependent.c: New file.
3220 * mc-boot/GM2Dependent.h: New file.
3221 * mc-boot/GM2EXCEPTION.c: New file.
3222 * mc-boot/GM2EXCEPTION.h: New file.
3223 * mc-boot/GM2LINK.h: New file.
3224 * mc-boot/GM2RTS.c: New file.
3225 * mc-boot/GM2RTS.h: New file.
3226 * mc-boot/GMemUtils.c: New file.
3227 * mc-boot/GMemUtils.h: New file.
3228 * mc-boot/GNumberIO.c: New file.
3229 * mc-boot/GNumberIO.h: New file.
3230 * mc-boot/GPushBackInput.c: New file.
3231 * mc-boot/GPushBackInput.h: New file.
3232 * mc-boot/GRTExceptions.c: New file.
3233 * mc-boot/GRTExceptions.h: New file.
3234 * mc-boot/GRTco.h: New file.
3235 * mc-boot/GRTint.c: New file.
3236 * mc-boot/GRTint.h: New file.
3237 * mc-boot/GSArgs.c: New file.
3238 * mc-boot/GSArgs.h: New file.
3239 * mc-boot/GSFIO.c: New file.
3240 * mc-boot/GSFIO.h: New file.
3241 * mc-boot/GSYSTEM.h: New file.
3242 * mc-boot/GSelective.h: New file.
3243 * mc-boot/GStdIO.c: New file.
3244 * mc-boot/GStdIO.h: New file.
3245 * mc-boot/GStorage.c: New file.
3246 * mc-boot/GStorage.h: New file.
3247 * mc-boot/GStrCase.c: New file.
3248 * mc-boot/GStrCase.h: New file.
3249 * mc-boot/GStrIO.c: New file.
3250 * mc-boot/GStrIO.h: New file.
3251 * mc-boot/GStrLib.c: New file.
3252 * mc-boot/GStrLib.h: New file.
3253 * mc-boot/GStringConvert.c: New file.
3254 * mc-boot/GStringConvert.h: New file.
3255 * mc-boot/GSysExceptions.h: New file.
3256 * mc-boot/GSysStorage.c: New file.
3257 * mc-boot/GSysStorage.h: New file.
3258 * mc-boot/GTimeString.c: New file.
3259 * mc-boot/GTimeString.h: New file.
3260 * mc-boot/GUnixArgs.h: New file.
3261 * mc-boot/Galists.c: New file.
3262 * mc-boot/Galists.h: New file.
3263 * mc-boot/Gdecl.c: New file.
3264 * mc-boot/Gdecl.h: New file.
3265 * mc-boot/Gdtoa.h: New file.
3266 * mc-boot/Gerrno.h: New file.
3267 * mc-boot/Gkeyc.c: New file.
3268 * mc-boot/Gkeyc.h: New file.
3269 * mc-boot/Gldtoa.h: New file.
3270 * mc-boot/Glibc.h: New file.
3271 * mc-boot/Glibm.h: New file.
3272 * mc-boot/Glists.c: New file.
3273 * mc-boot/Glists.h: New file.
3274 * mc-boot/GmcComment.c: New file.
3275 * mc-boot/GmcComment.h: New file.
3276 * mc-boot/GmcComp.c: New file.
3277 * mc-boot/GmcComp.h: New file.
3278 * mc-boot/GmcDebug.c: New file.
3279 * mc-boot/GmcDebug.h: New file.
3280 * mc-boot/GmcError.c: New file.
3281 * mc-boot/GmcError.h: New file.
3282 * mc-boot/GmcFileName.c: New file.
3283 * mc-boot/GmcFileName.h: New file.
3284 * mc-boot/GmcLexBuf.c: New file.
3285 * mc-boot/GmcLexBuf.h: New file.
3286 * mc-boot/GmcMetaError.c: New file.
3287 * mc-boot/GmcMetaError.h: New file.
3288 * mc-boot/GmcOptions.c: New file.
3289 * mc-boot/GmcOptions.h: New file.
3290 * mc-boot/GmcPreprocess.c: New file.
3291 * mc-boot/GmcPreprocess.h: New file.
3292 * mc-boot/GmcPretty.c: New file.
3293 * mc-boot/GmcPretty.h: New file.
3294 * mc-boot/GmcPrintf.c: New file.
3295 * mc-boot/GmcPrintf.h: New file.
3296 * mc-boot/GmcQuiet.c: New file.
3297 * mc-boot/GmcQuiet.h: New file.
3298 * mc-boot/GmcReserved.c: New file.
3299 * mc-boot/GmcReserved.h: New file.
3300 * mc-boot/GmcSearch.c: New file.
3301 * mc-boot/GmcSearch.h: New file.
3302 * mc-boot/GmcStack.c: New file.
3303 * mc-boot/GmcStack.h: New file.
3304 * mc-boot/GmcStream.c: New file.
3305 * mc-boot/GmcStream.h: New file.
3306 * mc-boot/Gmcflex.h: New file.
3307 * mc-boot/Gmcp1.c: New file.
3308 * mc-boot/Gmcp1.h: New file.
3309 * mc-boot/Gmcp2.c: New file.
3310 * mc-boot/Gmcp2.h: New file.
3311 * mc-boot/Gmcp3.c: New file.
3312 * mc-boot/Gmcp3.h: New file.
3313 * mc-boot/Gmcp4.c: New file.
3314 * mc-boot/Gmcp4.h: New file.
3315 * mc-boot/Gmcp5.c: New file.
3316 * mc-boot/Gmcp5.h: New file.
3317 * mc-boot/GnameKey.c: New file.
3318 * mc-boot/GnameKey.h: New file.
3319 * mc-boot/Gpth.h: New file.
3320 * mc-boot/GsymbolKey.c: New file.
3321 * mc-boot/GsymbolKey.h: New file.
3322 * mc-boot/Gtermios.h: New file.
3323 * mc-boot/Gtop.c: New file.
3324 * mc-boot/Gvarargs.c: New file.
3325 * mc-boot/Gvarargs.h: New file.
3326 * mc-boot/Gwlists.c: New file.
3327 * mc-boot/Gwlists.h: New file.
3328 * mc-boot/Gwrapc.h: New file.
3329 * mc-boot/README: New file.
3330 * mc/Indexing.def: New file.
3331 * mc/Indexing.mod: New file.
3332 * mc/README: New file.
3333 * mc/alists.def: New file.
3334 * mc/alists.mod: New file.
3335 * mc/decl.def: New file.
3336 * mc/decl.mod: New file.
3337 * mc/decl.mod-extra: New file.
3338 * mc/keyc.def: New file.
3339 * mc/keyc.mod: New file.
3340 * mc/lists.def: New file.
3341 * mc/lists.mod: New file.
3342 * mc/m2flex.def: New file.
3343 * mc/mc.flex: New file.
3344 * mc/mcComment.def: New file.
3345 * mc/mcComment.h: New file.
3346 * mc/mcComment.mod: New file.
3347 * mc/mcComp.def: New file.
3348 * mc/mcComp.mod: New file.
3349 * mc/mcDebug.def: New file.
3350 * mc/mcDebug.mod: New file.
3351 * mc/mcError.def: New file.
3352 * mc/mcError.mod: New file.
3353 * mc/mcFileName.def: New file.
3354 * mc/mcFileName.mod: New file.
3355 * mc/mcLexBuf.def: New file.
3356 * mc/mcLexBuf.h: New file.
3357 * mc/mcLexBuf.mod: New file.
3358 * mc/mcMetaError.def: New file.
3359 * mc/mcMetaError.mod: New file.
3360 * mc/mcOptions.def: New file.
3361 * mc/mcOptions.mod: New file.
3362 * mc/mcPreprocess.def: New file.
3363 * mc/mcPreprocess.mod: New file.
3364 * mc/mcPretty.def: New file.
3365 * mc/mcPretty.mod: New file.
3366 * mc/mcPrintf.def: New file.
3367 * mc/mcPrintf.mod: New file.
3368 * mc/mcQuiet.def: New file.
3369 * mc/mcQuiet.mod: New file.
3370 * mc/mcReserved.def: New file.
3371 * mc/mcReserved.h: New file.
3372 * mc/mcReserved.mod: New file.
3373 * mc/mcSearch.def: New file.
3374 * mc/mcSearch.mod: New file.
3375 * mc/mcStack.def: New file.
3376 * mc/mcStack.mod: New file.
3377 * mc/mcStream.def: New file.
3378 * mc/mcStream.mod: New file.
3379 * mc/mcflex.def: New file.
3380 * mc/mcp1.bnf: New file.
3381 * mc/mcp1.def: New file.
3382 * mc/mcp2.bnf: New file.
3383 * mc/mcp2.def: New file.
3384 * mc/mcp3.bnf: New file.
3385 * mc/mcp3.def: New file.
3386 * mc/mcp4.bnf: New file.
3387 * mc/mcp4.def: New file.
3388 * mc/mcp5.bnf: New file.
3389 * mc/mcp5.def: New file.
3390 * mc/nameKey.def: New file.
3391 * mc/nameKey.mod: New file.
3392 * mc/symbolKey.def: New file.
3393 * mc/symbolKey.mod: New file.
3394 * mc/top.mod: New file.
3395 * mc/varargs.def: New file.
3396 * mc/varargs.mod: New file.
3397 * mc/wlists.def: New file.
3398 * mc/wlists.mod: New file.
3399 * pge-boot/GASCII.c: New file.
3400 * pge-boot/GASCII.h: New file.
3401 * pge-boot/GArgs.c: New file.
3402 * pge-boot/GArgs.h: New file.
3403 * pge-boot/GAssertion.c: New file.
3404 * pge-boot/GAssertion.h: New file.
3405 * pge-boot/GBreak.h: New file.
3406 * pge-boot/GBuiltins.c: New file.
3407 * pge-boot/GCmdArgs.h: New file.
3408 * pge-boot/GDebug.c: New file.
3409 * pge-boot/GDebug.h: New file.
3410 * pge-boot/GDynamicStrings.c: New file.
3411 * pge-boot/GDynamicStrings.h: New file.
3412 * pge-boot/GEnvironment.h: New file.
3413 * pge-boot/GFIO.c: New file.
3414 * pge-boot/GFIO.h: New file.
3415 * pge-boot/GFormatStrings.h: New file.
3416 * pge-boot/GFpuIO.h: New file.
3417 * pge-boot/GIO.c: New file.
3418 * pge-boot/GIO.h: New file.
3419 * pge-boot/GIndexing.c: New file.
3420 * pge-boot/GIndexing.h: New file.
3421 * pge-boot/GLists.c: New file.
3422 * pge-boot/GLists.h: New file.
3423 * pge-boot/GM2Dependent.c: New file.
3424 * pge-boot/GM2Dependent.h: New file.
3425 * pge-boot/GM2EXCEPTION.c: New file.
3426 * pge-boot/GM2EXCEPTION.h: New file.
3427 * pge-boot/GM2LINK.c: New file.
3428 * pge-boot/GM2LINK.h: New file.
3429 * pge-boot/GM2RTS.c: New file.
3430 * pge-boot/GM2RTS.h: New file.
3431 * pge-boot/GNameKey.c: New file.
3432 * pge-boot/GNameKey.h: New file.
3433 * pge-boot/GNumberIO.c: New file.
3434 * pge-boot/GNumberIO.h: New file.
3435 * pge-boot/GOutput.c: New file.
3436 * pge-boot/GOutput.h: New file.
3437 * pge-boot/GPushBackInput.c: New file.
3438 * pge-boot/GPushBackInput.h: New file.
3439 * pge-boot/GRTExceptions.c: New file.
3440 * pge-boot/GRTExceptions.h: New file.
3441 * pge-boot/GRTco.c: New file.
3442 * pge-boot/GSArgs.h: New file.
3443 * pge-boot/GSEnvironment.h: New file.
3444 * pge-boot/GSFIO.c: New file.
3445 * pge-boot/GSFIO.h: New file.
3446 * pge-boot/GSYSTEM.c: New file.
3447 * pge-boot/GSYSTEM.h: New file.
3448 * pge-boot/GScan.h: New file.
3449 * pge-boot/GSelective.c: New file.
3450 * pge-boot/GStdIO.c: New file.
3451 * pge-boot/GStdIO.h: New file.
3452 * pge-boot/GStorage.c: New file.
3453 * pge-boot/GStorage.h: New file.
3454 * pge-boot/GStrCase.c: New file.
3455 * pge-boot/GStrCase.h: New file.
3456 * pge-boot/GStrIO.c: New file.
3457 * pge-boot/GStrIO.h: New file.
3458 * pge-boot/GStrLib.c: New file.
3459 * pge-boot/GStrLib.h: New file.
3460 * pge-boot/GStringConvert.h: New file.
3461 * pge-boot/GSymbolKey.c: New file.
3462 * pge-boot/GSymbolKey.h: New file.
3463 * pge-boot/GSysExceptions.c: New file.
3464 * pge-boot/GSysExceptions.h: New file.
3465 * pge-boot/GSysStorage.c: New file.
3466 * pge-boot/GSysStorage.h: New file.
3467 * pge-boot/GTimeString.h: New file.
3468 * pge-boot/GUnixArgs.cc: New file.
3469 * pge-boot/GUnixArgs.h: New file.
3470 * pge-boot/Gabort.c: New file.
3471 * pge-boot/Gbnflex.c: New file.
3472 * pge-boot/Gbnflex.h: New file.
3473 * pge-boot/Gcbuiltin.c: New file.
3474 * pge-boot/Gdtoa.c: New file.
3475 * pge-boot/Gdtoa.h: New file.
3476 * pge-boot/Gerrno.c: New file.
3477 * pge-boot/Gerrno.h: New file.
3478 * pge-boot/Gldtoa.c: New file.
3479 * pge-boot/Gldtoa.h: New file.
3480 * pge-boot/Glibc.c: New file.
3481 * pge-boot/Glibc.h: New file.
3482 * pge-boot/Glibm.c: New file.
3483 * pge-boot/Glibm.h: New file.
3484 * pge-boot/Gmcrts.c: New file.
3485 * pge-boot/Gmcrts.h: New file.
3486 * pge-boot/Gnetwork.h: New file.
3487 * pge-boot/Gpge.c: New file.
3488 * pge-boot/Gtermios.cc: New file.
3489 * pge-boot/Gtermios.h: New file.
3490 * pge-boot/Gwrapc.c: New file.
3491 * pge-boot/Gwrapc.h: New file.
3492 * pge-boot/README: New file.
3493 * pge-boot/m2rts.h: New file.
3494 * pge-boot/main.c: New file.
3495 * pge-boot/network.c: New file.
3496 * plugin/README: New file.
3497 * plugin/m2rte.cc: New file.
3498 * tools-src/README: New file.
3499 * tools-src/boilerplate.py: New file.
3500 * tools-src/buildpg: New file.
3501 * tools-src/calcpath: New file.
3502 * tools-src/def2doc.py: New file.
3503 * tools-src/makeSystem: New file.
3504 * tools-src/mklink.c: New file.
3505 * tools-src/tidydates.py: New file.
3506 * images/LICENSE.IMG: New file.
3507 * images/gnupng: New file.
3508 * images/gnu.eps: New file.
3509 * version.c: New file.
3510 * configure: Rebuilt.
3511 * target-independent/Builtins.texi: New file.
3512 * target-independent/SYSTEM-iso.texi: New file.
3513 * target-independent/SYSTEM-pim.texi: New file.
3514 * target-independent/gm2-libs.texi: New file.
3515 * target-independent/readme.txt: New file.