1 2023-08-01 Gaius Mulley <gaiusmod2@gmail.com>
4 * gm2-compiler/M2Check.mod (checkProcTypeEquivalence): New
6 (checkTypeKindEquivalence): Call checkProcTypeEquivalence
7 if either left or right is a proc type.
8 * gm2-compiler/M2Quads.mod (BuildRelOp): Create
9 combinedTok prior to creating the range check quadruple.
10 Use combinedTok when creating the range check quadruple.
12 2023-08-01 Gaius Mulley <gaiusmod2@gmail.com>
15 * gm2-compiler/M2Quads.mod (BuildDesignatorArray):
16 Rename t as type and d as dim. New variable result.
17 Allow constants of an array type to be indexed.
19 2023-07-25 Gaius Mulley <gaiusmod2@gmail.com>
22 * gm2-compiler/M2GCCDeclare.def (PromoteToCString): New procedure
24 * gm2-compiler/M2GCCDeclare.mod (PromoteToCString): New procedure
26 * gm2-compiler/M2GenGCC.mod (BuildTreeFromInterface): Call
27 skip_const_decl before chaining the parameter value.
28 Use PromoteToCString to ensure the string is nul terminated.
29 (CodeInline): Remove all parameters and replace with quad.
30 Use GetQuadOtok to get operand token numbers.
31 Remove call to DeclareConstant and replace it with PromoteToCString.
32 * gm2-compiler/M2Quads.def (BuildInline): Rename into ...
34 * gm2-compiler/M2Quads.mod: (BuildInline): Rename into ...
36 (BuildAsmElement): Add debugging.
37 * gm2-compiler/P1Build.bnf: Remove import of BuildInline.
38 * gm2-compiler/P2Build.bnf: Remove import of BuildInline.
39 * gm2-compiler/P3Build.bnf: Remove import of BuildInline and
41 * gm2-compiler/PHBuild.bnf: Remove import of BuildInline.
42 * gm2-libs-iso/SysClock.mod (foo): Remove.
43 * gm2-libs/FIO.mod (BufferedRead): Rename parameter a to dest.
44 Rename variable t to src.
45 * m2pp.cc (pf): Correct block comment.
46 (pe): Correct block comment.
47 (m2pp_asm_expr): New function.
48 (m2pp_statement): Call m2pp_asm_expr.
50 2023-07-22 Gaius Mulley <gaiusmod2@gmail.com>
53 * gm2-libs/FIO.def (ReadAny): Correct comment as
54 HIGH (a) + 1 is number of bytes.
55 (WriteAny): Correct comment as HIGH (a) + 1 is number of
57 * gm2-libs/FIO.mod (ReadAny): Correct comment as
58 HIGH (a) + 1 is number of bytes. Also pass HIGH (a) + 1
60 (WriteAny): Correct comment as HIGH (a) + 1 is number of
61 bytes. Also pass HIGH (a) + 1 to BufferedWrite.
62 (BufferedWrite): Rename parameter a to src, rename variable
63 t to dest. Correct parameter order to memcpy.
65 2023-07-20 Gaius Mulley <gaiusmod2@gmail.com>
67 * gm2-compiler/M2SymInit.mod (IsExempt): Remove parameter exemption.
68 (CheckIndrX): Call SetupLAlias between lhs and content.
69 (trashParam): Re-write.
70 (SetVarLRInitialized): Indicate shadow and heap are initialized.
71 Call SetupIndr between shadow and heap.
72 * gm2-compiler/P2SymBuild.mod: Import
73 PutProcedureParameterHeapVars.
74 (EndBuildProcedure): Call PutProcedureParameterHeapVars.
75 * gm2-compiler/SymbolTable.def (GetParameterHeapVar): New
77 (PutProcedureParameterHeapVars): New procedure function.
78 * gm2-compiler/SymbolTable.mod (MakeParameterHeapVar): New
80 (GetParameterHeapVar): New procedure function.
81 (PuttParameterHeapVar): New procedure function.
82 (PutProcedureParameterHeapVars): New procedure.
83 (VarParam): HeapVar new record field.
84 (PutVarParam): HeapVar assigned to NulSym.
86 2023-07-19 Gaius Mulley <gaiusmod2@gmail.com>
89 * Make-lang.in (m2_OBJS): Add m2/gm2-gcc/rtegraph.o and
90 m2/gm2-compiler-boot/m2flex.o.
91 (c-family/m2pp.o): Remove.
92 * Make-maintainer.in (c-family/m2pp.o): Add.
94 2023-07-19 Gaius Mulley <gaiusmod2@gmail.com>
96 * gm2-compiler/M2Quads.mod (BuildDifAdrFunction): Removed
97 unnecessary in error message. Use vartok for location.
98 (BuildOddFunction): Use optok for location.
99 (BuildAbsFunction): Use vartok for location. Bugfix set vartok.
100 (BuildCapFunction): Use optok for location.
101 (BuildOrdFunction): Use optok for location and correct format
103 (BuildShiftFunction): Use vartok for location.
104 (BuildRotateFunction): Use vartok for location.
105 (BuildTruncFunction): Use vartok for location.
106 (BuildFloatFunction): Use vartok for location.
107 (BuildReFunction): Use vartok for location.
108 (BuildImFunction): Use vartok for location.
109 * gm2-compiler/M2SymInit.mod (trashParam): Remove commented code.
111 2023-07-19 Gaius Mulley <gaiusmod2@gmail.com>
113 * gm2-compiler/M2Quads.mod (BuildRealFuncProcCall): Set the trash
114 parameter value to NIL if DEALLOCATE is detected.
115 * gm2-compiler/M2SymInit.mod (CheckDeferredRecordAccess): Pass
116 tok to SetVarInitialized. Pass tok to GetVarComponentInitialized.
117 (ComponentFindVar): Add tok parameter. Check aliased pointer
118 against Nil and generate warning if necessary.
119 (deRefComponent): Add tok and sym parameters and pass them to
121 (SetVarComponentInitialized): Add tok parameter. Pass tok to
122 ComponentFindVar. Pass tok and sym to deRefComponent.
123 (GetVarComponentInitialized): Add tok parameter. Pass tok to
124 ComponentFindVar. Pass tok to deRefComponent.
125 (SetVarInitialized): Add tok parameter. Pass tok to
126 SetVarComponentInitialized.
127 (doGetVarInitialized): Add tok parameter. Pass tok to
128 GetVarComponentInitialized.
129 (CheckXIndr): Pass lhs and lhstok to getContent.
130 (CheckIndrX): Pass rhs and rhstok to getContent.
131 (CheckBecomes): Pass destok to ComponentFindVar. Pass des and
132 destok to deRefComponent.
133 (CheckAddr): Pass contenttok to GetVarInitialized. Pass ptrtok
134 to SetVarInitialized.
135 (CheckReadBeforeInitQuad): Pass op1tok to SetVarInitialized for
136 op1 cases and op3tok for op3 cases.
137 (trashParam): Get operand tokens. Pass op3tok to
138 SetVarInitialized. Pass op3 and op3tok to getContent.
139 Alias ptr to NIL if procedure is DEALLOCATE. Pass op3tok to
141 (IsDeallocate): New procedure function.
142 (DetectTrash): Use IsDeallocate.
143 (SetupLAlias): Allow exp to be Nil.
144 (getContent): Generate warning message if ptr is Nil.
146 2023-07-18 Gaius Mulley <gaiusmod2@gmail.com>
148 * Make-lang.in: Minor formatting change.
149 * gm2-compiler/M2GCCDeclare.mod
150 (DeclareUnboundedProcedureParameters): Rename local variables.
151 (WalkUnboundedProcedureParameters): Rename local variables.
152 (DoVariableDeclaration): Avoid declaration of a variable if
153 it is on the heap (used by static analysis only).
154 * gm2-compiler/M2GenGCC.mod: Formatting.
155 * gm2-compiler/M2Quads.def (GetQuadTrash): New procedure function.
156 * gm2-compiler/M2Quads.mod (GetQuadTrash): New procedure function.
157 (QuadFrame): Add Trash field.
158 (BuildRealFuncProcCall): Detect ALLOCATE and DEALLOCATE and create
159 a heap variable for parameter 1 saving it as the trashed variable
161 (GenQuadOTrash): New procedure.
162 (DisplayQuadRange): Bugfix. Write the scope number.
163 * gm2-compiler/M2SymInit.mod: Rewritten to separate LValue
164 equivalence from LValue to RValue pairings. Comprehensive
165 detection of variant record implemented. Allow dereferencing
166 of pointers through LValue/RValue chains.
167 * gm2-compiler/SymbolTable.def (PutVarHeap): New procedure.
168 (IsVarHeap): New procedure function.
169 (ForeachParamSymDo): New procedure.
170 * gm2-compiler/SymbolTable.mod (PutVarHeap): New procedure.
171 (IsVarHeap): New procedure function.
172 (ForeachParamSymDo): New procedure.
173 (MakeVariableForParam): Reformatted.
174 (CheckForUnknownInModule): Reformatted.
175 (SymVar): Add field Heap.
176 (MakeVar): Assign Heap to FALSE.
178 2023-07-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
180 * Make-lang.in (m2/boot-bin/mklink$(exeext)): Add $(LDFLAGS).
182 2023-07-11 Gaius Mulley <gaiusmod2@gmail.com>
184 * gm2-compiler/M2BasicBlock.def (InitBasicBlocksFromRange): New
186 * gm2-compiler/M2BasicBlock.mod (ConvertQuads2BasicBlock): New
188 (InitBasicBlocksFromRange): New parameter ScopeSym. Call
189 ConvertQuads2BasicBlock with ScopeSym.
190 (DisplayBasicBlocks): Uncomment.
191 * gm2-compiler/M2Code.mod: Replace VariableAnalysis with
192 ScopeBlockVariableAnalysis.
193 (InitialDeclareAndOptiomize): Add parameter scope.
194 (SecondDeclareAndOptimize): Add parameter scope.
195 * gm2-compiler/M2GCCDeclare.mod (DeclareConstructor): Add scope
196 parameter to DeclareTypesConstantsProceduresInRange.
197 (DeclareTypesConstantsProceduresInRange): New parameter scope.
198 Pass scope to DisplayQuadRange. Reformatted.
199 * gm2-compiler/M2GenGCC.def (ConvertQuadsToTree): New parameter
201 * gm2-compiler/M2GenGCC.mod (ConvertQuadsToTree): New parameter
203 * gm2-compiler/M2Optimize.mod (KnownReachable): New parameter
205 * gm2-compiler/M2Options.def (SetUninitVariableChecking): Add
207 * gm2-compiler/M2Options.mod (SetUninitVariableChecking): Add
208 arg parameter and set boolean UninitVariableChecking and
209 UninitVariableConditionalChecking.
210 (UninitVariableConditionalChecking): New boolean set to FALSE.
211 * gm2-compiler/M2Quads.def (IsGoto): New procedure function.
212 (DisplayQuadRange): Add scope parameter.
213 (LoopAnalysis): Add scope parameter.
214 * gm2-compiler/M2Quads.mod: Import PutVarArrayRef.
215 (IsGoto): New procedure function.
216 (LoopAnalysis): Add scope parameter and use MetaErrorT1 instead
218 (BuildStaticArray): Call PutVarArrayRef.
219 (BuildDynamicArray): Call PutVarArrayRef.
220 (DisplayQuadRange): Add scope parameter.
221 (GetM2OperatorDesc): Add relational condition cases.
222 * gm2-compiler/M2Scope.def (ScopeProcedure): Add parameter.
223 * gm2-compiler/M2Scope.mod (DisplayScope): Pass scopeSym to
225 (ForeachScopeBlockDo): Pass scopeSym to p.
226 * gm2-compiler/M2SymInit.def (VariableAnalysis): Rename to ...
227 (ScopeBlockVariableAnalysis): ... this.
228 * gm2-compiler/M2SymInit.mod (ScopeBlockVariableAnalysis): Add
230 (bbEntry): New pointer to record.
231 (bbArray): New array.
232 (bbFreeList): New variable.
233 (errorList): New list.
234 (IssueConditional): New procedure.
235 (GenerateNoteFlow): New procedure.
236 (IssueWarning): New procedure.
237 (IsUniqueWarning): New procedure.
238 (CheckDeferredRecordAccess): Re-implement.
239 (CheckBinary): Add warning and lst parameters.
240 (CheckUnary): Add warning and lst parameters.
241 (CheckXIndr): Add warning and lst parameters.
242 (CheckIndrX): Add warning and lst parameters.
243 (CheckBecomes): Add warning and lst parameters.
244 (CheckComparison): Add warning and lst parameters.
245 (CheckReadBeforeInitQuad): Add warning and lst parameters to all
246 Check procedures. Add all case quadruple clauses.
247 (FilterCheckReadBeforeInitQuad): Add warning and lst parameters.
248 (CheckReadBeforeInitFirstBasicBlock): Add warning and lst parameters.
249 (bbArrayKill): New procedure.
250 (DumpBBEntry): New procedure.
251 (DumpBBArray): New procedure.
252 (DumpBBSequence): New procedure.
253 (TestBBSequence): New procedure.
254 (CreateBBPermultations): New procedure.
255 (ScopeBlockVariableAnalysis): New procedure.
256 (GetOp3): New procedure.
257 (GenerateCFG): New procedure.
258 (NewEntry): New procedure.
259 (AppendEntry): New procedure.
260 (init): Initialize bbFreeList and errorList.
261 * gm2-compiler/SymbolTable.def (PutVarArrayRef): New procedure.
262 (IsVarArrayRef): New procedure function.
263 * gm2-compiler/SymbolTable.mod (SymVar): ArrayRef new field.
264 (MakeVar): Set ArrayRef to FALSE.
265 (PutVarArrayRef): New procedure.
266 (IsVarArrayRef): New procedure function.
267 * gm2-gcc/init.cc (_M2_M2SymInit_init): New prototype.
268 (init_PerCompilationInit): Add call to _M2_M2SymInit_init.
269 * gm2-gcc/m2options.h (M2Options_SetUninitVariableChecking):
271 * gm2-lang.cc (gm2_langhook_handle_option): Add new case
272 OPT_Wuninit_variable_checking_.
273 * lang.opt: Wuninit-variable-checking= new entry.
275 2023-07-03 Gaius Mulley <gaiusmod2@gmail.com>
278 * Make-lang.in (GM2-COMP-BOOT-DEFS): Add M2SymInit.def.
279 (GM2-COMP-BOOT-MODS): Add M2SymInit.mod.
280 * gm2-compiler/M2BasicBlock.mod: Formatting changes.
281 * gm2-compiler/M2Code.mod: Remove import of VariableAnalysis from
282 M2Quads. Import VariableAnalysis from M2SymInit.mod.
283 * gm2-compiler/M2GCCDeclare.mod (PrintVerboseFromList):
284 Add debugging print for a component.
285 (TypeConstFullyDeclared): Call RememberType for every type.
286 * gm2-compiler/M2GenGCC.mod (CodeReturnValue): Add parameter to
288 (CodeBecomes): Add parameter to GetQuadOtok.
289 (CodeXIndr): Add parameter to GetQuadOtok.
290 * gm2-compiler/M2Optimize.mod (ReduceBranch): Reformat and
291 preserve operand token positions when reducing the branch
293 (ReduceGoto): Reformat.
294 (FoldMultipleGoto): Reformat.
295 (KnownReachable): Reformat.
296 * gm2-compiler/M2Options.def (UninitVariableChecking): New
297 variable declared and exported.
298 (SetUninitVariableChecking): New procedure.
299 * gm2-compiler/M2Options.mod (SetWall): Set
300 UninitVariableChecking.
301 (SetUninitVariableChecking): New procedure.
302 * gm2-compiler/M2Quads.def (PutQuadOtok): Exported and declared.
303 (VariableAnalysis): Removed.
304 * gm2-compiler/M2Quads.mod (PutQuadOtok): New procedure.
305 (doVal): Reformatted.
306 (MarkAsWrite): Reformatted.
307 (MarkArrayAsWritten): Reformatted.
308 (doIndrX): Use PutQuadOtok.
309 (MakeRightValue): Use GenQuadOtok.
310 (MakeLeftValue): Use GenQuadOtok.
311 (CheckReadBeforeInitialized): Remove.
312 (IsNeverAltered): Reformat.
313 (DebugLocation): New procedure.
314 (BuildDesignatorPointer): Use GenQuadO to preserve operand token
316 (BuildRelOp): Use GenQuadOtok ditto.
317 * gm2-compiler/SymbolTable.def (VarCheckReadInit): New procedure.
318 (VarInitState): New procedure.
319 (PutVarInitialized): New procedure.
320 (PutVarFieldInitialized): New procedure function.
321 (GetVarFieldInitialized): New procedure function.
322 (PrintInitialized): New procedure.
323 * gm2-compiler/SymbolTable.mod (VarCheckReadInit): New procedure.
324 (VarInitState): New procedure.
325 (PutVarInitialized): New procedure.
326 (PutVarFieldInitialized): New procedure function.
327 (GetVarFieldInitialized): New procedure function.
328 (PrintInitialized): New procedure.
329 (LRInitDesc): New type.
330 (SymVar): InitState new field.
331 (MakeVar): Initialize InitState.
332 * gm2-gcc/m2options.h (M2Options_SetUninitVariableChecking):
333 New function declaration.
334 * gm2-lang.cc (gm2_langhook_handle_option): Detect
335 OPT_Wuninit_variable_checking and call SetUninitVariableChecking.
336 * lang.opt: Add Wuninit-variable-checking.
337 * gm2-compiler/M2SymInit.def: New file.
338 * gm2-compiler/M2SymInit.mod: New file.
340 2023-06-30 Iain Sandoe <iain@sandoe.co.uk>
343 * gm2-libs/RTint.mod: Do not use NIL timeout setting on select,
344 test failures sequentially, finishing on the first success.
346 2023-06-18 Gaius Mulley <gaiusmod2@gmail.com>
349 * Make-lang.in (m2_OBJS): Assign $(GM2_C_OBJS).
350 (GM2_C_OBJS): Remove m2/stor-layout.o.
351 (m2/stor-layout.o): Remove rule.
352 * gm2-gcc/gcc-consolidation.h (rtl.h): Remove include.
353 (df.h): Remove include.
354 (except.h): Remove include.
356 2023-06-15 Marek Polacek <polacek@redhat.com>
358 * Make-lang.in: New var, GM2_PICFLAGS. Use it.
360 2023-06-13 Gaius Mulley <gaiusmod2@gmail.com>
362 * Make-lang.in (check-format-error): New rule.
363 * gm2-compiler/M2MetaError.mod (op): Add calls InternalError if
365 * gm2-compiler/M2Quads.mod (BuildForToByDo): Bugfix to format
367 (BuildLengthFunction): Bugfix to format specifiers.
368 (BuildOddFunction): Bugfix to format specifiers.
369 (BuildAbsFunction): Bugfix to format specifiers.
370 (BuildCapFunction): Bugfix to format specifiers.
371 (BuildChrFunction): Bugfix to format specifiers.
372 (BuildOrdFunction): Bugfix to format specifiers.
373 (BuildMakeAdrFunction): Bugfix to format specifiers.
374 (BuildSizeFunction): Bugfix to format specifiers.
375 (BuildBitSizeFunction): Bugfix to format specifiers.
376 * tools-src/checkmeta.py: New file.
378 2023-06-12 Gaius Mulley <gaiusmod2@gmail.com>
381 * gm2-compiler/M2Quads.mod (BuildAbsFunction): Replace abort
383 (BuildValFunction): Replace abort format specifier.
384 (BuildCastFunction): Replace abort format specifier.
385 (BuildMinFunction): Replace abort format specifier.
386 (BuildMaxFunction): Replace abort format specifier.
387 (BuildTruncFunction): Replace abort format specifier.
388 * gm2-compiler/P3Build.bnf (Pass1): Remove.
392 (AsmStatement): Remove Pass3.
393 (AsmOperands): Remove Pass3.
394 (AsmOperandSpec): Remove Pass3.
395 (AsmInputElement): Remove Pass3.
396 (AsmOutputElement): Remove Pass3.
397 (AsmTrashList): Remove Pass3.
399 2023-06-12 Gaius Mulley <gaiusmod2@gmail.com>
402 * gm2-compiler/M2Quads.def (BuildAsmElement): Remove
404 (BuildAsmTrash): New procedure.
405 * gm2-compiler/M2Quads.mod (BuildAsmTrash): New procedure.
406 (BuildAsmElement): Remove trash parameter.
407 * gm2-compiler/P3Build.bnf (AsmTrashList): Rewrite.
409 2023-06-08 Gaius Mulley <gaiusmod2@gmail.com>
412 * gm2-compiler/M2GenGCC.mod (BuildTreeFromInterface): Remove
413 tokenno parameter. Use object tok instead of tokenno.
414 (BuildTrashTreeFromInterface): Use object tok instead of
416 (CodeInline): Remove tokenno from parameter list to BuildTreeFromInterface.
417 * gm2-compiler/M2Quads.def (BuildAsmElement): Exported and
419 * gm2-compiler/M2Quads.mod (BuildOptimizeOff): Reformatted.
420 (BuildInline): Reformatted.
421 (BuildLineNo): Reformatted.
422 (UseLineNote): Reformatted.
423 (BuildAsmElement): New procedure.
424 * gm2-compiler/P0SyntaxCheck.bnf (AsmOperands): Use
425 ConstExpression instead of string.
426 (AsmElement): Use ConstExpression instead of string.
427 (TrashList): Use ConstExpression instead of string.
428 * gm2-compiler/P1Build.bnf (AsmOperands): Use
429 ConstExpression instead of string.
430 (AsmElement): Use ConstExpression instead of string.
431 (TrashList): Use ConstExpression instead of string.
432 * gm2-compiler/P2Build.bnf (AsmOperands): Use
433 ConstExpression instead of string.
434 (AsmElement): Use ConstExpression instead of string.
435 (TrashList): Use ConstExpression instead of string.
436 * gm2-compiler/P3Build.bnf (AsmOperands): Rewrite.
437 (AsmOperandSpec): Rewrite.
438 (AsmOutputList): New rule.
439 (AsmInputList): New rule.
440 (TrashList): Rewrite.
441 * gm2-compiler/PCBuild.bnf (AsmOperands): Use
442 ConstExpression instead of string.
443 (AsmElement): Use ConstExpression instead of string.
444 (TrashList): Use ConstExpression instead of string.
445 * gm2-compiler/PHBuild.bnf (AsmOperands): Use
446 ConstExpression instead of string.
447 (AsmElement): Use ConstExpression instead of string.
448 (TrashList): Use ConstExpression instead of string.
449 * gm2-compiler/SymbolTable.def (PutRegInterface):
451 (GetRegInterface): Rewrite interface.
452 * gm2-compiler/SymbolTable.mod (SetFirstUsed): New procedure.
453 (PutFirstUsed): New procedure.
454 (PutRegInterface): Rewrite.
455 (GetRegInterface): Rewrite.
457 2023-06-07 Jakub Jelinek <jakub@redhat.com>
459 * Make-lang.in: Build $(generated_files) before building
462 2023-06-07 Gaius Mulley <gaiusmod2@gmail.com>
465 * gm2-compiler/SymbolKey.mod (SearchAndDo): Reformatted.
466 (ForeachNodeDo): Reformatted.
467 * gm2-compiler/SymbolTable.mod (AddListify): Join list
468 with "," or "and" if more than one word is in the list.
469 * m2.flex: Remove -1 from atoi(yytext) line number.
471 2023-06-03 Gaius Mulley <gaiusmod2@gmail.com>
474 * gm2-compiler/P2SymBuild.mod (GetParameterShadowVar): Import.
475 (CheckFormalParameterSection): Call PutDeclared for the shadow
476 variable associated with the parameter.
478 2023-05-24 Gaius Mulley <gaiusmod2@gmail.com>
481 * Make-maintainer.in: Change header to include emacs file mode.
482 * gm2-compiler/M2GenGCC.mod (BuildHighFromChar): Check whether
483 operand is a constant string and is nul terminated then return one.
484 * gm2-compiler/PCSymBuild.mod (WalkFunction): Add default return
485 TRUE. Static analysis missing return path fix.
486 * gm2-libs/IO.mod (Init): Rewrite to help static analysis.
487 * target-independent/m2/gm2-libs.texi: Rebuild.
489 2023-05-19 Gaius Mulley <gaiusmod2@gmail.com>
492 * gm2-libs-iso/Strings.mod (Delete): Re-implement.
494 2023-05-18 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
496 * gm2-gcc/m2builtins.cc (doradix): Use _P defines from tree.h.
498 (doexponentmin): Ditto.
499 (doexponentmax): Ditto.
502 (dogUnderflow): Ditto.
503 * gm2-gcc/m2convert.cc (unsafe_conversion_p): Ditto.
504 * gm2-gcc/m2expr.cc (m2expr_build_unary_op_check): Ditto.
505 (m2expr_build_binary_op_check): Ditto.
506 * gm2-gcc/m2tree.cc (m2tree_is_var): Ditto.
507 * gm2-gcc/m2treelib.cc (build_modify_expr): Ditto.
508 * gm2-gcc/m2type.cc (gm2_finish_decl): Ditto.
509 * m2pp.cc (hextree): Ditto.
510 (m2pp_call_expr): Ditto.
512 2023-05-17 Gaius Mulley <gaiusmod2@gmail.com>
514 * gm2-libs-iso/LongWholeIO.mod (WriteInt): Only request a
515 sign if the value is < 0.
516 * gm2-libs-iso/ShortWholeIO.mod (WriteInt): Only request a
517 sign if the value is < 0.
518 * gm2-libs-iso/WholeIO.mod (WriteInt): Only request a sign
520 * gm2-libs-iso/WholeStr.mod (WriteInt): Only request a sign
523 2023-05-16 Gaius Mulley <gaiusmod2@gmail.com>
526 * gm2-libs-iso/LongIO.mod (ReadReal): Call SkipSpaces.
527 * gm2-libs-iso/LongWholeIO.mod (ReadInt): Call SkipSpaces.
528 (ReadCard): Call SkipSpaces.
529 * gm2-libs-iso/RealIO.mod (ReadReal): Call SkipSpaces.
530 * gm2-libs-iso/ShortWholeIO.mod: (ReadInt): Call SkipSpaces.
531 (ReadCard): Call SkipSpaces.
532 * gm2-libs-iso/TextIO.mod: Import SkipSpaces.
533 * gm2-libs-iso/WholeIO.mod (ReadInt): Call SkipSpaces.
534 (ReadCard): Call SkipSpaces.
535 * gm2-libs-iso/TextUtil.def: New file.
536 * gm2-libs-iso/TextUtil.mod: New file.
538 2023-05-16 Gaius Mulley <gaiusmod2@gmail.com>
541 * gm2-libs-coroutines/TimerHandler.mod (EnableLED): New constant.
542 (Timer): Test EnableLED before switching on the scroll LED.
544 2023-05-12 Gaius Mulley <gaiusmod2@gmail.com>
547 * gm2-libs-iso/SeqFile.mod (newCid): New parameter toAppend
548 used to select FIO.OpenForRandom.
549 (OpenRead): Pass extra parameter to newCid.
550 (OpenWrite): Pass extra parameter to newCid.
551 (OpenAppend): Pass extra parameter to newCid.
553 2023-05-11 Gaius Mulley <gaiusmod2@gmail.com>
556 * gm2-compiler/M2ALU.mod (ConvertConstToType): Use
557 PrepareCopyString in place of DoCopyString.
558 * gm2-compiler/M2GenGCC.def (DoCopyString): Rename to ...
559 (PrepareCopyString): ... this.
560 * gm2-compiler/M2GenGCC.mod (CodeStatement): Call CodeReturnValue
561 with a single parameter. Call CodeXIndr with a single parameter.
562 (CodeReturnValue): Remove parameters and replace with a single
563 quadno. Reimplement using PrepareCopyString. Issue error
564 if the string exceeds designator space.
565 (DoCopyString): Reimplement and rename to ...
566 (PrepareCopyString): ... this.
567 (CodeXIndr): Remove parameters and replace with a single
568 quadno. Reimplement using PrepareCopyString. Issue error
569 if the string exceeds designator space.
570 (CodeBecomes): Remove parameters and replace with a single
571 quadno. Reimplement using PrepareCopyString. Issue error
572 if the string exceeds designator space.
573 * gm2-compiler/M2Quads.def (BuildReturn): Rename parameter to
575 * gm2-compiler/M2Quads.mod (BuildReturn): Rename parameter to
576 tokreturn. Rename tokno to tokcombined.
578 2023-05-09 Gaius Mulley <gaiusmod2@gmail.com>
581 * gm2-libs-iso/RTgen.mod (doLook): Remove old.
582 Remove re-assignment of result.
583 * gm2-libs-iso/TextIO.mod (CanRead): Rename into ...
584 (CharAvailable): ... this.
585 (DumpState): New procedure.
586 (SetResult): Rename as SetNul.
587 (WasGoodChar): Rename into ...
588 (EofOrEoln): ... this.
589 (SkipLine): Skip over the newline.
590 (ReadString): Flip THEN ELSE statements after testing for
592 (ReadRestLine): Flip THEN ELSE statements after testing for
595 2023-05-04 Gaius Mulley <gaiusmod2@gmail.com>
598 * gm2-compiler/M2GenGCC.mod (CodeStatement): Detect
599 ArithAddOp and call CodeAddChecked.
600 (ResolveConstantExpressions): Detect ArithAddOp and call
602 (FoldArithAdd): New procedure.
603 (FoldAdd): Refactor to use FoldArithAdd.
604 * gm2-compiler/M2Quads.def (QuadOperator): Add ArithAddOp.
605 * gm2-compiler/M2Quads.mod: Remove commented imports.
606 (QuadFrame): Changed comments to use GNU coding standards.
607 (ArithPlusTok): New global variable.
608 (BuildForToByDo): Use ArithPlusTok instead of PlusTok.
609 (MakeOp): Detect ArithPlusTok and return ArithAddOp.
610 (WriteQuad): Add ArithAddOp clause.
611 (WriteOperator): Add ArithAddOp clause.
612 (Init): Initialize ArithPlusTok.
614 2023-05-04 Gaius Mulley <gaiusmod2@gmail.com>
617 * Make-lang.in (MC-LIB-DEFS): Remove M2LINK.def.
618 (BUILD-PGE-O): Remove GM2LINK.o.
619 * Make-maintainer.in (PPG-DEFS): New define.
620 (PPG-LIB-DEFS): Remove M2LINK.def.
621 (BUILD-BOOT-PPG-H): Add PPGDEF .h files.
622 (m2/ppg$(exeext)): Remove M2LINK.o
623 (PGE-DEPS): New define.
624 (m2/pg$(exeext)): Remove M2LINK.o.
625 (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Add -Im2/gm2-pge-boot.
626 (m2/pge$(exeext)): Remove M2LINK.o.
627 (pge-maintainer): Re-implement.
628 (pge-libs-push): Re-implement.
629 (m2/m2obj3/cc1gm2$(exeext)): Remove M2LINK.o.
630 * gm2-libs/DynamicStrings.mod (writeAddress): Re-implement
632 * gm2-libs/M2Dependent.mod: Remove commented out imports.
633 * mc-boot/GDynamicStrings.cc: Rebuild.
634 * mc-boot/GFIO.cc: Rebuild.
635 * mc-boot/GFormatStrings.cc: Rebuild.
636 * mc-boot/GM2Dependent.cc: Rebuild.
637 * mc-boot/GM2Dependent.h: Rebuild.
638 * mc-boot/GM2RTS.cc: Rebuild.
639 * mc-boot/GM2RTS.h: Rebuild.
640 * mc-boot/GRTExceptions.cc: Rebuild.
641 * mc-boot/GRTint.cc: Rebuild.
642 * mc-boot/GSFIO.cc: Rebuild.
643 * mc-boot/GStringConvert.cc: Rebuild.
644 * mc-boot/Gdecl.cc: Rebuild.
645 * pge-boot/GASCII.cc: Rebuild.
646 * pge-boot/GASCII.h: Rebuild.
647 * pge-boot/GArgs.cc: Rebuild.
648 * pge-boot/GArgs.h: Rebuild.
649 * pge-boot/GAssertion.cc: Rebuild.
650 * pge-boot/GAssertion.h: Rebuild.
651 * pge-boot/GBreak.h: Rebuild.
652 * pge-boot/GCmdArgs.h: Rebuild.
653 * pge-boot/GDebug.cc: Rebuild.
654 * pge-boot/GDebug.h: Rebuild.
655 * pge-boot/GDynamicStrings.cc: Rebuild.
656 * pge-boot/GDynamicStrings.h: Rebuild.
657 * pge-boot/GEnvironment.h: Rebuild.
658 * pge-boot/GFIO.cc: Rebuild.
659 * pge-boot/GFIO.h: Rebuild.
660 * pge-boot/GFormatStrings.h:: Rebuild.
661 * pge-boot/GFpuIO.h:: Rebuild.
662 * pge-boot/GIO.cc: Rebuild.
663 * pge-boot/GIO.h: Rebuild.
664 * pge-boot/GIndexing.cc: Rebuild.
665 * pge-boot/GIndexing.h: Rebuild.
666 * pge-boot/GLists.cc: Rebuild.
667 * pge-boot/GLists.h: Rebuild.
668 * pge-boot/GM2Dependent.cc: Rebuild.
669 * pge-boot/GM2Dependent.h: Rebuild.
670 * pge-boot/GM2EXCEPTION.cc: Rebuild.
671 * pge-boot/GM2EXCEPTION.h: Rebuild.
672 * pge-boot/GM2RTS.cc: Rebuild.
673 * pge-boot/GM2RTS.h: Rebuild.
674 * pge-boot/GNameKey.cc: Rebuild.
675 * pge-boot/GNameKey.h: Rebuild.
676 * pge-boot/GNumberIO.cc: Rebuild.
677 * pge-boot/GNumberIO.h: Rebuild.
678 * pge-boot/GOutput.cc: Rebuild.
679 * pge-boot/GOutput.h: Rebuild.
680 * pge-boot/GPushBackInput.cc: Rebuild.
681 * pge-boot/GPushBackInput.h: Rebuild.
682 * pge-boot/GRTExceptions.cc: Rebuild.
683 * pge-boot/GRTExceptions.h: Rebuild.
684 * pge-boot/GSArgs.h: Rebuild.
685 * pge-boot/GSEnvironment.h: Rebuild.
686 * pge-boot/GSFIO.cc: Rebuild.
687 * pge-boot/GSFIO.h: Rebuild.
688 * pge-boot/GSYSTEM.h: Rebuild.
689 * pge-boot/GScan.h: Rebuild.
690 * pge-boot/GStdIO.cc: Rebuild.
691 * pge-boot/GStdIO.h: Rebuild.
692 * pge-boot/GStorage.cc: Rebuild.
693 * pge-boot/GStorage.h: Rebuild.
694 * pge-boot/GStrCase.cc: Rebuild.
695 * pge-boot/GStrCase.h: Rebuild.
696 * pge-boot/GStrIO.cc: Rebuild.
697 * pge-boot/GStrIO.h: Rebuild.
698 * pge-boot/GStrLib.cc: Rebuild.
699 * pge-boot/GStrLib.h: Rebuild.
700 * pge-boot/GStringConvert.h: Rebuild.
701 * pge-boot/GSymbolKey.cc: Rebuild.
702 * pge-boot/GSymbolKey.h: Rebuild.
703 * pge-boot/GSysExceptions.h: Rebuild.
704 * pge-boot/GSysStorage.cc: Rebuild.
705 * pge-boot/GSysStorage.h: Rebuild.
706 * pge-boot/GTimeString.h: Rebuild.
707 * pge-boot/GUnixArgs.h: Rebuild.
708 * pge-boot/Gbnflex.cc: Rebuild.
709 * pge-boot/Gbnflex.h: Rebuild.
710 * pge-boot/Gdtoa.h: Rebuild.
711 * pge-boot/Gerrno.h: Rebuild.
712 * pge-boot/Gldtoa.h: Rebuild.
713 * pge-boot/Glibc.h: Rebuild.
714 * pge-boot/Glibm.h: Rebuild.
715 * pge-boot/Gpge.cc: Rebuild.
716 * pge-boot/Gtermios.h: Rebuild.
717 * pge-boot/Gwrapc.h: Rebuild.
718 * mc-boot/GM2LINK.h: Removed.
719 * pge-boot/GM2LINK.cc: Removed.
720 * pge-boot/GM2LINK.h: Removed.
722 2023-04-30 Gaius Mulley <gaiusmod2@gmail.com>
724 * gm2-compiler/SymbolTable.mod (ConstLitPoolEntry): New
726 (ConstLitSym): New field RangeError.
727 (ConstLitPoolTree): New SymbolTree representing name to
729 (ConstLitArray): New dynamic array containing pointers
730 to a ConstLitPoolEntry.
731 (CreateConstLit): New procedure function.
732 (LookupConstLitPoolEntry): New procedure function.
733 (AddConstLitPoolEntry): New procedure function.
734 (MakeConstLit): Re-implemented to check the constant lit
735 pool before calling CreateConstLit.
736 * m2.flex: Add ability to decode binary constant literals.
738 2023-04-26 Gaius Mulley <gaiusmod2@gmail.com>
741 * gm2-compiler/M2ALU.mod (Less): Reformatted.
742 * gm2-compiler/SymbolTable.mod (DetermineSizeOfConstant): Remove
744 (ConstantStringExceedsZType): Import.
745 (GetConstLitType): Re-implement using ConstantStringExceedsZType.
746 * gm2-gcc/m2decl.cc (m2decl_DetermineSizeOfConstant): Remove.
747 (m2decl_ConstantStringExceedsZType): New function.
748 (m2decl_BuildConstLiteralNumber): Re-implement.
749 * gm2-gcc/m2decl.def (DetermineSizeOfConstant): Remove.
750 (ConstantStringExceedsZType): New function.
751 * gm2-gcc/m2decl.h (m2decl_DetermineSizeOfConstant): Remove.
752 (m2decl_ConstantStringExceedsZType): New function.
753 * gm2-gcc/m2expr.cc (append_digit): Remove.
754 (m2expr_interpret_integer): Remove.
755 (append_m2_digit): Remove.
756 (m2expr_StrToWideInt): New function.
757 (m2expr_interpret_m2_integer): Remove.
758 * gm2-gcc/m2expr.def (CheckConstStrZtypeRange): New function.
759 * gm2-gcc/m2expr.h (m2expr_StrToWideInt): New function.
760 * gm2-gcc/m2type.cc (build_m2_word64_type_node): New function.
761 (build_m2_ztype_node): New function.
762 (m2type_InitBaseTypes): Call build_m2_ztype_node.
763 * gm2-lang.cc (gm2_type_for_size): Re-write using early returns.
765 2023-04-21 Arsen Arsenović <arsen@aarsen.me>
767 * Make-lang.in: Remove references to $(P).
768 * Make-maintainer.in: Ditto.
770 2023-04-21 Gaius Mulley <gaiusmod2@gmail.com>
773 * gm2-gcc/m2tree.cc (m2tree_IsAConstant): Add (TREE_CODE
774 (t) == CONSTRUCTOR) to expression.
776 2023-04-13 Gaius Mulley <gaiusmod2@gmail.com>
779 * lang.opt: Fix typo "maybe" to "may be".
781 2023-04-13 Gaius Mulley <gaiusmod2@gmail.com>
783 * gm2-compiler/M2ALU.def (PopChar): New procedure function.
784 * gm2-compiler/M2ALU.mod (PopChar): New procedure function.
785 * gm2-compiler/M2GCCDeclare.mod (PromoteToString): Detect
786 a single constant char and build a C string.
787 * gm2-compiler/M2GenGCC.mod (IsConstStr): New procedure
789 (GetStr): New procedure function.
790 (FoldAdd): Use IsConstStr.
791 * gm2-compiler/M2Quads.mod: Formatting changes.
792 * gm2-gcc/m2expr.cc (m2expr_GetCstInteger): New function.
793 * gm2-gcc/m2expr.def (GetCstInteger): New procedure function.
794 * gm2-gcc/m2expr.h (m2expr_GetCstInteger): New prototype.
796 2023-04-05 Gaius Mulley <gaiusmod2@gmail.com>
799 * gm2-compiler/M2Base.def (Unbounded): Remove.
800 * gm2-compiler/M2Error.def (ErrorAbort0): Add noreturn
802 * gm2-compiler/M2Quads.mod (BuildInclProcedure): Correct
804 (BuildExceptProcedure): Correct error format string.
805 (BuildAdrFunction): Call PutWriteQuad when taking the
806 address of a variable.
807 * gm2-libs-ch/SysExceptions.c (_M2_SysExceptions_init): Add
809 * gm2-libs-ch/wrapc.c (_M2_wrapc_init): Add parameters.
810 * gm2-libs/DynamicStrings.mod (DumpStringInfo): Remove t.
811 (PopAllocationExemption): Remove f.
812 * gm2-libs/FIO.mod (BufferedWrite): Remove result.
813 * gm2-libs/FormatStrings.mod (Copy): Remove endpos and
815 (HandlePercent): Remove result.
816 * gm2-libs/Indexing.mod (RemoveIndiceFromIndex): Remove k.
817 * gm2-libs/M2Dependent.mod (CreateModule): Remove p0
819 (DumpModuleData): Remove mptr.
820 (ConstructModules): Remove nulp.
821 * gm2-libs/RTExceptions.mod (PopHandler): Remove i.
822 * gm2-libs/RTint.mod (Listen): Remove b4s, b4m, afs
824 * gm2-libs/SFIO.mod (ReadS): Remove c.
825 * gm2-libs/StringConvert.mod (doDecimalPlaces): Remove
828 2023-04-03 Gaius Mulley <gaiusmod2@gmail.com>
831 * gm2-compiler/M2GCCDeclare.mod (DoVariableDeclaration):
832 Remove second parameter module. Adjust all callers to
833 remove the second parameter.
834 * gm2-compiler/PHBuild.bnf (CheckAndInsert): Remove.
837 (PushQualident): Remove.
839 (ActualParameters): Remove.
841 2023-04-02 Gaius Mulley <gaiusmod2@gmail.com>
844 * Make-lang.in (GM2_O): Set to -O0.
845 (GM2_LIBS): Remove target libraries and replace with build libs.
846 (BUILD-LIBS): New declaration.
847 (m2/gm2-libs/libgm2.a): New rule.
848 (m2/gm2-libs/%.o): New rule.
849 (m2/gm2-libs/choosetemp.o): New rule.
850 * gm2-compiler/M2ColorString.mod (append): Use ADR rather than
852 * gm2-compiler/M2Comp.mod (Compile): Add qprintf messages for when
853 a source file is not found. Improve comments and formatting.
854 * gm2-libs-ch/cgetopt.c (cgetopt_cgetopt_long): Remove
855 ansi-decl.h. Add getopt.h.
856 (cgetopt_cgetopt_long_only): Change cgetopt_ to getopt_.
857 * gm2spec.cc (lang_specific_driver): Do not skip -fmod=.
860 2023-03-29 Gaius Mulley <gaiusmod2@gmail.com>
864 * gm2-compiler/M2FileName.mod (CalculateFileName): Simplified by
865 ensuring the extension contains the ".".
866 (CalculateStemName): Re-formatted.
867 (ExtractExtension): Re-formatted.
868 (ExtractModule): Re-formatted.
869 * gm2-compiler/M2Options.def (setdefextension): Add block comment.
870 (setmodextension): Add block comment. Re-formatted.
871 * gm2-compiler/M2Options.mod (setdefextension): Add block comment.
872 (setmodextension): Add block comment. Re-formatted.
873 * gm2-compiler/M2Search.mod (FindSourceDefFile): Use
875 (DefaultDefExt): New constant.
876 (DefaultModExt): New constant.
877 (FindSourceModFile): Use DefaultModExt.
878 * gm2-gcc/m2decl.cc (m2decl_DeclareKnownVariable): Correct
880 * gm2spec.cc (M2SOURCE): New constant.
881 (LANGSPEC): New value.
882 (MATHLIB): New value.
883 (WITHLIBC): New value.
884 (SKIPOPT): New value.
885 (lang_specific_driver): Replace seen_module_extension bool with
886 module_extension char *. Detect -fmod= and remember extension.
887 Use the extension to detect modula-2 source and mark it as such.
889 2023-03-23 Gaius Mulley <gaiusmod2@gmail.com>
892 * gm2-compiler/M2Quads.mod (BuildConstFunctionCall): Comment
893 out ErrorString in debugging block.
894 (BuildConstructorStart): Replace Assert with a call to
895 MetaErrorT3. Import MetaErrorT3.
896 * gm2-compiler/PCSymBuild.mod (buildConstFunction): Rename
898 (WalkFunctionParam): Remove test for IsEnumeration when
899 resolving MIN or MAX parameters.
900 * gm2-compiler/PHBuild.bnf (BlockAssert): New procedure.
901 (ErrorArrayat): New procedure.
902 (Expect): Renamed parameter t to tok.
903 (PushQualident): New rule.
904 (ConstSetOrQualidentOrFunction): Force AutoOn.
905 (TypeDeclaration): Add debugging assert.
906 (SimpleType): Add debugging assert.
907 (DefaultRecordAttributes): New rule (and bugfix).
908 (FieldPragmaExpression): New rule (and bugfix).
909 (PragmaConstExpression): New rule (and bugfix).
910 (SetOrDesignatorOrFunction): Add debugging assert.
911 (Block): Add debugging assert.
912 * gm2-gcc/m2expr.cc (m2expr_ConstantExpressionWarning): int
914 * gm2-gcc/m2expr.h (m2expr_TreeOverflow): int to bool.
915 (m2expr_GetBooleanTrue): Remove.
916 (m2expr_GetBooleanFalse): Remove.
917 * gm2-gcc/m2options.h (M2Options_SetStatistics): Replace
920 2023-03-22 Gaius Mulley <gaiusmod2@gmail.com>
923 * Make-lang.in (m2/pge-boot/%.o): Add CFLAGS and CXXFLAGS for C
925 * gm2spec.cc (add_m2_I_path): Indentation.
926 (lang_specific_driver): New variable seen_pathname.
927 Detect -fm2-pathname. If not seen then push_back_Ipath (".").
928 Change non iso library path to "m2cor,m2log,m2pim,m2iso".
930 2023-03-22 Gaius Mulley <gaiusmod2@gmail.com>
933 * Make-lang.in (m2/stage2/cc1gm2$(exeext)): Remove
934 m2/gm2-libs-boot/M2LINK.o.
935 (m2/stage1/cc1gm2$(exeext)): Ditto.
936 (GM2-LIBS-BOOT-DEFS): Remove M2LINK.def.
937 (GM2-LIBS-DEFS): Ditto.
938 (m2/mc-boot/$(SRC_PREFIX)%.o): Replace CXX_FLAGS with CXXFLAGS.
939 (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto.
940 (m2/mc-boot/main.o): Ditto.
941 (mcflex.o): Add $(CFLAGS).
942 (m2/gm2-libs-boot/M2LINK.o): Remove rule.
943 * gm2-compiler/M2GCCDeclare.def (DeclareM2linkGlobals): Remove.
944 * gm2-compiler/M2GCCDeclare.mod: (M2LinkEntry): Remove.
945 (M2LinkIndex): Remove.
946 (DoVariableDeclaration): Remove initial and call to
948 (AddEntryM2Link): Remove.
949 (GetEntryM2Link): Remove.
950 (DeclareM2linkGlobals): Remove.
951 (DetectM2LinkInitial): Remove.
952 (InitM2LinkModule): Remove.
953 * gm2-compiler/M2GenGCC.mod (CodeFinallyEnd): Remove call to
954 DeclareM2linkGlobals.
955 * gm2-compiler/M2Quads.mod (BuildM2InitFunction): Add extra
956 parameter containing runtime module override to ConstructModules.
957 * gm2-compiler/M2Scaffold.mod: Update comment describing
959 * gm2-gcc/m2decl.cc (m2decl_DeclareM2linkForcedModuleInitOrder):
961 * gm2-libs-iso/M2RTS.def (ConstructModules): Add overrideliborder
963 * gm2-libs-iso/M2RTS.mod: Add overrideliborder parameter.
964 * gm2-libs/M2Dependent.def (ConstructModules): Add overrideliborder
966 * gm2-libs/M2Dependent.mod (ConstructModules): Add overrideliborder
968 * gm2-libs/M2RTS.def (ConstructModules): Add overrideliborder parameter.
969 * gm2-libs/M2RTS.mod (ConstructModules): Add overrideliborder
971 * gm2-libs/M2LINK.def: Removed.
973 2023-03-21 Gaius Mulley <gaiusmod2@gmail.com>
975 * Make-lang.in (m2/mc-boot/$(SRC_PREFIX)%.o): Add $(CXXFLAGS).
976 (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Add $(CXXFLAGS).
977 (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Add $(CXXFLAGS).
978 (m2/mc-boot/main.o): Add $(CXXFLAGS).
980 2023-03-19 Gaius Mulley <gaiusmod2@gmail.com>
982 * Make-maintainer.in (gm2.maintainer-clean): Remove.
983 (gm2.maintainer-help): Add gm2.maintainer-tools,
984 gm2.maintainer-doc. Remove gm2.maintainer-clean.
985 Change target-independent directory to target-independent/m2.
986 * gm2-compiler/ppg.mod: Correct __FILE_ typo to __FILE__.
987 * gm2-compiler/M2Options.def (SetAutoInit): Update comment.
988 * gm2-compiler/M2Options.mod (SetAutoInit): Update comment.
989 * gm2-gcc/m2color.cc (m2color_colorize_start): Rename name_len
991 * gm2-gcc/m2color.def (colorize_start): change ARRAY OF CHAR to
992 ADDRESS and add _name_high.
993 * gm2-gcc/m2decl.cc (m2decl_BuildStartFunctionDeclaration): Change
995 * gm2-gcc/m2decl.h (m2decl_BuildStartFunctionDeclaration): Change
997 * gm2-gcc/m2expr.cc (m2expr_BuildBinarySetDo): Change int to bool.
998 (m2expr_BuildIfConstInVar): Change int to bool.
999 (m2expr_BuildIfNotConstInVar): Change int to bool.
1000 (m2expr_BuildIfVarInVar): Change int to bool.
1001 (m2expr_BuildIfNotVarInVar): Change int to bool.
1002 (m2expr_BuildForeachWordInSetDoIfExpr): Change int to bool.
1003 * gm2-gcc/m2expr.h (m2expr_BuildIfNotVarInVar): Change int to bool.
1004 (m2expr_BuildIfVarInVar): Change int to bool.
1005 (m2expr_BuildIfNotConstInVar): Change int to bool.
1006 (m2expr_BuildIfConstInVar): Change int to bool.
1007 * gm2-gcc/m2options.h (M2Options_SetAutoInit): Change int to bool.
1008 (M2Options_SetNilCheck): Change int to bool.
1009 (M2Options_SetReturnCheck): Change int to bool.
1010 (M2Options_SetCaseCheck): Change int to bool.
1011 (M2Options_SetCheckAll): Change int to bool.
1012 (M2Options_SetVerboseUnbounded): Change int to bool.
1013 (M2Options_SetUnboundedByReference): Change int to bool.
1014 (M2Options_SetOptimizing): Change int to bool.
1015 (M2Options_SetQuiet): Change int to bool.
1016 (M2Options_SetCpp): Change int to bool.
1017 (M2Options_SetM2g): Change int to bool.
1018 (M2Options_SetLowerCaseKeywords): Change int to bool.
1019 (M2Options_SetVerbose): Change int to bool.
1020 * gm2-gcc/m2treelib.cc (m2treelib_get_rvalue): Change int to bool.
1021 (m2treelib_get_field_no): Change int to bool.
1022 (m2treelib_get_set_value): Change int to bool.
1023 (m2treelib_get_set_address): Change int to bool.
1024 (m2treelib_get_set_address_if_var): Change int to bool.
1025 * gm2-gcc/m2treelib.def (get_set_address_if_var): Change int to bool.
1026 (get_set_address): Change int to bool.
1027 (get_set_value): Change int to bool.
1028 (get_field_no): Change int to bool.
1029 (get_rvalue): Change int to bool.
1030 * gm2-gcc/m2treelib.h (m2treelib_get_field_no): Change int to bool.
1031 (m2treelib_get_set_value): Change int to bool.
1032 (m2treelib_get_set_address): Change int to bool.
1033 (m2treelib_get_set_address_if_var): Change int to bool.
1034 * gm2-gcc/m2type.cc (m2type_BuildEndFunctionType): Change int to bool.
1035 * gm2-gcc/m2type.h (m2type_BuildEndFunctionType): Change int to bool.
1036 * gm2-libs-ch/dtoa.cc (dtoa_calcsign): Change int to bool.
1037 * gm2-libs-ch/ldtoa.cc (dtoa_calcsign): Change int to bool.
1038 (ldtoa_ldtoa): Change int to bool.
1039 * m2.flex (functionInfo): Change int to bool.
1040 (pushFunction): Change parameter from int to bool.
1041 * mc-boot/GDebug.cc (Debug_Halt): Rebuild.
1042 * mc-boot/GDebug.h (Debug_Halt): Rebuild.
1043 * mc-boot/GDynamicStrings.cc: Rebuild.
1044 * mc-boot/GDynamicStrings.h: Rebuild.
1045 * mc-boot/GFIO.cc: Rebuild.
1046 * mc-boot/GM2RTS.cc: Rebuild.
1047 * mc-boot/GM2RTS.h: Rebuild.
1048 * mc-boot/GPushBackInput.cc: Rebuild.
1049 * mc-boot/GRTExceptions.cc: Rebuild.
1050 * mc-boot/GRTint.cc: Rebuild.
1051 * mc-boot/GSysStorage.cc: Rebuild.
1052 * mc-boot/Gdecl.cc: Rebuild.
1053 * mc-boot/GsymbolKey.cc: Rebuild.
1054 * mc/symbolKey.mod: Rebuild.
1055 * target-independent/m2/Builtins.texi: Rebuild.
1056 * target-independent/m2/SYSTEM-iso.texi: Rebuild.
1057 * target-independent/m2/SYSTEM-pim.texi: Rebuild.
1058 * target-independent/m2/gm2-libs.texi: Rebuild.
1059 * tools-src/def2doc.py (PIM_Log): Change gm2-libs-pim to
1062 2023-03-17 Gaius Mulley <gaiusmod2@gmail.com>
1065 * gm2-gcc/m2expr.cc: Correct ? : order in comments.
1066 (m2expr_BuildDivM2): Improve comment.
1067 * lang.opt: Improve option descriptions.
1069 2023-03-17 Gaius Mulley <gaiusmod2@gmail.com>
1072 * gm2-gcc/m2builtins.cc (ASSERT): Change format specifier to
1073 use %qs rather than quotes.
1075 2023-03-17 Gaius Mulley <gaiusmod2@gmail.com>
1077 * gm2-compiler/M2AsmUtil.mod (SymNeedsModulePrefix):
1079 * gm2-libs/SysStorage.mod (enableTrace): Disable tracing.
1081 2023-03-16 Gaius Mulley <gaiusmod2@gmail.com>
1083 * gm2-compiler/SymbolKey.mod (PutSymKey): Halt parameters
1086 * gm2-compiler/ppg.mod (GetEpsilon): Ditto.
1087 (GetReachEnd): Ditto.
1089 (CodeCondition): Ditto.
1090 (CodeThenDo): Ditto.
1092 (RecoverCondition): Ditto.
1093 (ConditionIndent): Ditto.
1094 * gm2-libs-ch/m2rts.h (M2RTS_Halt): Ditto.
1095 * gm2-libs-coroutines/Executive.mod (Assert): Ditto.
1096 (Resume): Remove redundant comments.
1097 (Wait): Remove redundant comments.
1098 * gm2-libs-coroutines/SYSTEM.mod (TRANSFER): Halt parameters
1100 (IOTransferHandler): Ditto.
1103 * gm2-libs-coroutines/TimerHandler.mod (WaitOn): Halt parameters
1106 (ReArmEvent): Ditto.
1107 (OnActiveQueue): Ditto.
1108 * gm2-libs-iso/COROUTINES.mod (NEWCOROUTINE): Ditto.
1110 (IOTRANSFER): Ditto.
1111 * gm2-libs-iso/EXCEPTIONS.mod (RAISE): Correct Halt parameters.
1112 * gm2-libs-iso/M2RTS.def (Halt): Halt parameters reordered.
1114 * gm2-libs-iso/M2RTS.mod: Ditto.
1115 * gm2-libs-iso/RTentity.mod (PutKey): Ditto.
1117 (findChildAndParent): Ditto.
1119 * gm2-libs-iso/Storage.mod (ALLOCATE): Add DebugTrace.
1120 Add UseMallocFree test.
1121 (DEALLOCATE): Add DebugTrace. Add UseMallocFree test.
1122 (assert): Halt parameters reordered.
1123 * gm2-libs-log/Termbase.mod (Read): Ditto.
1124 (KeyPressed): Ditto.
1127 * gm2-libs/Debug.def (Halt): Halt parameters reordered.
1128 * gm2-libs/Debug.mod (Halt): Ditto.
1129 * gm2-libs/DynamicStrings.def (PopAllocation): Improve comment.
1130 * gm2-libs/DynamicStrings.mod (PopAllocation): Improve comment.
1131 Halt parameters reordered.
1132 * gm2-libs/M2RTS.def (Halt): Ditto.
1134 * gm2-libs/M2RTS.mod (Halt): Ditto.
1136 * gm2-libs/PushBackInput.mod (PutStr): Ditto.
1139 * gm2-libs/RTExceptions.mod (GetBaseExceptionBlock): Ditto.
1140 * gm2-libs/RTint.mod (ReArmTimeVector): Ditto.
1141 (GetTimeVector): Ditto.
1142 (AttachVector): Ditto.
1143 (IncludeVector): Ditto.
1145 * gm2-libs/SysStorage.mod (ALLOCATE): Ditto.
1146 (DEALLOCATE): Ditto.
1147 (REALLOCATE): Ditto.
1148 * gm2-libs-coroutines/Debug.def: Removed.
1149 * gm2-libs-coroutines/Debug.mod: Removed.
1151 2023-03-16 Gaius Mulley <gaiusmod2@gmail.com>
1153 * Make-lang.in: Rename target-independent to
1154 target-independent/m2.
1155 * target-independent/readme.txt: Update.
1156 * target-independent/m2/gm2-ebnf.texi: New file.
1157 * target-independent/m2/gpl_v3_without_node.texi: New file.
1158 * target-independent/Builtins.texi: Rename ...
1159 * target-independent/m2/Builtins.texi: ... to this.
1160 * target-independent/SYSTEM-iso.texi: Rename ...
1161 * target-independent/m2/SYSTEM-iso.texi: ... to this.
1162 * target-independent/SYSTEM-pim.texi: Rename ...
1163 * target-independent/m2/SYSTEM-pim.texi: ... to this.
1164 * target-independent/gm2-libs.texi: Rename ...
1165 * target-independent/m2/gm2-libs.texi: ... to this.
1167 2023-03-15 Gaius Mulley <gaiusmod2@gmail.com>
1170 * gm2-libs-ch/dtoa.cc (dtoa_strtod): Replace int with bool.
1171 * gm2-libs-ch/ldtoa.cc (ldtoa_strtold): Replace int with bool.
1173 2023-03-14 Gaius Mulley <gaiusmod2@gmail.com>
1176 * gm2-libs-ch/cgetopt.c (cgetopt_SetOption): Replace int
1178 * gm2-libs-ch/termios.c (doSetUnset): Replace int for bool.
1179 * gm2-libs/Builtins.mod (isfinitef): Correct typo in return
1182 2023-03-13 Gaius Mulley <gaiusmod2@gmail.com>
1185 * gm2-compiler/M2ALU.def (PushString): New parameter issueError.
1186 * gm2-compiler/M2ALU.mod (PushString): New parameter issueError.
1187 * gm2-compiler/SymbolTable.mod (PushString): New parameter issueError.
1188 * gm2-gcc/m2decl.cc (m2decl_DetermineSizeOfConstant): Pass
1189 location to interpret_m2_integer.
1190 (m2decl_BuildConstLiteralNumber): New parameter issueError.
1191 * gm2-gcc/m2expr.cc (m2expr_IsTrue): Replace int with bool.
1192 (m2expr_IsFalse): Replace int with bool.
1193 (m2expr_AreConstantsEqual): Replace int with bool.
1194 (m2expr_BuildBinaryForeachWordDo): Call m2linemap_internal_error_at.
1195 (append_digit): Ditto.
1196 (m2expr_interpret_integer): Add location parameter.
1197 (append_m2_digit): Call m2linemap_internal_error_at.
1198 (m2expr_interpret_m2_integer): Add location parameter.
1199 (m2expr_GetSizeOf): Replace sizeof with SIZE in error message.
1200 * gm2-gcc/m2expr.h (m2expr_AreRealOrComplexConstantsEqual):
1201 Replace int with bool.
1202 (m2expr_AreConstantsEqual): Ditto.
1203 (m2expr_IsFalse): Ditto.
1204 (m2expr_IsTrue): Ditto.
1205 (m2expr_interpret_integer): Add location parameter.
1206 (m2expr_interpret_m2_integer): Add location parameter.
1207 * gm2-gcc/m2linemap.cc (mformat_value): New function.
1208 (expand_format): New function.
1209 (expand_message): New function.
1210 (gm2_internal_error_at): New function.
1211 (m2linemap_internal_error_at): New function.
1212 * gm2-gcc/m2linemap.h (m2linemap_internal_error_at): New function.
1213 * gm2-gcc/m2options.h (M2Options_SetISO): Replace int with bool.
1214 (M2Options_SetPIM): Ditto.
1215 (M2Options_SetPIM2): Ditto.
1216 (M2Options_SetPIM3): Ditto.
1217 (M2Options_SetPIM4): Ditto.
1218 (M2Options_SetFloatValueCheck): Ditto.
1219 (M2Options_SetWholeValueCheck): Ditto.
1220 (M2Options_GetISO): Ditto.
1221 (M2Options_GetPIM): Ditto.
1222 (M2Options_GetPIM2): Ditto.
1223 (M2Options_GetPIM3): Ditto.
1224 (M2Options_GetPIM4): Ditto.
1225 (M2Options_GetPositiveModFloor): Ditto.
1226 (M2Options_GetFloatValueCheck): Ditto.
1227 (M2Options_GetWholeValueCheck): Ditto.
1228 (M2Options_Setc): Ditto.
1229 (M2Options_Getc): Ditto.
1230 (M2Options_SetPPOnly): Ditto.
1231 (M2Options_GetPPOnly): Ditto.
1232 (M2Options_SetUselist): Ditto.
1233 (M2Options_SetAutoInit): Ditto.
1234 (M2Options_SetPositiveModFloor): Ditto.
1235 (M2Options_SetNilCheck): Ditto.
1236 (M2Options_SetWholeDiv): Ditto.
1237 (M2Options_SetIndex): Ditto.
1238 (M2Options_SetRange): Ditto.
1239 (M2Options_SetReturnCheck): Ditto.
1240 (M2Options_SetCaseCheck): Ditto.
1241 (M2Options_SetCheckAll): Ditto.
1242 (M2Options_SetExceptions): Ditto.
1243 (M2Options_SetStyle): Ditto.
1244 (M2Options_SetPedantic): Ditto.
1245 (M2Options_SetPedanticParamNames): Ditto.
1246 (M2Options_SetPedanticCast): Ditto.
1247 (M2Options_SetExtendedOpaque): Ditto.
1248 (M2Options_SetVerboseUnbounded): Ditto.
1249 (M2Options_SetXCode): Ditto.
1250 (M2Options_SetCompilerDebugging): Ditto.
1251 (M2Options_SetQuadDebugging): Ditto.
1252 (M2Options_SetDebugTraceQuad): Ditto.
1253 (M2Options_SetDebugTraceAPI): Ditto.
1254 (M2Options_SetSources): Ditto.
1255 (M2Options_SetUnboundedByReference): Ditto.
1256 (M2Options_SetDumpSystemExports): Ditto.
1257 (M2Options_SetOptimizing): Ditto.
1258 (M2Options_SetQuiet): Ditto.
1259 (M2Options_SetCC1Quiet): Ditto.
1260 (M2Options_SetCpp): Ditto.
1261 (M2Options_SetSwig): Ditto.
1262 (M2Options_SetWholeProgram): Ditto.
1263 (M2Options_SetDebugFunctionLineNumbers): Ditto.
1264 (M2Options_SetGenerateStatementNote): Ditto.
1265 (M2Options_GetCpp): Ditto.
1266 (M2Options_GetM2g): Ditto.
1267 (M2Options_SetM2g): Ditto.
1268 (M2Options_SetLowerCaseKeywords): Ditto.
1269 (M2Options_SetVerbose): Ditto.
1270 (M2Options_SetUnusedVariableChecking): Ditto.
1271 (M2Options_SetUnusedParameterChecking): Ditto.
1272 (M2Options_SetStrictTypeChecking): Ditto.
1273 (M2Options_SetWall): Ditto.
1274 (M2Options_SetSaveTemps): Ditto.
1275 (M2Options_GetSaveTemps): Ditto.
1276 (M2Options_SetScaffoldStatic): Ditto.
1277 (M2Options_SetScaffoldDynamic): Ditto.
1278 (M2Options_SetScaffoldMain): Ditto.
1279 (M2Options_SetGenModuleList): Ditto.
1280 (M2Options_SetShared): Ditto.
1281 * gm2-libs-ch/M2LINK.c: Ditto.
1282 * gm2-libs-ch/m2rts.h (M2RTS_RequestDependant): Replace
1283 const char * with const void *.
1284 (M2RTS_RegisterModule): Ditto.
1285 (M2RTS_ConstructModules): Ditto.
1286 * gm2-gcc/m2decl.def (DetermineSizeOfConstant): New parameter
1288 * gm2-gcc/m2decl.h (DetermineSizeOfConstant): New parameter
1291 2023-03-12 Gaius Mulley <gaiusmod2@gmail.com>
1294 * gm2-compiler/M2GCCDeclare.mod (DeclareKnownType): Import.
1295 * gm2-gcc/gcc-consolidation.h (stdbool.h): Include.
1296 * gm2-gcc/init.h (defined): Change block start.
1297 * gm2-gcc/m2block.cc: Change FALSE to false, change TRUE to true.
1298 * gm2-gcc/m2block.h: Change int to bool.
1299 * gm2-gcc/m2builtins.cc: Ditto.
1300 * gm2-gcc/m2builtins.h: Ditto.
1301 * gm2-gcc/m2convert.cc: Change FALSE to false, TRUE to true and
1303 * gm2-gcc/m2convert.h: Change int to bool.
1304 * gm2-gcc/m2decl.cc: Change int to bool.
1305 * gm2-gcc/m2decl.h: Change int to bool.
1306 * gm2-gcc/m2expr.cc: Change FALSE to false, TRUE to true and
1308 * gm2-gcc/m2expr.h: Change int to bool.
1309 * gm2-gcc/m2statement.cc: Change FALSE to false, TRUE to true and
1311 * gm2-gcc/m2statement.h: Change int to bool.
1312 * gm2-gcc/m2top.cc: Change int to bool.
1313 * gm2-gcc/m2top.h: Change int to bool.
1314 * gm2-gcc/m2tree.cc: Change int to bool.
1315 * gm2-gcc/m2tree.h: Change int to bool.
1316 * gm2-gcc/m2type.cc: Change int to bool.
1317 * gm2-gcc/m2type.h: Change int to bool.
1318 * gm2-lang.cc (convert_loc): Call convert_to_integer for BOOLEAN_TYPE.
1319 * gm2-libs/Builtins.def (isfinitef): Change return value from
1323 * gm2-libs/Builtins.mod (isfinitef): Change return value from
1327 * mc-boot/GASCII.cc: Rebuild.
1328 * mc-boot/GASCII.h: Rebuild.
1329 * mc-boot/GArgs.cc: Rebuild.
1330 * mc-boot/GArgs.h: Rebuild.
1331 * mc-boot/GAssertion.cc: Rebuild.
1332 * mc-boot/GAssertion.h: Rebuild.
1333 * mc-boot/GBreak.cc: Rebuild.
1334 * mc-boot/GBreak.h: Rebuild.
1335 * mc-boot/GCOROUTINES.h: Rebuild.
1336 * mc-boot/GCmdArgs.cc: Rebuild.
1337 * mc-boot/GCmdArgs.h: Rebuild.
1338 * mc-boot/GDebug.cc: Rebuild.
1339 * mc-boot/GDebug.h: Rebuild.
1340 * mc-boot/GDynamicStrings.cc: Rebuild.
1341 * mc-boot/GDynamicStrings.h: Rebuild.
1342 * mc-boot/GEnvironment.cc: Rebuild.
1343 * mc-boot/GEnvironment.h: Rebuild.
1344 * mc-boot/GFIO.cc: Rebuild.
1345 * mc-boot/GFIO.h: Rebuild.
1346 * mc-boot/GFormatStrings.cc: Rebuild.
1347 * mc-boot/GFormatStrings.h: Rebuild.
1348 * mc-boot/GFpuIO.cc: Rebuild.
1349 * mc-boot/GFpuIO.h: Rebuild.
1350 * mc-boot/GIO.cc: Rebuild.
1351 * mc-boot/GIO.h: Rebuild.
1352 * mc-boot/GIndexing.cc: Rebuild.
1353 * mc-boot/GIndexing.h: Rebuild.
1354 * mc-boot/GM2Dependent.cc: Rebuild.
1355 * mc-boot/GM2Dependent.h: Rebuild.
1356 * mc-boot/GM2EXCEPTION.cc: Rebuild.
1357 * mc-boot/GM2EXCEPTION.h: Rebuild.
1358 * mc-boot/GM2LINK.h: Rebuild.
1359 * mc-boot/GM2RTS.cc: Rebuild.
1360 * mc-boot/GM2RTS.h: Rebuild.
1361 * mc-boot/GMemUtils.cc: Rebuild.
1362 * mc-boot/GMemUtils.h: Rebuild.
1363 * mc-boot/GNumberIO.cc: Rebuild.
1364 * mc-boot/GNumberIO.h: Rebuild.
1365 * mc-boot/GPushBackInput.cc: Rebuild.
1366 * mc-boot/GPushBackInput.h: Rebuild.
1367 * mc-boot/GRTExceptions.cc: Rebuild.
1368 * mc-boot/GRTExceptions.h: Rebuild.
1369 * mc-boot/GRTco.h: Rebuild.
1370 * mc-boot/GRTentity.h: Rebuild.
1371 * mc-boot/GRTint.cc: Rebuild.
1372 * mc-boot/GRTint.h: Rebuild.
1373 * mc-boot/GSArgs.cc: Rebuild.
1374 * mc-boot/GSArgs.h: Rebuild.
1375 * mc-boot/GSFIO.cc: Rebuild.
1376 * mc-boot/GSFIO.h: Rebuild.
1377 * mc-boot/GSYSTEM.h: Rebuild.
1378 * mc-boot/GSelective.h: Rebuild.
1379 * mc-boot/GStdIO.cc: Rebuild.
1380 * mc-boot/GStdIO.h: Rebuild.
1381 * mc-boot/GStorage.cc: Rebuild.
1382 * mc-boot/GStorage.h: Rebuild.
1383 * mc-boot/GStrCase.cc: Rebuild.
1384 * mc-boot/GStrCase.h: Rebuild.
1385 * mc-boot/GStrIO.cc: Rebuild.
1386 * mc-boot/GStrIO.h: Rebuild.
1387 * mc-boot/GStrLib.cc: Rebuild.
1388 * mc-boot/GStrLib.h: Rebuild.
1389 * mc-boot/GStringConvert.cc: Rebuild.
1390 * mc-boot/GStringConvert.h: Rebuild.
1391 * mc-boot/GSysExceptions.h: Rebuild.
1392 * mc-boot/GSysStorage.cc: Rebuild.
1393 * mc-boot/GSysStorage.h: Rebuild.
1394 * mc-boot/GTimeString.cc: Rebuild.
1395 * mc-boot/GTimeString.h: Rebuild.
1396 * mc-boot/GUnixArgs.h: Rebuild.
1397 * mc-boot/Galists.cc: Rebuild.
1398 * mc-boot/Galists.h: Rebuild.
1399 * mc-boot/Gdecl.cc: Rebuild.
1400 * mc-boot/Gdecl.h: Rebuild.
1401 * mc-boot/Gdtoa.h: Rebuild.
1402 * mc-boot/Gerrno.h: Rebuild.
1403 * mc-boot/Gkeyc.cc: Rebuild.
1404 * mc-boot/Gkeyc.h: Rebuild.
1405 * mc-boot/Gldtoa.h: Rebuild.
1406 * mc-boot/Glibc.h: Rebuild.
1407 * mc-boot/Glibm.h: Rebuild.
1408 * mc-boot/Glists.cc: Rebuild.
1409 * mc-boot/Glists.h: Rebuild.
1410 * mc-boot/GmcComment.cc: Rebuild.
1411 * mc-boot/GmcComment.h: Rebuild.
1412 * mc-boot/GmcComp.cc: Rebuild.
1413 * mc-boot/GmcComp.h: Rebuild.
1414 * mc-boot/GmcDebug.cc: Rebuild.
1415 * mc-boot/GmcDebug.h: Rebuild.
1416 * mc-boot/GmcError.cc: Rebuild.
1417 * mc-boot/GmcError.h: Rebuild.
1418 * mc-boot/GmcFileName.cc: Rebuild.
1419 * mc-boot/GmcFileName.h: Rebuild.
1420 * mc-boot/GmcLexBuf.cc: Rebuild.
1421 * mc-boot/GmcLexBuf.h: Rebuild.
1422 * mc-boot/GmcMetaError.cc: Rebuild.
1423 * mc-boot/GmcMetaError.h: Rebuild.
1424 * mc-boot/GmcOptions.cc: Rebuild.
1425 * mc-boot/GmcOptions.h: Rebuild.
1426 * mc-boot/GmcPreprocess.cc: Rebuild.
1427 * mc-boot/GmcPreprocess.h: Rebuild.
1428 * mc-boot/GmcPretty.cc: Rebuild.
1429 * mc-boot/GmcPretty.h: Rebuild.
1430 * mc-boot/GmcPrintf.cc: Rebuild.
1431 * mc-boot/GmcPrintf.h: Rebuild.
1432 * mc-boot/GmcQuiet.cc: Rebuild.
1433 * mc-boot/GmcQuiet.h: Rebuild.
1434 * mc-boot/GmcReserved.cc: Rebuild.
1435 * mc-boot/GmcReserved.h: Rebuild.
1436 * mc-boot/GmcSearch.cc: Rebuild.
1437 * mc-boot/GmcSearch.h: Rebuild.
1438 * mc-boot/GmcStack.cc: Rebuild.
1439 * mc-boot/GmcStack.h: Rebuild.
1440 * mc-boot/GmcStream.cc: Rebuild.
1441 * mc-boot/GmcStream.h: Rebuild.
1442 * mc-boot/Gmcflex.h: Rebuild.
1443 * mc-boot/Gmcp1.cc: Rebuild.
1444 * mc-boot/Gmcp1.h: Rebuild.
1445 * mc-boot/Gmcp2.cc: Rebuild.
1446 * mc-boot/Gmcp2.h: Rebuild.
1447 * mc-boot/Gmcp3.cc: Rebuild.
1448 * mc-boot/Gmcp3.h: Rebuild.
1449 * mc-boot/Gmcp4.cc: Rebuild.
1450 * mc-boot/Gmcp4.h: Rebuild.
1451 * mc-boot/Gmcp5.cc: Rebuild.
1452 * mc-boot/Gmcp5.h: Rebuild.
1453 * mc-boot/GnameKey.cc: Rebuild.
1454 * mc-boot/GnameKey.h: Rebuild.
1455 * mc-boot/GsymbolKey.cc: Rebuild.
1456 * mc-boot/GsymbolKey.h: Rebuild.
1457 * mc-boot/Gtermios.h: Rebuild.
1458 * mc-boot/Gtop.cc: Rebuild.
1459 * mc-boot/Gvarargs.cc: Rebuild.
1460 * mc-boot/Gvarargs.h: Rebuild.
1461 * mc-boot/Gwlists.cc: Rebuild.
1462 * mc-boot/Gwlists.h: Rebuild.
1463 * mc-boot/Gwrapc.h: Rebuild.
1464 * mc/decl.mod (doBoolC): New procedure.
1465 (doBaseC): Call doBoolC.
1466 * mc/keyc.mod: Import useBool.
1467 (genBool): New procedure.
1468 (genDefs): Call genBool.
1469 * mc/mcOptions.def (useBool): New procedure.
1470 * mc/mcOptions.mod (useBool): New procedure.
1471 (useBoolType): New variable.
1472 (optionIs): Assign useBoolType to TRUE.
1474 2023-03-04 Gaius Mulley <gaiusmod2@gmail.com>
1476 * mc-boot-ch/GBuiltins.cc: New file.
1477 * mc-boot-ch/Gdtoa.cc: New file.
1478 * mc-boot-ch/Gerrno.cc: New file.
1479 * mc-boot-ch/Gldtoa.cc: New file.
1480 * mc-boot-ch/Gm2rtsdummy.cc: New file.
1481 * mc-boot/GASCII.cc: New file.
1482 * mc-boot/GArgs.cc: New file.
1483 * mc-boot/GAssertion.cc: New file.
1484 * mc-boot/GBreak.cc: New file.
1485 * mc-boot/GCmdArgs.cc: New file.
1486 * mc-boot/GDebug.cc: New file.
1487 * mc-boot/GDynamicStrings.cc: New file.
1488 * mc-boot/GEnvironment.cc: New file.
1489 * mc-boot/GFIO.cc: New file.
1490 * mc-boot/GFormatStrings.cc: New file.
1491 * mc-boot/GFpuIO.cc: New file.
1492 * mc-boot/GIO.cc: New file.
1493 * mc-boot/GIndexing.cc: New file.
1494 * mc-boot/GM2Dependent.cc: New file.
1495 * mc-boot/GM2EXCEPTION.cc: New file.
1496 * mc-boot/GM2RTS.cc: New file.
1497 * mc-boot/GMemUtils.cc: New file.
1498 * mc-boot/GNumberIO.cc: New file.
1499 * mc-boot/GPushBackInput.cc: New file.
1500 * mc-boot/GRTExceptions.cc: New file.
1501 * mc-boot/GRTint.cc: New file.
1502 * mc-boot/GSArgs.cc: New file.
1503 * mc-boot/GSFIO.cc: New file.
1504 * mc-boot/GStdIO.cc: New file.
1505 * mc-boot/GStorage.cc: New file.
1506 * mc-boot/GStrCase.cc: New file.
1507 * mc-boot/GStrIO.cc: New file.
1508 * mc-boot/GStrLib.cc: New file.
1509 * mc-boot/GStringConvert.cc: New file.
1510 * mc-boot/GSysStorage.cc: New file.
1511 * mc-boot/GTimeString.cc: New file.
1512 * mc-boot/Galists.cc: New file.
1513 * mc-boot/Gdecl.cc: New file.
1514 * mc-boot/Gkeyc.cc: New file.
1515 * mc-boot/Glists.cc: New file.
1516 * mc-boot/GmcComment.cc: New file.
1517 * mc-boot/GmcComp.cc: New file.
1518 * mc-boot/GmcDebug.cc: New file.
1519 * mc-boot/GmcError.cc: New file.
1520 * mc-boot/GmcFileName.cc: New file.
1521 * mc-boot/GmcLexBuf.cc: New file.
1522 * mc-boot/GmcMetaError.cc: New file.
1523 * mc-boot/GmcOptions.cc: New file.
1524 * mc-boot/GmcPreprocess.cc: New file.
1525 * mc-boot/GmcPretty.cc: New file.
1526 * mc-boot/GmcPrintf.cc: New file.
1527 * mc-boot/GmcQuiet.cc: New file.
1528 * mc-boot/GmcReserved.cc: New file.
1529 * mc-boot/GmcSearch.cc: New file.
1530 * mc-boot/GmcStack.cc: New file.
1531 * mc-boot/GmcStream.cc: New file.
1532 * mc-boot/Gmcp1.cc: New file.
1533 * mc-boot/Gmcp2.cc: New file.
1534 * mc-boot/Gmcp3.cc: New file.
1535 * mc-boot/Gmcp4.cc: New file.
1536 * mc-boot/Gmcp5.cc: New file.
1537 * mc-boot/GnameKey.cc: New file.
1538 * mc-boot/GsymbolKey.cc: New file.
1539 * mc-boot/Gtop.cc: New file.
1540 * mc-boot/Gvarargs.cc: New file.
1541 * mc-boot/Gwlists.cc: New file.
1542 * pge-boot/GASCII.cc: New file.
1543 * pge-boot/GArgs.cc: New file.
1544 * pge-boot/GAssertion.cc: New file.
1545 * pge-boot/GBuiltins.cc: New file.
1546 * pge-boot/GDebug.cc: New file.
1547 * pge-boot/GDynamicStrings.cc: New file.
1548 * pge-boot/GFIO.cc: New file.
1549 * pge-boot/GIO.cc: New file.
1550 * pge-boot/GIndexing.cc: New file.
1551 * pge-boot/GLists.cc: New file.
1552 * pge-boot/GM2Dependent.cc: New file.
1553 * pge-boot/GM2EXCEPTION.cc: New file.
1554 * pge-boot/GM2LINK.cc: New file.
1555 * pge-boot/GM2RTS.cc: New file.
1556 * pge-boot/GNameKey.cc: New file.
1557 * pge-boot/GNumberIO.cc: New file.
1558 * pge-boot/GOutput.cc: New file.
1559 * pge-boot/GPushBackInput.cc: New file.
1560 * pge-boot/GRTExceptions.cc: New file.
1561 * pge-boot/GRTco.cc: New file.
1562 * pge-boot/GSFIO.cc: New file.
1563 * pge-boot/GSYSTEM.cc: New file.
1564 * pge-boot/GSelective.cc: New file.
1565 * pge-boot/GStdIO.cc: New file.
1566 * pge-boot/GStorage.cc: New file.
1567 * pge-boot/GStrCase.cc: New file.
1568 * pge-boot/GStrIO.cc: New file.
1569 * pge-boot/GStrLib.cc: New file.
1570 * pge-boot/GSymbolKey.cc: New file.
1571 * pge-boot/GSysExceptions.cc: New file.
1572 * pge-boot/GSysStorage.cc: New file.
1573 * pge-boot/Gabort.cc: New file.
1574 * pge-boot/Gbnflex.cc: New file.
1575 * pge-boot/Gcbuiltin.cc: New file.
1576 * pge-boot/Gdtoa.cc: New file.
1577 * pge-boot/Gerrno.cc: New file.
1578 * pge-boot/Gldtoa.cc: New file.
1579 * pge-boot/Glibc.cc: New file.
1580 * pge-boot/Glibm.cc: New file.
1581 * pge-boot/Gmcrts.cc: New file.
1582 * pge-boot/Gpge.cc: New file.
1583 * pge-boot/Gwrapc.cc: New file.
1584 * pge-boot/main.cc: New file.
1585 * pge-boot/network.cc: New file.
1587 2023-03-04 Gaius Mulley <gaiusmod2@gmail.com>
1589 * Make-lang.in (MC-LIB-BOOT-C): Rename to MC-LIB-BOOT-CC.
1590 (MC-BOOT-C): Rename to MC-BOOT-CC.
1591 (BUILD-MC-BOOT-C): Rename to BUILD-MC-BOOT-CC.
1592 (BUILD-MC-BOOT-AUTO-C): Rename to BUILD-MC-BOOT-AUTO-CC.
1593 (m2/mc-boot/$(SRC_PREFIX)%.o): Change source file extension to .cc.
1594 (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto.
1595 * Make-maintainer.in (m2/gm2-ppg-boot/$(SRC_PREFIX)%.o): Change
1596 source file extension to .cc.
1597 (m2/gm2-ppg-boot/main.o): Ditto.
1598 (m2/gm2-ppg-boot/$(SRC_PREFIX)%.o): Ditto.
1600 (m2/gm2-pg-boot/main.o): Ditto.
1601 (m2/gm2-pge-boot/$(SRC_PREFIX)ldtoa.o): Ditto.
1602 (m2/gm2-pge-boot/$(SRC_PREFIX)dtoa.o): Ditto.
1603 (m2/gm2-pge-boot/$(SRC_PREFIX)errno.o): Ditto.
1604 (m2/gm2-pge-boot/$(SRC_PREFIX)M2RTS.o): Ditto.
1605 (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Ditto.
1606 (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Ditto.
1607 (m2/gm2-pge-boot/$(SRC_PREFIX)pge.o): Ditto.
1608 (m2/gm2-pge-boot/main.o): Ditto.
1612 ((objdir)/m2/mc-boot-gen): Ditto.
1613 (m2/mc-boot-gen/$(SRC_PREFIX)decl.c): Ditto.
1614 (m2/mc-boot-gen/$(SRC_PREFIX)%.c): Ditto.
1615 * mc-boot-ch/GBuiltins.c: Correct comment and rename.
1616 * mc-boot-ch/Gdtoa.c: Correct comment and rename.
1617 * mc-boot-ch/Gldtoa.c: Correct comment and rename
1618 * mc-boot-ch/Gtermios.cc: Rename from Gtermios.c.
1619 * mc-boot-ch/Gerrno.c: Rename.
1620 * mc-boot-ch/GRTco.c: Removed.
1621 * mc-boot/GASCII.c: Rename to mc-boot/GASCII.cc.
1622 * mc-boot/GArgs.c: Rename to mc-boot/GArgs.cc.
1623 * mc-boot/GAssertion.c: Rename to mc-boot/GAssertion.cc.
1624 * mc-boot/GBreak.c: Rename to mc-boot/GBreak.cc.
1625 * mc-boot/GCmdArgs.c: Rename to mc-boot/GCmdArgs.cc.
1626 * mc-boot/GDebug.c: Rename to mc-boot/GDebug.cc.
1627 * mc-boot/GDynamicStrings.c: Rename to mc-boot/GDynamicStrings.cc.
1628 * mc-boot/GEnvironment.c: Rename to mc-boot/GEnvironment.cc.
1629 * mc-boot/GFIO.c: Rename to mc-boot/GFIO.cc.
1630 * mc-boot/GFormatStrings.c: Rename to mc-boot/GFormatStrings.cc.
1631 * mc-boot/GFpuIO.c: Rename to mc-boot/GFpuIO.cc.
1632 * mc-boot/GIO.c: Rename to mc-boot/GIO.cc.
1633 * mc-boot/GIndexing.c: Rename to mc-boot/GIndexing.cc.
1634 * mc-boot/GM2Dependent.c: Rename to mc-boot/GM2Dependent.cc.
1635 * mc-boot/GM2EXCEPTION.c: Rename to mc-boot/GM2EXCEPTION.cc.
1636 * mc-boot/GM2RTS.c: Rename to mc-boot/GM2RTS.cc.
1637 * mc-boot/GMemUtils.c: Rename to mc-boot/GMemUtils.cc.
1638 * mc-boot/GNumberIO.c: Rename to mc-boot/GNumberIO.cc.
1639 * mc-boot/GPushBackInput.c: Rename to mc-boot/GPushBackInput.cc.
1640 * mc-boot/GRTExceptions.c: Rename to mc-boot/GRTExceptions.cc.
1641 * mc-boot/GRTint.c: Rename to mc-boot/GRTint.cc.
1642 * mc-boot/GSArgs.c: Rename to mc-boot/GSArgs.cc.
1643 * mc-boot/GSFIO.c: Rename to mc-boot/GSFIO.cc.
1644 * mc-boot/GStdIO.c: Rename to mc-boot/GStdIO.cc.
1645 * mc-boot/GStorage.c: Rename to mc-boot/GStorage.cc.
1646 * mc-boot/GStrCase.c: Rename to mc-boot/GStrCase.cc.
1647 * mc-boot/GStrIO.c: Rename to mc-boot/GStrIO.cc.
1648 * mc-boot/GStrLib.c: Rename to mc-boot/GStrLib.cc.
1649 * mc-boot/GStringConvert.c: Rename to mc-boot/GStringConvert.cc.
1650 * mc-boot/GSysStorage.c: Rename to mc-boot/GSysStorage.cc.
1651 * mc-boot/GTimeString.c: Rename to mc-boot/GTimeString.cc.
1652 * mc-boot/Galists.c: Rename to mc-boot/Galists.cc.
1653 * mc-boot/Gdecl.c: Rename to mc-boot/Gdecl.cc.
1654 * mc-boot/Gkeyc.c: Rename to mc-boot/Gkeyc.cc.
1655 * mc-boot/Glists.c: Rename to mc-boot/Glists.cc.
1656 * mc-boot/GmcComment.c: Rename to mc-boot/GmcComment.cc.
1657 * mc-boot/GmcComp.c: Rename to mc-boot/GmcComp.cc.
1658 * mc-boot/GmcDebug.c: Rename to mc-boot/GmcDebug.cc.
1659 * mc-boot/GmcError.c: Rename to mc-boot/GmcError.cc.
1660 * mc-boot/GmcFileName.c: Rename to mc-boot/GmcFileName.cc.
1661 * mc-boot/GmcLexBuf.c: Rename to mc-boot/GmcLexBuf.cc.
1662 * mc-boot/GmcMetaError.c: Rename to mc-boot/GmcMetaError.cc.
1663 * mc-boot/GmcOptions.c: Rename to mc-boot/GmcOptions.cc.
1664 * mc-boot/GmcPreprocess.c: Rename to mc-boot/GmcPreprocess.cc.
1665 * mc-boot/GmcPretty.c: Rename to mc-boot/GmcPretty.cc.
1666 * mc-boot/GmcPrintf.c: Rename to mc-boot/GmcPrintf.cc.
1667 * mc-boot/GmcQuiet.c: Rename to mc-boot/GmcQuiet.cc.
1668 * mc-boot/GmcReserved.c: Rename to mc-boot/GmcReserved.cc.
1669 * mc-boot/GmcSearch.c: Rename to mc-boot/GmcSearch.cc.
1670 * mc-boot/GmcStack.c: Rename to mc-boot/GmcStack.cc.
1671 * mc-boot/GmcStream.c: Rename to mc-boot/GmcStream.cc.
1672 * mc-boot/Gmcp1.c: Rename to mc-boot/Gmcp1.cc.
1673 * mc-boot/Gmcp2.c: Rename to mc-boot/Gmcp2.cc.
1674 * mc-boot/Gmcp3.c: Rename to mc-boot/Gmcp3.cc.
1675 * mc-boot/Gmcp4.c: Rename to mc-boot/Gmcp4.cc.
1676 * mc-boot/Gmcp5.c: Rename to mc-boot/Gmcp5.cc.
1677 * mc-boot/GnameKey.c: Rename to mc-boot/GnameKey.cc.
1678 * mc-boot/GsymbolKey.c: Rename to mc-boot/GsymbolKey.cc.
1679 * mc-boot/Gtop.c: Rename to mc-boot/Gtop.cc.
1680 * mc-boot/Gvarargs.c: Rename to mc-boot/Gvarargs.cc.
1681 * mc-boot/Gwlists.c: Rename to mc-boot/Gwlists.cc.
1682 * pge-boot/GASCII.c: Rename to pge-boot/GASCII.cc.
1683 * pge-boot/GArgs.c: Rename to pge-boot/GArgs.cc.
1684 * pge-boot/GAssertion.c: Rename to pge-boot/GAssertion.cc.
1685 * pge-boot/GBuiltins.c: Rename to pge-boot/GBuiltins.cc.
1686 * pge-boot/GDebug.c: Rename to pge-boot/GDebug.cc.
1687 * pge-boot/GDynamicStrings.c: Rename to pge-boot/GDynamicStrings.cc.
1688 * pge-boot/GFIO.c: Rename to pge-boot/GFIO.cc.
1689 * pge-boot/GIO.c: Rename to pge-boot/GIO.cc.
1690 * pge-boot/GIndexing.c: Rename to pge-boot/GIndexing.cc.
1691 * pge-boot/GLists.c: Rename to pge-boot/GLists.cc.
1692 * pge-boot/GM2Dependent.c: Rename to pge-boot/GM2Dependent.cc.
1693 * pge-boot/GM2EXCEPTION.c: Rename to pge-boot/GM2EXCEPTION.cc.
1694 * pge-boot/GM2LINK.c: Rename to pge-boot/GM2LINK.cc.
1695 * pge-boot/GM2RTS.c: Rename to pge-boot/GM2RTS.cc.
1696 * pge-boot/GNameKey.c: Rename to pge-boot/GNameKey.cc.
1697 * pge-boot/GNumberIO.c: Rename to pge-boot/GNumberIO.cc.
1698 * pge-boot/GOutput.c: Rename to pge-boot/GOutput.cc.
1699 * pge-boot/GPushBackInput.c: Rename to pge-boot/GPushBackInput.cc.
1700 * pge-boot/GRTExceptions.c: Rename to pge-boot/GRTExceptions.cc.
1701 * pge-boot/GRTco.c: Rename to pge-boot/GRTco.cc.
1702 * pge-boot/GSFIO.c: Rename to pge-boot/GSFIO.cc.
1703 * pge-boot/GSYSTEM.c: Rename to pge-boot/GSYSTEM.cc.
1704 * pge-boot/GSelective.c: Rename to pge-boot/GSelective.cc.
1705 * pge-boot/GStdIO.c: Rename to pge-boot/GStdIO.cc.
1706 * pge-boot/GStorage.c: Rename to pge-boot/GStorage.cc.
1707 * pge-boot/GStrCase.c: Rename to pge-boot/GStrCase.cc.
1708 * pge-boot/GStrIO.c: Rename to pge-boot/GStrIO.cc.
1709 * pge-boot/GStrLib.c: Rename to pge-boot/GStrLib.cc.
1710 * pge-boot/GSymbolKey.c: Rename to pge-boot/GSymbolKey.cc.
1711 * pge-boot/GSysExceptions.c: Rename to pge-boot/GSysExceptions.cc.
1712 * pge-boot/GSysStorage.c: Rename to pge-boot/GSysStorage.cc.
1713 * pge-boot/Gabort.c: Rename to pge-boot/Gabort.cc.
1714 * pge-boot/Gbnflex.c: Rename to pge-boot/Gbnflex.cc.
1715 * pge-boot/Gcbuiltin.c: Rename to pge-boot/Gcbuiltin.cc.
1716 * pge-boot/Gdtoa.c: Rename to pge-boot/Gdtoa.cc.
1717 * pge-boot/Gerrno.c: Rename to pge-boot/Gerrno.cc.
1718 * pge-boot/Gldtoa.c: Rename to pge-boot/Gldtoa.cc.
1719 * pge-boot/Glibc.c: Rename to pge-boot/Glibc.cc.
1720 * pge-boot/Glibm.c: Rename to pge-boot/Glibm.cc.
1721 * pge-boot/Gmcrts.c: Rename to pge-boot/Gmcrts.cc.
1722 * pge-boot/Gpge.c: Rename to pge-boot/Gpge.cc.
1723 * pge-boot/Gwrapc.c: Rename to pge-boot/Gwrapc.cc.
1724 * pge-boot/README: Correct description.
1725 * pge-boot/main.c: Rename to pge-boot/main.cc.
1726 * pge-boot/network.c: Rename to pge-boot/network.cc.
1728 2023-02-28 Gaius Mulley <gaiusmod2@gmail.com>
1731 * Make-lang.in (m2/gm2-libs-boot/M2RTS.o): New specific rule to
1732 add the --suppress-noreturn option.
1733 * Make-maintainer.in (m2/gm2-ppg-boot/$(SRC_PREFIX)M2RTS.o): New
1734 specific rule to add the --suppress-noreturn option.
1735 (m2/gm2-pg-boot/$(SRC_PREFIX)M2RTS.o): New
1736 specific rule to add the --suppress-noreturn option.
1737 (m2/gm2-pg-boot/$(SRC_PREFIX)%.o): Add missing $(srcdir).
1738 (m2/gm2-pge-boot/$(SRC_PREFIX)M2RTS.o): New
1739 specific rule to add the --suppress-noreturn option.
1740 (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Add missing $(srcdir).
1741 * gm2-libs-ch/UnixArgs.cc (LIBNAME): New define.
1742 (_M2_UnixArgs_ctor): Add LIBNAME parameter to RegisterModule.
1743 * gm2-libs-ch/dtoa.cc (LIBNAME): New define.
1744 (_M2_dtoa_ctor): Add LIBNAME parameter to RegisterModule.
1745 * gm2-libs-ch/ldtoa.cc (LIBNAME): New define.
1746 (_M2_ldtoa_ctor): Add LIBNAME parameter to RegisterModule.
1747 * pge-boot/m2rts.h (M2RTS_RegisterModule): Add libname
1749 * gm2-libs-ch/m2rts.h (M2RTS_RegisterModule): Add libname
1751 * mc-boot-ch/GUnixArgs.cc (_M2_UnixArgs_ctor): Remove.
1752 * pge-boot/GUnixArgs.cc (LIBNAME): New define.
1753 (_M2_UnixArgs_ctor): Add LIBNAME parameter to RegisterModule.
1754 * gm2-libs/RTint.def (AttachVector): Rename parameter.
1755 * mc-boot/GDynamicStrings.c: Rebuilt.
1756 * mc-boot/GFIO.c: Rebuilt.
1757 * mc-boot/GIndexing.c: Rebuilt.
1758 * mc-boot/GM2EXCEPTION.c: Rebuilt.
1759 * mc-boot/GPushBackInput.c: Rebuilt.
1760 * mc-boot/GRTExceptions.c: Rebuilt.
1761 * mc-boot/GRTint.c: Rebuilt.
1762 * mc-boot/GRTint.h: Rebuilt.
1763 * mc-boot/GStdIO.c: Rebuilt.
1764 * mc-boot/GStringConvert.c: Rebuilt.
1765 * mc-boot/GSysStorage.c: Rebuilt.
1766 * mc-boot/Gdecl.c: Rebuilt.
1767 * mc-boot/Gkeyc.c: Rebuilt.
1768 * mc-boot/GmcComment.c: Rebuilt.
1769 * mc-boot/GmcComp.c: Rebuilt.
1770 * mc-boot/GmcDebug.c: Rebuilt.
1771 * mc-boot/GmcMetaError.c: Rebuilt.
1772 * mc-boot/GmcOptions.c: Rebuilt.
1773 * mc-boot/GmcOptions.h: Rebuilt.
1774 * mc-boot/GmcStack.c: Rebuilt.
1775 * mc-boot/GnameKey.c: Rebuilt.
1776 * mc-boot/GsymbolKey.c: Rebuilt.
1777 * mc/decl.mod:: Rebuilt.
1778 * mc/mcOptions.def: Rebuilt.
1779 * mc/mcOptions.mod:: Rebuilt.
1780 * pge-boot/GDynamicStrings.c: Rebuilt.
1781 * pge-boot/GFIO.c: Rebuilt.
1782 * pge-boot/GIndexing.c: Rebuilt.
1783 * pge-boot/GM2EXCEPTION.c: Rebuilt.
1784 * pge-boot/GM2RTS.c: Rebuilt.
1785 * pge-boot/GNameKey.c: Rebuilt.
1786 * pge-boot/GPushBackInput.c: Rebuilt.
1787 * pge-boot/GRTExceptions.c: Rebuilt.
1788 * pge-boot/GStdIO.c: Rebuilt.
1789 * pge-boot/GSymbolKey.c: Rebuilt.
1790 * pge-boot/GSysStorage.c: Rebuilt.
1792 2023-02-25 Gaius Mulley <gaiusmod2@gmail.com>
1795 * Make-lang.in (GM2-COMP-BOOT-DEFS): DynamicStringPath.def
1796 remove. DynamicPath.def add.
1797 (GM2-COMP-BOOT-MODS): DynamicStringPath.mod remove.
1798 DynamicPath.mod add.
1799 * Make-maintainer.in (BUILD-BOOT-PPG-H): New dependency.
1800 (m2/gm2-ppg-boot/$(SRC_PREFIX)%.o): $(BUILD-BOOT-PPG-H) Add
1802 (PGE-DEF): New definition.
1803 (BUILD-BOOT-PG-H): New dependency.
1804 (m2/gm2-pg-boot/$(SRC_PREFIX)%.o): $(BUILD-BOOT-PG-H) Add
1806 (BUILD-BOOT-PGE-H): New dependency.
1807 (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): $(BUILD-BOOT-PGE-H) Add
1809 (GM2PATH): Add pathname entries.
1810 (m2/boot-bin/mc-devel$(exeext)): Add m2/mc-boot-ch/Gm2rtsdummy.o
1812 (m2/boot-bin/mc-opt$(exeext)): Fix -I path.
1813 * gm2-compiler/DynamicStringPath.def: Renamed module to
1815 (GetUserPath): Remove.
1816 (GetSystemPath): Remove.
1817 (SetUserPath): Remove.
1818 (SetSystemPath): Remove.
1819 (DumpPath): New procedure definition.
1820 * gm2-compiler/DynamicStringPath.mod: Renamed module to
1822 (GetUserPath): Remove.
1823 (GetSystemPath): Remove.
1824 (SetUserPath): Remove.
1825 (SetSystemPath): Remove.
1826 (DumpPath): Remove Debugging conditional.
1827 * gm2-compiler/M2AsmUtil.mod: Import EqualArray, NulName and
1829 (Debugging): New declaration.
1830 (GetFullSymName): Re-implemented to prefix (mange) libname
1831 to any extern variable/procedure which is IsExportQualified.
1832 * gm2-compiler/M2Comp.mod (qprintLibName): New procedure.
1833 * gm2-compiler/M2Graph.mod (resolveImports): Add libname.
1834 * gm2-compiler/M2Options.def (SetM2Prefix): New procedure.
1835 (GetM2Prefix): New procedure function.
1836 (SetM2PathName): New procedure.
1837 (GetM2PathName): New procedure function.
1838 * gm2-compiler/M2Options.mod: (SetM2Prefix): New procedure implemented.
1839 (GetM2Prefix): New procedure function implemented.
1840 (SetM2PathName): New procedure implemented.
1841 (GetM2PathName): New procedure function implemented.
1842 (RuntimeModuleOverride): Set to DefaultRuntimeModuleOverride.
1843 * gm2-compiler/M2Quads.mod: Import GetLibName.
1844 (SafeRequestSym) Pass result of GetLibName to RequestDependant.
1845 (callRequestDependant): Add libname as a parameter.
1846 (BuildM2InitFunction): Add libname as a parameter.
1847 (BuildM2FiniFunction): Add libname as a parameter.
1848 (BuildM2CtorFunction): Add libname as a parameter.
1849 * gm2-compiler/M2Scaffold.mod (LookupModuleSym): Set LibName
1850 if a definition source was found.
1851 * gm2-compiler/M2Search.def (FindSourceFile): Add named library parameter.
1852 (FindSourceDefFile): Add named library parameter.
1853 (FindSourceModFile): Add named library parameter.
1854 * gm2-compiler/M2Search.mod (FindSourceFile): Reimplement.
1855 (FindSourceDefFile): Add named library parameter.
1856 (FindSourceModFile): Add named library parameter.
1857 * gm2-compiler/SymbolTable.def (MakeProcedureCtorExtern): Add
1859 (PutLibName): New procedure.
1860 (GetLibName): New procedure function.
1861 * gm2-compiler/SymbolTable.mod (MakeProcedureCtorExtern): Add
1863 (GenName): Add libname parameter.
1864 (InitCtorFields): Add moduleSym as a parameter.
1865 (PutCtorExtern): Add libname parameter to GenName.
1866 * gm2-gcc/init.cc (_M2_DynamicStringPath_init): Rename function...
1867 (_M2_DynamicPath_init): ...to this.
1868 (_M2_PathName_init): Added.
1869 * gm2-gcc/m2decl.cc (m2decl_DeclareM2linkStaticInitialization):
1870 Add m2pim as the manged component of the exported symbol.
1871 (m2decl_DeclareM2linkForcedModuleInitOrder): Add m2pim mangle prefix.
1872 * gm2-gcc/m2options.h (M2Options_SetM2Prefix): New function.
1873 (M2Options_GetM2Prefix): New function.
1874 (M2Options_SetM2PathName): New function.
1875 (M2Options_GetM2PathName): New function.
1876 * gm2-lang.cc (push_back_Ipath): New function.
1877 (add_one_import_path): New function.
1878 (gm2_langhook_handle_option): Record -I component. Call
1879 SetM2PathName when -fm2-pathname= is seen. Record -fm2-pathnameI
1880 component. Call SetM2Prefix when -fm2-prefix= is seen.
1881 (gm2_langhook_post_options): Iterative over pathname entries
1882 and call SetM2PathName, SetSearchPath as appropriate.
1883 * gm2-libs-iso/M2RTS.def (ConstructModules): Add libname parameter.
1884 (DeconstructModules): Add libname parameter.
1885 (RegisterModule): Add libname parameter.
1886 (RequestDependant): Add libname parameter.
1887 * gm2-libs-iso/M2RTS.mod (ConstructModules): Add libname parameter.
1888 (DeconstructModules): Add libname parameter.
1889 (RegisterModule): Add libname parameter.
1890 (RequestDependant): Add libname parameter.
1891 * gm2-libs-min/M2RTS.def (ConstructModules): Add libname parameter.
1892 (DeconstructModules): Add libname parameter.
1893 (RegisterModule): Add libname parameter.
1894 (RequestDependant): Add libname parameter.
1895 * gm2-libs-min/M2RTS.mod (ConstructModules): Add libname parameter.
1896 (DeconstructModules): Add libname parameter.
1897 (RegisterModule): Add libname parameter.
1898 (RequestDependant): Add libname parameter.
1899 * gm2-libs/M2Dependent.def (ConstructModules): Add libname parameter.
1900 (DeconstructModules): Add libname parameter.
1901 (RegisterModule): Add libname parameter.
1902 (RequestDependant): Add libname parameter.
1903 * gm2-libs/M2Dependent.mod (ConstructModules): Add libname parameter.
1904 (DeconstructModules): Add libname parameter.
1905 (RegisterModule): Add libname parameter.
1906 (RequestDependant): Add libname parameter.
1907 * gm2-libs/M2RTS.def (ConstructModules): Add libname parameter.
1908 (DeconstructModules): Add libname parameter.
1909 (RegisterModule): Add libname parameter.
1910 (RequestDependant): Add libname parameter.
1911 * gm2-libs/M2RTS.mod (ConstructModules): Add libname parameter.
1912 (DeconstructModules): Add libname parameter.
1913 (RegisterModule): Add libname parameter.
1914 (RequestDependant): Add libname parameter.
1915 * gm2-libs/RTint.mod (FindVector): Rename variables.
1916 (initInputVector): Rename variables.
1917 (initOutputVector): Rename variables.
1918 (InitTimeVector): Rename variables.
1919 (FindVectorNo): Rename variables.
1920 (FindPendingVector): Rename variables.
1921 (ReArmTimeVector): Rename variables.
1922 (GetTimeVector): Rename variables.
1923 (AttachVector): Rename variables.
1924 (AttachVector): Rename variables.
1925 (IncludeVector): Rename variables.
1926 (ExcludeVector): Rename variables.
1927 (AddFd): Rename variables.
1928 (AddFd): Rename variables.
1929 (DumpPendingQueue): Rename variables.
1931 (activatePending): Rename variables.
1932 (Listen): Rename variables.
1933 * gm2-libs/libc.def (snprintf): New function.
1934 * gm2-libs/sckt.def: Change all exported identifiers to be
1936 * gm2spec.cc (push_back_Ipath): New function.
1937 (add_m2_I_path): New function.
1938 (lang_specific_driver): Skip -fm2-pathname= and remember pathname.
1939 Skip -I and record the path and current pathname. Call add_m2_I_path.
1940 * lang-specs.h: Replace %{I*} with %{fm2-pathname*}.
1941 * lang.opt (-fm2-pathname=): New entry.
1942 (-fm2-pathname): New entry.
1943 (-fm2-prefix=): New entry.
1944 * mc-boot-ch/GUnixArgs.cc (_M2_UnixArgs_dep): New function.
1945 (_M2_UnixArgs_ctor::_M2_UnixArgs_ctor): New method.
1946 * mc-boot-ch/Glibc.c (libc_snprintf): New function.
1947 * mc-boot-ch/m2rts.h (M2RTS_RequestDependant): Changed prototype.
1948 (M2RTS_RegisterModule): Changed prototype.
1949 * mc-boot/GDynamicStrings.c: Rebuild.
1950 * mc-boot/GFIO.c: Rebuild.
1951 * mc-boot/GIndexing.c: Rebuild.
1952 * mc-boot/GM2Dependent.c: Rebuild.
1953 * mc-boot/GM2Dependent.h: Rebuild.
1954 * mc-boot/GM2EXCEPTION.c: Rebuild.
1955 * mc-boot/GM2RTS.c: Rebuild.
1956 * mc-boot/GM2RTS.h: Rebuild.
1957 * mc-boot/GPushBackInput.c: Rebuild.
1958 * mc-boot/GRTExceptions.c: Rebuild.
1959 * mc-boot/GRTint.c: Rebuild.
1960 * mc-boot/GStdIO.c: Rebuild.
1961 * mc-boot/GStringConvert.c: Rebuild.
1962 * mc-boot/GSysStorage.c: Rebuild.
1963 * mc-boot/Gdecl.c: Rebuild.
1964 * mc-boot/Gkeyc.c: Rebuild.
1965 * mc-boot/Glibc.h: Rebuild.
1966 * mc-boot/GmcComment.c: Rebuild.
1967 * mc-boot/GmcComp.c: Rebuild.
1968 * mc-boot/GmcDebug.c: Rebuild.
1969 * mc-boot/GmcMetaError.c: Rebuild.
1970 * mc-boot/GmcStack.c: Rebuild.
1971 * mc-boot/GnameKey.c: Rebuild.
1972 * mc-boot/GsymbolKey.c: Rebuild.
1973 * pge-boot/GASCII.c: Rebuild.
1974 * pge-boot/GArgs.c: Rebuild.
1975 * pge-boot/GAssertion.c: Rebuild.
1976 * pge-boot/GDebug.c: Rebuild.
1977 * pge-boot/GDynamicStrings.c: Rebuild.
1978 * pge-boot/GFIO.c: Rebuild.
1979 * pge-boot/GIO.c: Rebuild.
1980 * pge-boot/GIndexing.c: Rebuild.
1981 * pge-boot/GLists.c: Rebuild.
1982 * pge-boot/GM2Dependent.c: Rebuild.
1983 * pge-boot/GM2Dependent.h: Rebuild.
1984 * pge-boot/GM2EXCEPTION.c: Rebuild.
1985 * pge-boot/GM2RTS.c: Rebuild.
1986 * pge-boot/GM2RTS.h: Rebuild.
1987 * pge-boot/GNameKey.c: Rebuild.
1988 * pge-boot/GNumberIO.c: Rebuild.
1989 * pge-boot/GOutput.c: Rebuild.
1990 * pge-boot/GPushBackInput.c: Rebuild.
1991 * pge-boot/GRTExceptions.c: Rebuild.
1992 * pge-boot/GSFIO.c: Rebuild.
1993 * pge-boot/GStdIO.c: Rebuild.
1994 * pge-boot/GStorage.c: Rebuild.
1995 * pge-boot/GStrCase.c: Rebuild.
1996 * pge-boot/GStrIO.c: Rebuild.
1997 * pge-boot/GStrLib.c: Rebuild.
1998 * pge-boot/GSymbolKey.c: Rebuild.
1999 * pge-boot/GSysExceptions.c (_M2_SysExceptions_finish): Rename this...
2000 (_M2_SysExceptions_fini): ... to this.
2001 * pge-boot/GSysStorage.c: Rebuild.
2002 (_M2_SysStorage_finish): Rename this...
2003 (_M2_SysStorage_fini): ... to this.
2004 * pge-boot/GUnixArgs.cc: New file.
2005 * pge-boot/Gbnflex.c (_M2_bnflex_finish): Rename this...
2006 (_M2_bnflex_fini): ... to this.
2007 * pge-boot/Gerrno.c (_M2_errno_finish): Rename this...
2008 (_M2_errno_fini): ... to this.
2009 * pge-boot/Glibc.c (libc_snprintf): New function.
2010 * pge-boot/Glibc.h (libc_snprintf): New prototype.
2011 * pge-boot/Gpge.c (_M2_pge_finish): Rename this...
2012 (_M2_pge_fini): ... to this.
2013 * pge-boot/Gtermios.cc (_M2_termios_finish): Rename this...
2014 (_M2_termios_fini): ... to this.
2015 * pge-boot/main.c (_M2_RTExceptions_finish): Rename this...
2016 (_M2_RTExceptions_fini): ... to this.
2017 (_M2_M2EXCEPTION_finish): Rename this...
2018 (_M2_M2EXCEPTION_fini): ... to this.
2019 (_M2_M2RTS_finish): Rename this...
2020 (_M2_M2RTS_fini): ... to this.
2021 (_M2_SysExceptions_finish): Rename this...
2022 (_M2_SysExceptions_fini): ... to this.
2023 (_M2_StrLib_finish): Rename this...
2024 (_M2_StrLib_fini): ... to this.
2025 (_M2_errno_finish): Rename this...
2026 (_M2_errno_fini): ... to this.
2027 (_M2_termios_finish): Rename this...
2028 (_M2_termios_fini): ... to this.
2029 (_M2_IO_finish): Rename this...
2030 (_M2_IO_fini): ... to this.
2031 (_M2_StdIO_finish): Rename this...
2032 (_M2_StdIO_fini): ... to this.
2033 (_M2_Debug_finish): Rename this...
2034 (_M2_Debug_fini): ... to this.
2035 (_M2_SysStorage_finish): Rename this...
2036 (_M2_SysStorage_fini): ... to this.
2037 (_M2_Storage_finish): Rename this...
2038 (_M2_Storage_fini): ... to this.
2039 (_M2_StrIO_finish): Rename this...
2040 (_M2_StrIO_fini): ... to this.
2041 (_M2_DynamicStrings_finish): Rename this...
2042 (_M2_DynamicStrings_fini): ... to this.
2043 (_M2_Assertion_finish): Rename this...
2044 (_M2_Assertion_fini): ... to this.
2045 (_M2_Indexing_finish): Rename this...
2046 (_M2_Indexing_fini): ... to this.
2047 (_M2_NameKey_finish): Rename this...
2048 (_M2_NameKey_fini): ... to this.
2049 (_M2_NumberIO_finish): Rename this...
2050 (_M2_NumberIO_fini): ... to this.
2051 (_M2_PushBackInput_finish): Rename this...
2052 (_M2_PushBackInput_fini): ... to this.
2053 (_M2_SymbolKey_finish): Rename this...
2054 (_M2_SymbolKey_fini): ... to this.
2055 (_M2_UnixArgs_finish): Rename this...
2056 (_M2_UnixArgs_fini): ... to this.
2057 (_M2_FIO_finish): Rename this...
2058 (_M2_FIO_fini): ... to this.
2059 (_M2_SFIO_finish): Rename this...
2060 (_M2_SFIO_fini): ... to this.
2061 (_M2_StrCase_finish): Rename this...
2062 (_M2_StrCase_fini): ... to this.
2063 (_M2_bnflex_finish): Rename this...
2064 (_M2_bnflex_fini): ... to this.
2065 (_M2_Lists_finish): Rename this...
2066 (_M2_Lists_fini): ... to this.
2067 (_M2_Args_finish): Rename this...
2068 (_M2_Args_fini): ... to this.
2069 (_M2_Output_finish): Rename this...
2070 (_M2_Output_fini): ... to this.
2071 (_M2_pge_finish): Rename this...
2072 (_M2_pge_fini): ... to this.
2073 * plugin/m2rte.cc (m2_runtime_error_calls): Change all runtime
2074 procedure names to their name mangled counterparts.
2075 * gm2-libs-iso/wrapsock.c: Removed.
2076 * gm2-libs-iso/wraptime.c: Removed.
2077 * mc-boot/Gpth.h: Removed.
2078 * gm2-compiler/PathName.def: New file.
2079 * gm2-compiler/PathName.mod: New file.
2080 * gm2-compiler/DynamicPath.def: New file.
2081 * gm2-compiler/DynamicPath.mod: New file.
2083 2023-02-06 Gaius Mulley <gaiusmod2@gmail.com>
2086 * gm2-compiler/M2Search.mod (DSdbEnter): Comment out.
2087 (DSdbExit): Comment out.
2089 2023-02-06 Co-Authored by: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2092 * m2pp.cc (m2pp_integer_cst): Use
2093 HOST_WIDE_INT_PRINT_UNSIGNED as the format specifier.
2095 2023-02-06 Gaius Mulley <gaiusmod2@gmail.com>
2097 * gm2-compiler/M2Preprocess.mod (BaseName): Comment out.
2098 * gm2-lang.cc (opt): Remove.
2099 * gm2spec.cc (add_include): Remove.
2100 (full_libraries): Remove.
2101 (concat_option): Remove.
2103 2023-02-03 Gaius Mulley <gaiusmod2@gmail.com>
2105 * Make-lang.in (TEXISRC): Remove m2/images/gnu.eps.
2106 (RSTSRC): Remove m2/images/gnu.eps.
2107 (doc/m2.dvi): Add $(objdir)/m2/images/gnu.eps.
2108 (doc/m2.pdf): Add $(objdir)/m2/images/gnu.eps.
2109 (M2_PDFFILES): New definition.
2110 (m2.install-pdf): New rule.
2111 (m2.pod): Add $(objdir)/m2/images/gnu.eps.
2112 (m2.info): Add $(objdir)/m2/images/gnu.eps.
2113 (m2.html): New rule.
2114 (m2/gpl_v3_without_node.texi): New rule.
2115 (plugin/m2rte$(soext)): Simplify mkinstalldirs.
2116 (cc1gm2$(exeext)): Ditto.
2117 (m2/stage1/cc1gm2$(exeext)): Ditto.
2118 (m2/gm2-gcc/%.o): Ditto.
2119 (m2/gm2-gcc/rtegraph.o): Ditto.
2120 (m2/gm2-gcc/$(SRC_PREFIX)%.h): Ditto.
2121 (m2/mc-boot/$(SRC_PREFIX)%.o):Ditto.
2122 (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto.
2123 (m2/mc-boot/main.o): Ditto.
2124 (m2/gm2-libs-boot/%.o): Ditto.
2125 (m2/gm2-libs-boot/$(SRC_PREFIX)%.h): Ditto.
2126 (m2/gm2-libs-boot/RTcodummy.o): Ditto.
2127 (m2/gm2-libs-boot/wrapc.o): Ditto.
2128 (m2/gm2-libs-boot/M2LINK.o): Ditto.
2129 (m2/gm2-libs-boot/UnixArgs.o): Ditto.
2130 (m2/gm2-libs-boot/choosetemp.o): Ditto.
2131 (m2/gm2-libs-boot/errno.o): Ditto.
2132 (m2/gm2-libs-boot/dtoa.o): Ditto.
2133 (m2/gm2-libs-boot/ldtoa.o): Ditto.
2134 (m2/gm2-libs-boot/termios.o): Ditto.
2135 (m2/gm2-libs-boot/SysExceptions.o): Ditto.
2136 (m2/gm2-libs-boot/SysStorage.o): Ditto.
2137 (m2/gm2-compiler-boot/M2GCCDeclare.o): Ditto.
2138 (m2/gm2-compiler-boot/M2Error.o): Ditto.
2139 (m2/gm2-compiler-boot/%.o): Ditto.
2140 (m2/gm2-compiler-boot/$(SRC_PREFIX)%.h): Ditto.
2141 (m2/gm2-compiler-boot/m2flex.o): Ditto.
2142 (m2/gm2-compiler/m2flex.c): Ditto.
2143 (m2/gm2-libiberty/$(SRC_PREFIX)%.h): Ditto.
2144 (m2/gm2-compiler/%.o): Ditto.
2145 (m2/gm2-compiler/m2flex.o): Ditto.
2146 (m2/gm2-compiler/%.o): Ditto.
2147 (m2/gm2-libs-iso/%.o): Ditto.
2148 (m2/gm2-libs/gm2-libs-host.h): Ditto.
2149 ($(objdir)/m2/gm2-libs-min/SYSTEM.def): Ditto.
2150 ($(objdir)/m2/gm2-libs/SYSTEM.def): Ditto.
2151 ($(objdir)/m2/gm2-libs-iso/SYSTEM.def): Ditto.
2152 ($(objdir)/m2/gm2-libs-coroutines/SYSTEM.def): Ditto.
2153 (m2/gm2-compiler/gm2.a): Ditto.
2154 (m2/gm2-libs-boot/libgm2.a): Ditto.
2155 (m2/gm2-compiler-boot/gm2.a): Ditto.
2156 (m2/boot-bin/mklink$(exeext)): Ditto.
2157 (m2/gm2-compiler-boot/$(SRC_PREFIX)%.h): Ditto.
2158 (m2/gm2-compiler/%.mod): Ditto.
2159 (m2/gm2-compiler-boot/%.mod): Ditto.
2160 (m2/pge-boot/%.o): Ditto.
2162 2023-02-01 Gaius Mulley <gaiusmod2@gmail.com>
2164 * Make-lang.in (GM2_FLAGS): Add -fno-return -Wreturn-type.
2165 (GM2_ISO_FLAGS): Add -fno-return -Wreturn-type.
2166 * Make-maintainer.in (GM2PATH): Split into separate -I components.
2167 (MC-LIB-DEFS): Add RTentity.def.
2168 (m2/boot-bin/mc-devel$(exeext)): Changed -I$(GM2PATH) to
2170 (m2/boot-bin/mc-opt$(exeext)): Separate -I paths.
2171 (m2/mc/decl.o): Separate -I paths.
2172 (gm2-bootstrap): Separate -I paths.
2173 (m2/mc-boot-gen/$(SRC_PREFIX)%.h): Separate -I paths.
2174 (m2/mc-boot-gen/$(SRC_PREFIX)decl.c): Separate -I paths.
2175 (m2/mc-boot-gen/$(SRC_PREFIX)%.c): Separate -I paths.
2176 (gm2.verifyparanoid): Separate -I paths.
2177 (gm2.verifystage12): Separate -I paths.
2178 * gm2-compiler/M2ALU.mod (GetConstructorElement): Add default
2179 Return NulSym. Remove return from the error case.
2180 * gm2-compiler/M2Base.mod (ComplexToScalar): Return RType
2181 from the error case.
2182 (MixMetaTypes): Return MakeError as a default.
2183 * gm2-compiler/M2GCCDeclare.mod (GetTypeMin): Return NulSym
2184 from the error case.
2185 (GetTypeMax): Return NulSym from the error case.
2186 * gm2-compiler/M2GenGCC.mod (IsExportedGcc): Replace Assert
2188 * gm2-compiler/M2Quads.mod (GetItemPointedTo): Add InternalError.
2189 (GetTypeMin): Add InternalError.
2190 (GetTypeMax): Add InternalError.
2191 * gm2-compiler/M2System.mod (InitSystem): Call
2192 PutProcedureNoReturn on Throw.
2193 * gm2-gcc/m2except.cc (m2except_InitExceptions): fn_throw_tree
2194 declare as noreturn. fn_rethrow_tree declare as noreturn.
2195 * gm2-libs-coroutines/Debug.def (Halt): Add noreturn attribute.
2196 * gm2-libs-coroutines/SYSTEM.def (THROW): Add noreturn attribute.
2197 * gm2-libs-iso/ClientSocket.mod (dorbytes): Add return FALSE.
2198 * gm2-libs-iso/EXCEPTIONS.def (RAISE): Add noreturn attribute.
2199 * gm2-libs-iso/IOLink.def (RAISEdevException): Add noreturn attribute.
2200 * gm2-libs-iso/M2RTS.def (HALT): Add noreturn attribute.
2203 (ErrorMessage): Ditto.
2204 (AssignmentException): Ditto.
2205 (ReturnException): Ditto.
2206 (IncException): Ditto.
2207 (DecException): Ditto.
2208 (InclException): Ditto.
2209 (ExclException): Ditto.
2210 (ShiftException): Ditto.
2211 (RotateException): Ditto.
2212 (StaticArraySubscriptException): Ditto.
2213 (DynamicArraySubscriptException): Ditto.
2214 (ForLoopBeginException): Ditto.
2215 (ForLoopToException): Ditto.
2216 (ForLoopEndException): Ditto.
2217 (PointerNilException): Ditto.
2218 (NoReturnException): Ditto.
2219 (CaseException): Ditto.
2220 (WholeNonPosDivException): Ditto.
2221 (WholeNonPosModException): Ditto.
2222 (WholeZeroDivException): Ditto.
2223 (WholeZeroRemException): Ditto.
2224 (WholeValueException): Ditto.
2225 (RealValueException): Ditto.
2226 (ParameterException): Ditto.
2227 (NoException): Ditto.
2228 * gm2-libs-iso/SYSTEM.def (THROW): Ditto.
2229 * gm2-libs-iso/TermFile.mod (dorbytes): Add default return FALSE.
2230 * gm2-libs-min/M2RTS.def: Add noreturn attribute.
2231 * gm2-libs/FIO.mod (BufferedRead): Return -1.
2232 (getFileName): Return NIL.
2233 (getFileNameLength): Return 0.
2234 * gm2-libs/M2RTS.def (HaltC): Add noreturn attribute.
2235 (AssignmentException): Ditto.
2236 (ReturnException): Ditto.
2237 (IncException): Ditto.
2238 (DecException): Ditto.
2239 (InclException): Ditto.
2240 (ExclException): Ditto.
2241 (ShiftException): Ditto.
2242 (RotateException): Ditto.
2243 (StaticArraySubscriptException): Ditto.
2244 (DynamicArraySubscriptException): Ditto.
2245 (ForLoopBeginException): Ditto.
2246 (ForLoopToException): Ditto.
2247 (ForLoopEndException): Ditto.
2248 (PointerNilException): Ditto.
2249 (NoReturnException): Ditto.
2250 (CaseException): Ditto.
2251 (WholeNonPosDivException): Ditto.
2252 (WholeNonPosModException): Ditto.
2253 (WholeZeroDivException): Ditto.
2254 (WholeZeroRemException): Ditto.
2255 (WholeValueException): Ditto.
2256 (RealValueException): Ditto.
2257 (ParameterException): Ditto.
2258 (NoException): Ditto.
2259 * gm2-libs/RTExceptions.def (Raise): Ditto.
2260 * gm2-libs/RTExceptions.mod (InvokeHandler): Ditto.
2261 * gm2-libs/SYSTEM.def (THROW): Ditto.
2262 * m2.flex (_M2_m2flex_fini): Remamed to...
2263 (_M2_m2flex_finish): ...here.
2264 * mc-boot-ch/GBuiltins.c (_M2_Builtins_finish): Remamed to...
2265 (_M2_Builtins_fini): ...this.
2266 * mc-boot-ch/GRTco.c (_M2_RTco_finish): Remamed to...
2267 (_M2_RTco_fini): ...this.
2268 * mc-boot-ch/GSYSTEM.c (_M2_SYSTEM_finish): Remamed to...
2269 (_M2_SYSTEM_fini): ...this.
2270 * mc-boot-ch/GSelective.c (_M2_Selective_finish): Remamed to...
2271 (_M2_Selective_fini): ...this.
2272 * mc-boot-ch/GSysExceptions.c (_M2_SysExceptions_init): Add
2274 (_M2_SysExceptions_finish): Remamed to...
2275 (_M2_SysExceptions_fini): ...this.
2276 * mc-boot-ch/GUnixArgs.cc (_M2_UnixArgs_finish): Remamed to...
2277 (_M2_UnixArgs_fini): ...this.
2278 (_M2_UnixArgs_ctor::_M2_UnixArgs_ctor): Change parameter
2279 to _M2_UnixArgs_fini.
2280 * mc-boot-ch/Gdtoa.c (_M2_dtoa_finish): Remamed to...
2281 (_M2_dtoa_fini): ...this.
2282 * mc-boot-ch/Gerrno.c (_M2_errno_finish): Remamed to...
2283 (_M2_errno_fini): ...this.
2284 * mc-boot-ch/Gldtoa.c (_M2_ldtoa_finish): Remamed to...
2285 (_M2_ldtoa_fini): ...this.
2286 * mc-boot-ch/Gtermios.cc (_M2_termios_init): Add parameters.
2287 (_M2_termios_finish): Remamed to...
2288 (_M2_termios_fini): ...this.
2289 * mc-boot-ch/Gwrapc.c (_M2_wrapc_init): Add parameters.
2290 (_M2_wrapc_finish): Remamed to...
2291 (_M2_wrapc_fini): ...this.
2292 * mc-boot/GASCII.c: Rebuild.
2293 * mc-boot/GArgs.c: Rebuild.
2294 * mc-boot/GAssertion.c: Rebuild.
2295 * mc-boot/GBreak.c: Rebuild.
2296 * mc-boot/GCmdArgs.c: Rebuild.
2297 * mc-boot/GDebug.c: Rebuild.
2298 * mc-boot/GDynamicStrings.c: Rebuild.
2299 * mc-boot/GEnvironment.c: Rebuild.
2300 * mc-boot/GFIO.c: Rebuild.
2301 * mc-boot/GFormatStrings.c: Rebuild.
2302 * mc-boot/GFpuIO.c: Rebuild.
2303 * mc-boot/GIO.c: Rebuild.
2304 * mc-boot/GIndexing.c: Rebuild.
2305 * mc-boot/GM2Dependent.c: Rebuild.
2306 * mc-boot/GM2EXCEPTION.c: Rebuild.
2307 * mc-boot/GM2RTS.c: Rebuild.
2308 * mc-boot/GM2RTS.h: Rebuild.
2309 * mc-boot/GMemUtils.c: Rebuild.
2310 * mc-boot/GNumberIO.c: Rebuild.
2311 * mc-boot/GPushBackInput.c: Rebuild.
2312 * mc-boot/GRTExceptions.c: Rebuild.
2313 * mc-boot/GRTExceptions.h: Rebuild.
2314 * mc-boot/GRTco.h: Rebuild.
2315 * mc-boot/GRTint.c: Rebuild.
2316 * mc-boot/GSArgs.c: Rebuild.
2317 * mc-boot/GSFIO.c: Rebuild.
2318 * mc-boot/GStdIO.c: Rebuild.
2319 * mc-boot/GStorage.c: Rebuild.
2320 * mc-boot/GStrCase.c: Rebuild.
2321 * mc-boot/GStrIO.c: Rebuild.
2322 * mc-boot/GStrLib.c: Rebuild.
2323 * mc-boot/GStringConvert.c: Rebuild.
2324 * mc-boot/GSysStorage.c: Rebuild.
2325 * mc-boot/GTimeString.c: Rebuild.
2326 * mc-boot/Galists.c: Rebuild.
2327 * mc-boot/Gdecl.c: Rebuild.
2328 * mc-boot/Gkeyc.c: Rebuild.
2329 * mc-boot/Glists.c: Rebuild.
2330 * mc-boot/GmcComment.c: Rebuild.
2331 * mc-boot/GmcComp.c: Rebuild.
2332 * mc-boot/GmcDebug.c: Rebuild.
2333 * mc-boot/GmcError.c: Rebuild.
2334 * mc-boot/GmcFileName.c: Rebuild.
2335 * mc-boot/GmcLexBuf.c: Rebuild.
2336 * mc-boot/GmcMetaError.c: Rebuild.
2337 * mc-boot/GmcOptions.c: Rebuild.
2338 * mc-boot/GmcPreprocess.c: Rebuild.
2339 * mc-boot/GmcPretty.c: Rebuild.
2340 * mc-boot/GmcPrintf.c: Rebuild.
2341 * mc-boot/GmcQuiet.c: Rebuild.
2342 * mc-boot/GmcReserved.c: Rebuild.
2343 * mc-boot/GmcSearch.c: Rebuild.
2344 * mc-boot/GmcStack.c: Rebuild.
2345 * mc-boot/GmcStream.c: Rebuild.
2346 * mc-boot/Gmcp1.c: Rebuild.
2347 * mc-boot/Gmcp2.c: Rebuild.
2348 * mc-boot/Gmcp3.c: Rebuild.
2349 * mc-boot/Gmcp4.c: Rebuild.
2350 * mc-boot/Gmcp5.c: Rebuild.
2351 * mc-boot/GnameKey.c: Rebuild.
2352 * mc-boot/GsymbolKey.c: Rebuild.
2353 * mc-boot/Gtop.c: Rebuild.
2354 * mc-boot/Gvarargs.c: Rebuild.
2355 * mc-boot/Gwlists.c: Rebuild.
2356 * mc-boot/GRTentity.h: New file.
2357 * mc/decl.mod (scaffoldStatic): Change _finish to _fini.
2358 * mc/mc.flex (_M2_mcflex_fini): New function.
2359 (_M2_mcflex_finish): Remove function.
2360 * tools-src/mklink.c (GenerateFinishCalls): Change
2362 (GeneratePrototypes): Change _finish to _fini.
2364 2023-01-31 Gaius Mulley <gaiusmod2@gmail.com>
2366 * Make-lang.in (gm2-libs.texi-check): Rename
2367 m2/gm2-libs-pim to m2/gm2-libs-log.
2368 * gm2-libs-pim/BitBlockOps.def: Moved to...
2369 * gm2-libs-log/BitBlockOps.def: ...here.
2370 * gm2-libs-pim/BitBlockOps.mod: Moved to...
2371 * gm2-libs-log/BitBlockOps.mod: ...here.
2372 * gm2-libs-pim/BitByteOps.def: Moved to...
2373 * gm2-libs-log/BitByteOps.def: ...here.
2374 * gm2-libs-pim/BitByteOps.mod: Moved to...
2375 * gm2-libs-log/BitByteOps.mod: ...here.
2376 * gm2-libs-pim/BitWordOps.def: Moved to...
2377 * gm2-libs-log/BitWordOps.def: ...here.
2378 * gm2-libs-pim/BitWordOps.mod: Moved to...
2379 * gm2-libs-log/BitWordOps.mod: ...here.
2380 * gm2-libs-pim/BlockOps.def: Moved to...
2381 * gm2-libs-log/BlockOps.def: ...here.
2382 * gm2-libs-pim/BlockOps.mod: Moved to...
2383 * gm2-libs-log/BlockOps.mod: ...here.
2384 * gm2-libs-pim/Break.c: Moved to...
2385 * gm2-libs-log/Break.c: ...here.
2386 * gm2-libs-pim/Break.def: Moved to...
2387 * gm2-libs-log/Break.def: ...here.
2388 * gm2-libs-pim/CardinalIO.def: Moved to...
2389 * gm2-libs-log/CardinalIO.def: ...here.
2390 * gm2-libs-pim/CardinalIO.mod: Moved to...
2391 * gm2-libs-log/CardinalIO.mod: ...here.
2392 * gm2-libs-pim/Conversions.def: Moved to...
2393 * gm2-libs-log/Conversions.def: ...here.
2394 * gm2-libs-pim/Conversions.mod: Moved to...
2395 * gm2-libs-log/Conversions.mod: ...here.
2396 * gm2-libs-pim/DebugPMD.def: Moved to...
2397 * gm2-libs-log/DebugPMD.def: ...here.
2398 * gm2-libs-pim/DebugPMD.mod: Moved to...
2399 * gm2-libs-log/DebugPMD.mod: ...here.
2400 * gm2-libs-pim/DebugTrace.def: Moved to...
2401 * gm2-libs-log/DebugTrace.def: ...here.
2402 * gm2-libs-pim/DebugTrace.mod: Moved to...
2403 * gm2-libs-log/DebugTrace.mod: ...here.
2404 * gm2-libs-pim/Delay.def: Moved to...
2405 * gm2-libs-log/Delay.def: ...here.
2406 * gm2-libs-pim/Delay.mod: Moved to...
2407 * gm2-libs-log/Delay.mod: ...here.
2408 * gm2-libs-pim/Display.def: Moved to...
2409 * gm2-libs-log/Display.def: ...here.
2410 * gm2-libs-pim/Display.mod: Moved to...
2411 * gm2-libs-log/Display.mod: ...here.
2412 * gm2-libs-pim/ErrorCode.def: Moved to...
2413 * gm2-libs-log/ErrorCode.def: ...here.
2414 * gm2-libs-pim/ErrorCode.mod: Moved to...
2415 * gm2-libs-log/ErrorCode.mod: ...here.
2416 * gm2-libs-pim/FileSystem.def: Moved to...
2417 * gm2-libs-log/FileSystem.def: ...here.
2418 * gm2-libs-pim/FileSystem.mod: Moved to...
2419 * gm2-libs-log/FileSystem.mod: ...here.
2420 * gm2-libs-pim/FloatingUtilities.def: Moved to...
2421 * gm2-libs-log/FloatingUtilities.def: ...here.
2422 * gm2-libs-pim/FloatingUtilities.mod: Moved to...
2423 * gm2-libs-log/FloatingUtilities.mod: ...here.
2424 * gm2-libs-pim/InOut.def: Moved to...
2425 * gm2-libs-log/InOut.def: ...here.
2426 * gm2-libs-pim/InOut.mod: Moved to...
2427 * gm2-libs-log/InOut.mod: ...here.
2428 * gm2-libs-pim/Keyboard.def: Moved to...
2429 * gm2-libs-log/Keyboard.def: ...here.
2430 * gm2-libs-pim/Keyboard.mod: Moved to...
2431 * gm2-libs-log/Keyboard.mod: ...here.
2432 * gm2-libs-pim/LongIO.def: Moved to...
2433 * gm2-libs-log/LongIO.def: ...here.
2434 * gm2-libs-pim/LongIO.mod: Moved to...
2435 * gm2-libs-log/LongIO.mod: ...here.
2436 * gm2-libs-pim/NumberConversion.def: Moved to...
2437 * gm2-libs-log/NumberConversion.def: ...here.
2438 * gm2-libs-pim/NumberConversion.mod: Moved to...
2439 * gm2-libs-log/NumberConversion.mod: ...here.
2440 * gm2-libs-pim/README.texi: Moved to...
2441 * gm2-libs-log/README.texi: ...here.
2442 * gm2-libs-pim/Random.def: Moved to...
2443 * gm2-libs-log/Random.def: ...here.
2444 * gm2-libs-pim/Random.mod: Moved to...
2445 * gm2-libs-log/Random.mod: ...here.
2446 * gm2-libs-pim/RealConversions.def: Moved to...
2447 * gm2-libs-log/RealConversions.def: ...here.
2448 * gm2-libs-pim/RealConversions.mod: Moved to...
2449 * gm2-libs-log/RealConversions.mod: ...here.
2450 * gm2-libs-pim/RealInOut.def: Moved to...
2451 * gm2-libs-log/RealInOut.def: ...here.
2452 * gm2-libs-pim/RealInOut.mod: Moved to...
2453 * gm2-libs-log/RealInOut.mod: ...here.
2454 * gm2-libs-pim/Strings.def: Moved to...
2455 * gm2-libs-log/Strings.def: ...here.
2456 * gm2-libs-pim/Strings.mod: Moved to...
2457 * gm2-libs-log/Strings.mod: ...here.
2458 * gm2-libs-pim/Termbase.def: Moved to...
2459 * gm2-libs-log/Termbase.def: ...here.
2460 * gm2-libs-pim/Termbase.mod: Moved to...
2461 * gm2-libs-log/Termbase.mod: ...here.
2462 * gm2-libs-pim/Terminal.def: Moved to...
2463 * gm2-libs-log/Terminal.def: ...here.
2464 * gm2-libs-pim/Terminal.mod: Moved to...
2465 * gm2-libs-log/Terminal.mod: ...here.
2466 * gm2-libs-pim/TimeDate.def: Moved to...
2467 * gm2-libs-log/TimeDate.def: ...here.
2468 * gm2-libs-pim/TimeDate.mod: Moved to...
2469 * gm2-libs-log/TimeDate.mod: ...here.
2471 2023-01-28 Iain Sandoe <iain@sandoe.co.uk>
2473 * lang.opt: Claim Wreturn-type.
2475 2023-01-27 Gaius Mulley <gaiusmod2@gmail.com>
2477 * gm2-compiler/M2Comp.mod: Import MetaString0.
2478 (ExamineCompilationUnit): New variable Message.
2479 Create and format error string.
2480 * gm2-compiler/M2LexBuf.mod: New variable SeenEof.
2481 (GetNonEofToken): New procedure.
2482 (Init): Set SeenEof to FALSE.
2483 (GetToken): Use GetNonEofToken instead of calls to
2484 m2flex.GetToken and GetToken.
2485 (AddTok): Detect eoftok and set SeenEof.
2487 2023-01-27 Gaius Mulley <gaiusmod2@gmail.com>
2489 * gm2-compiler/M2Options.def: Export GetMQ, SetMQ.
2490 * gm2-compiler/M2Preprocess.mod: (MakeSaveTempsFileName):
2491 Test NewDir against NIL. Test Dumpdir against NIL.
2492 Test GetMD () against NIL. Test GetMMD () against NIL.
2493 Test GetMQ () against NIL. Test GetObj () against NIL.
2494 Test tempfile against NIL.
2495 * gm2-compiler/P2SymBuild.def: Export
2496 BuildNoReturnAttribute.
2498 2023-01-27 Iain Sandoe <iain@sandoe.co.uk>
2503 * gm2-lang.cc (gm2_langhook_option_lang_mask): Do not claim CL_C
2505 (gm2_langhook_init_options): Handle options that we want to pass
2506 to the preprocessor.
2507 * lang-specs.h: Pass -B and -save-temps to regular compile lines.
2508 * lang.opt: Add C and Driver options that Modula-2 intercepts for
2509 internal use. Reorder options into two sections and to collate.
2511 2023-01-26 Gaius Mulley <gaiusmod2@gmail.com>
2513 * gm2-compiler/M2GCCDeclare.mod: Import IsProcedureNoReturn.
2514 (DeclareProcedureToGccWholeProgram): New variable declared and set
2515 returnType. Pass returnType to BuildEndFunctionDeclaration.
2516 Extra parameter IsProcedureNoReturn passed to
2517 BuildEndFunctionDeclaration.
2518 * gm2-compiler/M2Quads.mod (BuildM2MainFunction): Correct
2519 scaffold comment and add extra return 0.
2520 * gm2-compiler/P2Build.bnf: Import BuildNoReturnAttribute.
2521 (ProcedureHeading): Process EndBuildFormalParameters before
2522 parsing AttributeNoReturn.
2523 (DefProcedureHeading): Process EndBuildFormalParameters before
2524 parsing AttributeNoReturn.
2525 (AttributeNoReturn): Call BuildNoReturnAttribute.
2526 * gm2-compiler/P2SymBuild.def (BuildNoReturnAttribute): New
2528 * gm2-compiler/P2SymBuild.mod (BuildNoReturnAttribute): New
2530 * gm2-compiler/SymbolTable.def (PutProcedureInline): Corrected
2532 (PutProcedureNoReturn): New procedure.
2533 (IsProcedureNoReturn): New procedure function.
2534 * gm2-compiler/SymbolTable.mod (SymProcedure): IsNoReturn
2536 (MakeProcedure): Initialize IsNoReturn to FALSE.
2537 (PutProcedureNoReturn): New procedure.
2538 (IsProcedureNoReturn): New procedure function.
2539 * gm2-gcc/m2decl.cc (m2decl_BuildEndFunctionDeclaration):
2540 Add extra parameter isnoreturn. Set TREE_THIS_VOLATILE
2542 * gm2-gcc/m2decl.def (BuildEndFunctionDeclaration): Add
2543 extra parameter isnoreturn.
2544 * gm2-gcc/m2decl.h (m2decl_BuildEndFunctionDeclaration): Add
2545 extra parameter isnoreturn.
2546 * gm2-gcc/m2except.cc (m2except_InitExceptions): Change all
2547 function decl to pass an extra parameter isnoreturn.
2549 2023-01-26 Gaius Mulley <gaiusmod2@gmail.com>
2551 * m2.flex (splitSlashStar): Fix comment so that /* does not
2552 appear inside the comment.
2554 2023-01-26 Iain Sandoe <iain@sandoe.co.uk>
2557 * gm2-lang.cc (gm2_langhook_init_options): Remove debug code.
2559 2023-01-26 Gaius Mulley <gaiusmod2@gmail.com>
2561 * Make-lang.in (m2/gm2config.h): Rewrite rule to be
2562 dependent upon m2/gm2config.aci.
2563 (m2/gm2config.aci): Newrule.
2564 * configure.ac (AC_CONFIG_HEADERS): Change destination
2566 * configure: Regenerate.
2567 * gm2-libs/config-host: Regenerate.
2568 * gm2-compiler/M2GCCDeclare.mod (AddSymToWatch): Comment
2570 * gm2-compiler/M2Quads.mod (BuildConstHighFromSym): Remove
2572 (StartBuildWith): Call BuildStmtNoteTok.
2573 (BuildStmtNoteTok): New procedure.
2574 (BuildStmtNote): Re-implement re-factor into two
2575 procedures and call BuildStmtNoteTok.
2576 * gm2config.h.in: Remove.
2577 * gm2config.aci.in: New file.
2579 2023-01-25 Iain Sandoe <iain@sandoe.co.uk>
2583 * gm2-compiler/M2Comp.mod: Early exit for pre-processor-only jobs.
2584 * gm2-compiler/M2Options.def (SetPPOnly, GetPPOnly, SetMD, GetMD,
2585 SetMMD, GetMMD, SetMQ, GetMQ, SetObj, GetObj, SetDumpDir,
2587 * gm2-compiler/M2Options.mod:(SetPPOnly, GetPPOnly, SetMD, GetMD,
2588 SetMMD, GetMMD, SetMQ, GetMQ, SetObj, GetObj, SetDumpDir,
2590 * gm2-compiler/M2Preprocess.def (PreprocessModule): Add flag to
2591 indicate the main file.
2592 * gm2-compiler/M2Preprocess.mod: Handle Preprocess-only jobs,
2593 handle MD, MMD and MQ options.
2594 * gm2-gcc/m2options.h (M2Options_SetPPOnly, M2Options_GetPPOnly,
2595 M2Options_SetDumpDir, M2Options_SetMD, M2Options_GetMD,
2596 M2Options_SetMMD, M2Options_GetMMD, M2Options_SetMQ, M2Options_GetMQ,
2597 M2Options_SetObj, M2Options_GetObj): New.
2598 * gm2-gcc/m2type.cc (m2type_InitBaseTypes): Early exit for pre-
2599 processor-only jobs.
2600 * gm2-lang.cc (gm2_langhook_init): Handle preprocess-only commands.
2601 (gm2_langhook_option_lang_mask): Claim C and Driver options so that
2602 we can intercept them for building pre-processor commands.
2603 (gm2_langhook_init_options): Collect the preprocessor line here.
2604 Save options that have different actions for preprocessor and compile
2606 (gm2_langhook_handle_option): Only handle the modula-2 options here.
2607 (gm2_langhook_post_options): Do not create a back-end for pre-
2608 processor-only jobs.
2609 * gm2spec.cc (lang_specific_driver): Ignore PCH options, append a
2610 scaffold-main for cases where we are building a main module with
2612 * lang-specs.h: Revise to handle preprocessor-only jobs and to
2613 consume pre-processed files.
2614 * lang.opt: Remove Driver and C options copies (we claim these
2617 2023-01-24 Co-Authored by: Iain Sandoe <iain@sandoe.co.uk>
2619 * Make-lang.in (GM2-COMP-BOOT-DEFS): Add
2620 DynamicStringPath.def.
2621 (GM2-COMP-BOOT-MODS): Add DynamicStringPath.mod.
2622 (GM2-COMP-DEFS): Add DynamicStringPath.def.
2623 (GM2-COMP-MODS): Add DynamicStringPath.mod.
2624 ($(objdir)/m2/gm2-libs-min/SYSTEM.def): Split path into
2625 multiple -I components.
2626 ($(objdir)/m2/gm2-libs/SYSTEM.def): Ditto.
2627 ($(objdir)/m2/gm2-libs-coroutines/SYSTEM.def): Ditto.
2628 * gm2-compiler/M2Options.mod: Import DynamicStringPath.
2629 (SetSearchPath): Reimplement using DynamicStringPath
2631 * gm2-compiler/M2Search.def (InitSearchPath): Remove.
2632 (PrependSearchPath): Remove.
2633 * gm2-compiler/M2Search.mod (SFIO): Remove import.
2634 (DynamicStringPath): Add import.
2635 (Directory): Remove.
2637 (InitialPath): Remove.
2638 (InitSearchPath): Remove.
2639 (PrependSearchPath): Remove.
2640 (FindSourceFile): Re-implement.
2641 (FindSourceDefFile): Re-implement.
2642 (FindSourceModFile): Re-implement.
2643 * gm2-gcc/init.cc (_M2_DynamicStringPath_init):
2645 (init_FrontEndInit): Call _M2_DynamicStringPath_init.
2646 * tools-src/makeSystem: Allow multiple -I paths.
2647 * gm2-compiler/DynamicStringPath.def: New file.
2648 * gm2-compiler/DynamicStringPath.mod: New file.
2649 * gm2-gcc/m2options.h (M2Options_SetMakeIncludePath): Add
2652 2023-01-24 Gaius Mulley <gaiusmod2@gmail.com>
2654 * m2.flex (cpreprocessor): Add temporary variable
2655 which is initialized to 0.
2656 (commentCLevel): New variable.
2657 (endOfCComment): New function.
2658 (splitSlashStar): New function to split /* into / and *
2660 (COMMENTC): New flex state.
2661 ("/*"): New rule to test whether we should treat /*
2662 as a single token or as two tokens.
2663 (<COMMENTC>.): New rule to skip a character.
2664 (<COMMENTC>\n.*): New rule to consume the line.
2665 (<COMMENTC>"*/"): New rule to call endOfCComment.
2667 2023-01-24 Gaius Mulley <gaiusmod2@gmail.com>
2669 * gm2-libs-iso/RTco.def: Import RTentity.
2670 Declare RTco as a definition for C module.
2672 2023-01-23 Iain Sandoe <iain@sandoe.co.uk>
2676 * Make-lang.in: Pass libsubdir to the language init
2678 * gm2-lang.cc (INCLUDE_VECTOR): Define.
2679 (add_one_import_path): New.
2680 (add_m2_import_paths): New.
2681 (gm2_langhook_post_options): Arrange to add the include
2682 paths (and add the system ones) in the same order as C
2684 * gm2spec.cc (build_archive_path): Remove.
2685 (add_default_combination): Remove.
2686 (add_default_archives): Remove.
2687 (add_default_libs): We no longer need a '-L' option, just
2688 emit the -l and each library in use.
2689 (build_include_path): Remove.
2690 (add_include): Remove.
2691 (add_default_includes): Remove.
2692 (library_installed): Remove.
2693 (check_valid_library): Remove.
2694 (check_valid_list): Remove.
2695 (convert_abbreviation): Diagnose unhandled cases.
2696 (lang_specific_driver): Skip options where we will add back
2697 a validated version.
2698 * lang-specs.h (M2CPP): Reformat, append %I when -fcpp is not
2699 in use. Revise the cc1gm2 spec to omit mentioning options that
2700 are handled in the c pre-processor line.
2701 * lang.opt: Allow preprocessing and path options as input to the
2702 cc1gm2 invocation, so that they can be passed to the preprocessor
2705 2023-01-23 Iain Sandoe <iain@sandoe.co.uk>
2708 * gm2-libs-iso/Preemptive.mod (initPreemptive): Use a value for
2709 extra space that is divisible by common OS pagesizes.
2711 2023-01-20 Gaius Mulley <gaiusmod2@gmail.com>
2713 * gm2-libs/Args.mod (GetArg): Check index before
2715 * gm2-libs/M2Dependent.mod (toCString): Check index
2716 before accessing array.
2717 * mc-boot/GArgs.c: Rebuilt.
2718 * mc-boot/GM2Dependent.c: Rebuilt.
2719 * mc-boot/Gkeyc.c: Rebuilt.
2720 * mc/keyc.mod (seenUIntMin): Initialize once.
2721 (seenUIntMax): Initialize once.
2722 (checkLimits): Only test seenUIntMin and seenUIntMax
2724 * pge-boot/GArgs.c: Rebuilt.
2725 * pge-boot/GM2Dependent.c: Rebuilt.
2727 2023-01-20 Gaius Mulley <gaiusmod2@gmail.com>
2729 * gm2-gcc/m2statement.cc (gm2_gimplify_function_node):
2731 * gm2-libs/DynamicStrings.mod (Equal): Remove dead code.
2732 * m2.flex (<COMMENT>"<*"): Add {} for else statement.
2733 * m2pp.cc (hextree): Add conditional #ifdef DEBUGGING.
2734 * mc-boot/GDynamicStrings.c: Rebuild.
2735 * pge-boot/GDynamicStrings.c: Rebuild.
2736 * pge-boot/GFIO.c: Rebuild.
2737 * pge-boot/GIndexing.c: Rebuild.
2738 * pge-boot/GM2EXCEPTION.c: Rebuild.
2739 * pge-boot/GM2RTS.c: Rebuild.
2740 * pge-boot/GNameKey.c: Rebuild.
2741 * pge-boot/GPushBackInput.c: Rebuild.
2742 * pge-boot/GRTExceptions.c: Rebuild.
2743 * pge-boot/GStdIO.c: Rebuild.
2744 * pge-boot/GSymbolKey.c: Rebuild.
2745 * pge-boot/GSysStorage.c: Rebuild.
2747 2023-01-17 Gaius Mulley <gaiusmod2@gmail.com>
2749 * mc-boot/GM2RTS.c: Rebuilt.
2750 * mc-boot/GM2RTS.h: Rebuilt.
2751 * mc-boot/Gdecl.c: Rebuilt.
2752 * mc-boot/GmcOptions.c: Rebuilt.
2753 * mc/mcOptions.mod (displayVersion):
2754 Split first printf into three components
2756 2023-01-17 Gaius Mulley <gaiusmod2@gmail.com>
2758 * gm2-libs-iso/M2RTS.def (Halt): Parameter file renamed to filename.
2759 (HaltC): New procedure declaration.
2760 (ErrorMessage): Parameter file renamed to filename.
2761 * gm2-libs-iso/M2RTS.mod (Halt): Parameter file renamed to
2763 (HaltC): New procedure implementation.
2764 (ErrorStringC): New procedure implementation.
2765 (ErrorMessageC): New procedure implementation.
2766 * gm2-libs/M2RTS.def (Halt): Parameter file renamed to filename.
2767 (HaltC): New procedure declaration.
2768 (ErrorMessage): Parameter file renamed to filename.
2769 * gm2-libs/M2RTS.mod (Halt): Parameter file renamed to filename.
2770 (HaltC): New procedure implementation.
2771 (ErrorStringC): New procedure implementation.
2772 (ErrorMessageC): New procedure implementation.
2774 2023-01-16 Gaius Mulley <gaiusmod2@gmail.com>
2776 * mc-boot-ch/Glibc.c (libc_time): New function.
2777 (libc_localtime): New function.
2778 * mc-boot/GDynamicStrings.c: Regenerate.
2779 * mc-boot/GFIO.c: Regenerate.
2780 * mc-boot/GFormatStrings.c: Regenerate.
2781 * mc-boot/GIndexing.c: Regenerate.
2782 * mc-boot/GM2Dependent.c: Regenerate.
2783 * mc-boot/GM2EXCEPTION.c: Regenerate.
2784 * mc-boot/GPushBackInput.c: Regenerate.
2785 * mc-boot/GRTExceptions.c: Regenerate.
2786 * mc-boot/GRTint.c: Regenerate.
2787 * mc-boot/GStdIO.c: Regenerate.
2788 * mc-boot/GStringConvert.c: Regenerate.
2789 * mc-boot/GSysStorage.c: Regenerate.
2790 * mc-boot/Gdecl.c: Regenerate.
2791 * mc-boot/GmcComment.c: Regenerate.
2792 * mc-boot/GmcComp.c: Regenerate.
2793 * mc-boot/GmcDebug.c: Regenerate.
2794 * mc-boot/GmcMetaError.c: Regenerate.
2795 * mc-boot/GmcOptions.c: Regenerate.
2796 * mc-boot/GmcStack.c: Regenerate.
2797 * mc-boot/GnameKey.c: Regenerate.
2798 * mc-boot/GsymbolKey.c: Regenerate.
2799 * mc-boot/Gkeyc.c: Regenerate.
2800 * mc/decl.mod (putFieldRecord): Change NulName to NulKey
2801 and fix type comparision.
2802 * mc/mcOptions.mod (YEAR): Remove.
2803 (getYear): New procedure function.
2804 (displayVersion): Use result from getYear instead of YEAR.
2805 Emit boilerplate for GPL v3.
2806 (gplBody): Use result from getYear instead of YEAR.
2807 (glplBody): Use result from getYear instead of YEAR.
2809 2023-01-16 Gaius Mulley <gaiusmod2@gmail.com>
2811 * gm2-compiler/M2Quads.mod (AssignUnboundedVar): Check Type
2812 against NulSym and call MetaErrorT1 if necessary.
2813 (AssignUnboundedNonVar): Check Type against NulSym and
2814 call MetaErrorT1 if necessary.
2815 (BuildDesignatorPointer): Check Type1 against NulSym and
2816 call MetaErrorT1 if necessary.
2818 2023-01-16 Gaius Mulley <gaiusmod2@gmail.com>
2820 * mc/mcOptions.mod (displayVersion): Change GPLv2 to GPLv3.
2823 2023-01-15 Gaius Mulley <gaiusmod2@gmail.com>
2825 * gm2-compiler/M2LexBuf.mod (isSrcToken): Add block comment.
2827 * gm2-compiler/M2Quads.def (BuildNot): Add notTokPos parameter.
2828 * gm2-compiler/M2Quads.mod (BuildNot): Add notTokPos parameter.
2829 Create and push virtual token.
2830 (PopBooltok): New procedure.
2831 (PushBooltok): New procedure.
2832 (PushBool): Re-implement using PushBooltok.
2833 (PopBool): Re-implement using PopBooltok.
2834 * gm2-compiler/P3Build.bnf (ConstFactor): Record token
2836 (Factor): Record token position of NOT.
2837 * gm2-compiler/PHBuild.bnf (ConstFactor): Record token
2839 (Relation): Push token position.
2840 (UnaryOrConstTerm): Push token position.
2841 (AddOperator): Push token position.
2842 (MulOperator): Push token position.
2844 2023-01-13 Iain Sandoe <iain@sandoe.co.uk>
2846 * gm2-gcc/m2options.h (M2Options_SetVerbose): Export the
2848 * gm2-lang.cc: Handle OPT_v, passing it to the compiler.
2849 * lang-specs.h: Pass -v to cc1gm2.
2851 2023-01-13 Gaius Mulley <gaiusmod2@gmail.com>
2853 * mc-boot-ch/GRTco.c (RTco_select): Add return 0.
2854 * pge-boot/GRTco.c (RTco_select): Add return 0.
2856 2023-01-10 Gaius Mulley <gaiusmod2@gmail.com>
2858 * Make-lang.in (m2/mc-boot/$(SRC_PREFIX)%.o): Add
2859 m2/gm2-libs/gm2-libs-host.h dependency.
2860 (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Add
2861 m2/gm2-libs/gm2-libs-host.h dependency.
2863 2023-01-10 Gaius Mulley <gaiusmod2@gmail.com>
2865 * Make-lang.in (GM2_1): Change -B path to m2/stage1.
2866 ($(objdir)/m2/images/gnu.eps): Check and create dest dir
2868 (gm2-libs.texi-check): Check and create dir m2/gm2-libs-pim,
2869 m2/gm2-libs-iso and m2/gm2-libs if necessary.
2870 ($(objdir)/m2/gm2-compiler-boot): Remove.
2871 ($(objdir)/m2/gm2-libs-boot): Remove.
2872 ($(objdir)/m2/gm2-libs-libiberty): Remove.
2873 ($(objdir)/m2/gm2-libiberty): Remove.
2874 ($(objdir)/m2/gm2-gcc): Remove.
2875 ($(objdir)/m2/gm2-compiler): Remove.
2876 ($(objdir)/m2/gm2-libs): Remove.
2877 ($(objdir)/m2/gm2-libs-iso): Remove.
2878 ($(objdir)/m2/gm2-libs-min): Remove.
2879 ($(objdir)/m2/gm2-compiler-paranoid): Remove.
2880 ($(objdir)/m2/gm2-libs-paranoid): Remove.
2881 ($(objdir)/m2/gm2-compiler-verify): Remove.
2882 ($(objdir)/m2/boot-bin): Remove.
2883 ($(objdir)/m2/gm2-libs-pim): Remove.
2884 ($(objdir)/m2/gm2-libs-coroutines): Remove.
2885 (stage1/m2): Remove.
2886 (stage2/m2): Remove.
2887 (stage3/m2): Remove.
2888 (m2.stageprofile): New rule.
2889 (m2.stagefeedback): New rule.
2890 (cc1gm2$(exeext)): Change dependent name.
2891 (m2/stage2/cc1gm2$(exeext)): Change dependent name.
2892 Check and create dest dir.
2893 (m2/stage1/cc1gm2$(exeext)): Check and create dest dir
2895 (m2/gm2-gcc/%.o): Ditto.
2896 (m2/gm2-gcc/rtegraph.o): Ditto.
2897 (m2/gm2-gcc/$(SRC_PREFIX)%.h): Ditto.
2898 (m2/gm2-gcc/$(SRC_PREFIX)%.h): Ditto.
2899 (m2/mc-boot): Ditto.
2900 (m2/mc-boot-ch): Ditto.
2901 (m2/gm2-libs-boot): Ditto.
2902 (m2/gm2-compiler-boot): Ditto.
2903 (m2/gm2-compiler): Ditto.
2904 (m2/gm2-libiberty): Ditto.
2905 (m2/gm2-compiler): Ditto.
2906 (m2/gm2-libs-iso): Ditto.
2907 (m2/gm2-libs): Ditto.
2908 (m2/gm2-libs-min): Ditto.
2909 (m2/gm2-libs-coroutines): Ditto.
2910 (m2/boot-bin): Ditto.
2911 (m2/pge-boot): Ditto.
2912 (m2/pge-boot): Ditto.
2913 * Make-maintainer.in (m2/gm2-ppg-boot): Check and create
2914 dest dir if necessary.
2916 (m2/gm2-ppg-boot): Ditto.
2917 (m2/gm2-pg-boot): Ditto.
2918 (m2/gm2-auto): Ditto.
2919 (m2/gm2-pg-boot): Ditto.
2920 (m2/gm2-pge-boot): Ditto.
2921 ($(objdir)/plugin): Ditto.
2922 ($(objdir)/m2/mc-boot-ch): Ditto.
2923 ($(objdir)/m2/mc-boot-gen): Ditto.
2924 (m2/boot-bin): Ditto.
2927 ($(objdir)/m2/gm2-ppg-boot): Ditto.
2928 ($(objdir)/m2/gm2-pg-boot): Ditto.
2929 ($(objdir)/m2/gm2-pge-boot): Ditto.
2930 (m2/mc-boot-gen): Ditto.
2932 (m2/gm2-libs-paranoid): Ditto.
2933 (m2/gm2-compiler-paranoid): Ditto.
2934 (m2/gm2-libs-paranoid): Ditto.
2935 (m2/gm2-compiler-paranoid): Ditto.
2936 (m2/gm2-libs-paranoid): Ditto.
2937 (m2/gm2-compiler-paranoid): Ditto.
2938 * config-lang.in (m2/gm2-compiler-boot): Remove mkdir.
2939 (m2/gm2-libs-boot): Ditto.
2940 (m2/gm2-ici-boot): Ditto.
2941 (m2/gm2-libiberty): Ditto.
2942 (m2/gm2-gcc): Ditto.
2943 (m2/gm2-compiler): Ditto.
2944 (m2/gm2-libs): Ditto.
2945 (m2/gm2-libs-iso): Ditto.
2946 (m2/gm2-compiler-paranoid): Ditto.
2947 (m2/gm2-libs-paranoid): Ditto.
2948 (m2/gm2-compiler-verify): Ditto.
2949 (m2/boot-bin): Ditto.
2950 (m2/gm2-libs-pim): Ditto.
2951 (m2/gm2-libs-coroutines): Ditto.
2952 (m2/gm2-libs-min): Ditto.
2953 (m2/pge-boot): Ditto.
2959 (m2/gm2-auto): Ditto.
2960 (m2/gm2-pg-boot): Ditto.
2961 (m2/gm2-pge-boot): Ditto.
2962 (m2/gm2-ppg-boot): Ditto.
2963 (m2/mc-boot): Ditto.
2964 (m2/mc-boot-ch): Ditto.
2965 (m2/mc-boot-gen): Ditto.
2967 2023-01-09 Gaius Mulley <gaiusmod2@gmail.com>
2969 * Make-lang.in (m2/pge-boot/%.o): Add m2/gm2config.h.
2970 * gm2-libs/config-host: Regenerate.
2972 2023-01-07 Iain Sandoe <iain@sandoe.co.uk>
2974 * gm2-libs-min/libc.c (abort): Update declaration to match the
2975 expected form, add no-return attribute.
2976 (exit): Add no-return attribute.
2978 2023-01-05 Iain Sandoe <iain@sandoe.co.uk>
2981 * gm2-gcc/m2builtins.cc: Remove scalb, scalbf, scalbl,
2982 significand, significandf, significandl.
2983 * gm2-libs/Builtins.def (significand): Likewise.
2984 * gm2-libs/Builtins.mod: Likewise.
2985 * target-independent/Builtins.texi: Likewise.
2986 * gm2-libs-iso/LowLong.mod: Implement fraction with scalbn*() and
2988 * gm2-libs-iso/LowReal.mod: Likewise.
2989 * gm2-libs-iso/LowShort.mod: Likewise.
2991 2023-01-05 Gaius Mulley <gaiusmod2@gmail.com>
2993 * gm2-libs-min/M2RTS.def (ConstructModules): New procedure
2995 (DeconstructModules): New procedure declaration.
2996 * gm2-libs-min/M2RTS.mod (ConstructModules): New procedure
2997 dummy implementation.
2998 (DeconstructModules): New procedure dummy implementation.
3000 2023-01-05 Iain Sandoe <iain@sandoe.co.uk>
3002 * gm2spec.cc (lang_specific_driver): Handle static-libgm2.
3003 * lang.opt: Add static-libgm2.
3005 2023-01-05 Iain Sandoe <iain@sandoe.co.uk>
3007 * gm2spec.cc (lang_specific_driver): Pass -static-libstdc++ on to
3008 the target driver if the linker does not support Bstatic/dynamic.
3010 2023-01-04 Iain Sandoe <iain@sandoe.co.uk>
3013 * gm2-libs-ch/UnixArgs.cc (_M2_UnixArgs_ctor): Rework to use
3014 an extern "C" function with 'constructor' attribute.
3015 * gm2-libs-ch/dtoa.cc (_M2_dtoa_ctor): Likewise.
3016 * gm2-libs-ch/ldtoa.cc (_M2_ldtoa_ctor): Likewise.
3018 2023-01-04 Iain Sandoe <iain@sandoe.co.uk>
3021 * gm2-gcc/m2decl.cc (m2decl_DeclareModuleCtor): Make module
3022 registration constructors visible.
3024 2023-01-04 Iain Sandoe <iain@sandoe.co.uk>
3026 * Make-lang.in (dvi, ps, pdf): Build in the gcc/doc directory, also
3027 use the configured tools for texi -> dvi and texi -> pdf.
3029 2023-01-01 Iain Sandoe <iain@sandoe.co.uk>
3030 Gaius Mulley <gaiusmod2@gmail.com>
3033 * gm2-compiler/M2GCCDeclare.mod: Module registration constructors are
3034 externs to the builder of m2_link.
3036 2022-12-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3037 Iain Sandoe <iain@sandoe.co.uk>
3040 * Make-lang.in (soext): Use .dylib for Darwin.
3041 (PLUGINLDFLAGS): Use dynmic lookup, set the plugin name, and append
3042 -nodefaultlibs to suppress the linking of libstdc++.
3043 Use INCINTL in compile lines for the plugin.
3045 2022-12-21 Jakub Jelinek <jakub@redhat.com>
3048 * gm2-gcc/m2linemap.def (location_t): Use CARDINAL instead of INTEGER.
3050 2022-12-19 Jakub Jelinek <jakub@redhat.com>
3052 * gm2-gcc/m2linemap.cc (m2linemap_ErrorAt, m2linemap_ErrorAtf,
3053 m2linemap_WarningAtf, m2linemap_NoteAtf, m2linemap_internal_error):
3054 Call functions with "%s", message rather than just message, so that
3055 % chars in message aren't treated as format specifiers.
3057 2022-12-19 Jakub Jelinek <jakub@redhat.com>
3060 * gm2-gcc/m2linemap.def (ErrorAtf, WarningAtf, NoteAtf):
3061 Comment out prototypes with varargs.
3062 * gm2-gcc/m2linemap.h (m2linemap_ErrorAtf, m2linemap_WarningAtf,
3063 m2linemap_NoteAtf): No longer varargs.
3064 * gm2-gcc/m2linemap.cc (m2linemap_ErrorAtf): Turned into a
3065 non-varargs wrapper around ...
3066 (m2linemap_ErrorAtf_1): ... this. New static function.
3067 (m2linemap_WarningAtf): Turned into a non-varargs wrapper around ...
3068 (m2linemap_WarningAtf_1): ... this. New static function.
3069 (m2linemap_NoteAtf): Turned into a non-varargs wrapper around ...
3070 (m2linemap_NoteAtf_1): ... this. New static function.
3072 2022-12-15 Gaius Mulley <gaiusmod2@gmail.com>
3074 * configure.ac: Stop probing for realpath.
3075 * tools-src/calcpath: Break dependency on realpath, cut
3077 * configure: Rebuilt.
3079 2022-12-15 Gaius Mulley <gaiusmod2@gmail.com>
3081 * gm2config.h.in: Rebuilt.
3083 2022-12-14 Gaius Mulley <gaiusmod2@gmail.com>
3085 * COPYING.FDL: New file.
3086 * COPYING.RUNTIME: New file.
3087 * COPYING3: New file.
3088 * COPYING3.LIB: New file.
3089 * Make-lang.in: New file.
3090 * Make-maintainer.in: New file.
3093 * config-lang.in: New file.
3094 * config-make.in: New file.
3095 * configure.ac: New file.
3096 * gm2-compiler/CLexBuf.def: New file.
3097 * gm2-compiler/CLexBuf.mod: New file.
3098 * gm2-compiler/FifoQueue.def: New file.
3099 * gm2-compiler/FifoQueue.mod: New file.
3100 * gm2-compiler/Lists.def: New file.
3101 * gm2-compiler/Lists.mod: New file.
3102 * gm2-compiler/M2ALU.def: New file.
3103 * gm2-compiler/M2ALU.mod: New file.
3104 * gm2-compiler/M2AsmUtil.def: New file.
3105 * gm2-compiler/M2AsmUtil.mod: New file.
3106 * gm2-compiler/M2Base.def: New file.
3107 * gm2-compiler/M2Base.mod: New file.
3108 * gm2-compiler/M2BasicBlock.def: New file.
3109 * gm2-compiler/M2BasicBlock.mod: New file.
3110 * gm2-compiler/M2Batch.def: New file.
3111 * gm2-compiler/M2Batch.mod: New file.
3112 * gm2-compiler/M2Bitset.def: New file.
3113 * gm2-compiler/M2Bitset.mod: New file.
3114 * gm2-compiler/M2CaseList.def: New file.
3115 * gm2-compiler/M2CaseList.mod: New file.
3116 * gm2-compiler/M2Check.def: New file.
3117 * gm2-compiler/M2Check.mod: New file.
3118 * gm2-compiler/M2Code.def: New file.
3119 * gm2-compiler/M2Code.mod: New file.
3120 * gm2-compiler/M2ColorString.def: New file.
3121 * gm2-compiler/M2ColorString.mod: New file.
3122 * gm2-compiler/M2Comp.def: New file.
3123 * gm2-compiler/M2Comp.mod: New file.
3124 * gm2-compiler/M2Const.def: New file.
3125 * gm2-compiler/M2Const.mod: New file.
3126 * gm2-compiler/M2Debug.def: New file.
3127 * gm2-compiler/M2Debug.mod: New file.
3128 * gm2-compiler/M2DebugStack.def: New file.
3129 * gm2-compiler/M2DebugStack.mod: New file.
3130 * gm2-compiler/M2Defaults.def: New file.
3131 * gm2-compiler/M2Defaults.mod: New file.
3132 * gm2-compiler/M2DriverOptions.def: New file.
3133 * gm2-compiler/M2DriverOptions.mod: New file.
3134 * gm2-compiler/M2Emit.def: New file.
3135 * gm2-compiler/M2Emit.mod: New file.
3136 * gm2-compiler/M2Error.def: New file.
3137 * gm2-compiler/M2Error.mod: New file.
3138 * gm2-compiler/M2EvalSym.def: New file.
3139 * gm2-compiler/M2FileName.def: New file.
3140 * gm2-compiler/M2FileName.mod: New file.
3141 * gm2-compiler/M2GCCDeclare.def: New file.
3142 * gm2-compiler/M2GCCDeclare.mod: New file.
3143 * gm2-compiler/M2GenGCC.def: New file.
3144 * gm2-compiler/M2GenGCC.mod: New file.
3145 * gm2-compiler/M2Graph.def: New file.
3146 * gm2-compiler/M2Graph.mod: New file.
3147 * gm2-compiler/M2Lex.def: New file.
3148 * gm2-compiler/M2Lex.mod: New file.
3149 * gm2-compiler/M2LexBuf.def: New file.
3150 * gm2-compiler/M2LexBuf.mod: New file.
3151 * gm2-compiler/M2MetaError.def: New file.
3152 * gm2-compiler/M2MetaError.mod: New file.
3153 * gm2-compiler/M2Optimize.def: New file.
3154 * gm2-compiler/M2Optimize.mod: New file.
3155 * gm2-compiler/M2Options.def: New file.
3156 * gm2-compiler/M2Options.mod: New file.
3157 * gm2-compiler/M2Pass.def: New file.
3158 * gm2-compiler/M2Pass.mod: New file.
3159 * gm2-compiler/M2Preprocess.def: New file.
3160 * gm2-compiler/M2Preprocess.mod: New file.
3161 * gm2-compiler/M2Printf.def: New file.
3162 * gm2-compiler/M2Printf.mod: New file.
3163 * gm2-compiler/M2Quads.def: New file.
3164 * gm2-compiler/M2Quads.mod: New file.
3165 * gm2-compiler/M2Quiet.def: New file.
3166 * gm2-compiler/M2Quiet.mod: New file.
3167 * gm2-compiler/M2Range.def: New file.
3168 * gm2-compiler/M2Range.mod: New file.
3169 * gm2-compiler/M2Reserved.def: New file.
3170 * gm2-compiler/M2Reserved.mod: New file.
3171 * gm2-compiler/M2SSA.def: New file.
3172 * gm2-compiler/M2SSA.mod: New file.
3173 * gm2-compiler/M2Scaffold.def: New file.
3174 * gm2-compiler/M2Scaffold.mod: New file.
3175 * gm2-compiler/M2Scope.def: New file.
3176 * gm2-compiler/M2Scope.mod: New file.
3177 * gm2-compiler/M2Search.def: New file.
3178 * gm2-compiler/M2Search.mod: New file.
3179 * gm2-compiler/M2Size.def: New file.
3180 * gm2-compiler/M2Size.mod: New file.
3181 * gm2-compiler/M2StackAddress.def: New file.
3182 * gm2-compiler/M2StackAddress.mod: New file.
3183 * gm2-compiler/M2StackWord.def: New file.
3184 * gm2-compiler/M2StackWord.mod: New file.
3185 * gm2-compiler/M2Students.def: New file.
3186 * gm2-compiler/M2Students.mod: New file.
3187 * gm2-compiler/M2Swig.def: New file.
3188 * gm2-compiler/M2Swig.mod: New file.
3189 * gm2-compiler/M2System.def: New file.
3190 * gm2-compiler/M2System.mod: New file.
3191 * gm2-compiler/M2Version.def: New file.
3192 * gm2-compiler/NameKey.def: New file.
3193 * gm2-compiler/NameKey.mod: New file.
3194 * gm2-compiler/ObjectFiles.def: New file.
3195 * gm2-compiler/ObjectFiles.mod: New file.
3196 * gm2-compiler/Output.def: New file.
3197 * gm2-compiler/Output.mod: New file.
3198 * gm2-compiler/P0SymBuild.def: New file.
3199 * gm2-compiler/P0SymBuild.mod: New file.
3200 * gm2-compiler/P0SyntaxCheck.bnf: New file.
3201 * gm2-compiler/P0SyntaxCheck.def: New file.
3202 * gm2-compiler/P1Build.bnf: New file.
3203 * gm2-compiler/P1Build.def: New file.
3204 * gm2-compiler/P1SymBuild.def: New file.
3205 * gm2-compiler/P1SymBuild.mod: New file.
3206 * gm2-compiler/P2Build.bnf: New file.
3207 * gm2-compiler/P2Build.def: New file.
3208 * gm2-compiler/P2SymBuild.def: New file.
3209 * gm2-compiler/P2SymBuild.mod: New file.
3210 * gm2-compiler/P3Build.bnf: New file.
3211 * gm2-compiler/P3Build.def: New file.
3212 * gm2-compiler/P3SymBuild.def: New file.
3213 * gm2-compiler/P3SymBuild.mod: New file.
3214 * gm2-compiler/PCBuild.bnf: New file.
3215 * gm2-compiler/PCBuild.def: New file.
3216 * gm2-compiler/PCSymBuild.def: New file.
3217 * gm2-compiler/PCSymBuild.mod: New file.
3218 * gm2-compiler/PHBuild.bnf: New file.
3219 * gm2-compiler/PHBuild.def: New file.
3220 * gm2-compiler/README: New file.
3221 * gm2-compiler/Sets.def: New file.
3222 * gm2-compiler/Sets.mod: New file.
3223 * gm2-compiler/SymbolConversion.def: New file.
3224 * gm2-compiler/SymbolConversion.mod: New file.
3225 * gm2-compiler/SymbolKey.def: New file.
3226 * gm2-compiler/SymbolKey.mod: New file.
3227 * gm2-compiler/SymbolTable.def: New file.
3228 * gm2-compiler/SymbolTable.mod: New file.
3229 * gm2-compiler/bnflex.def: New file.
3230 * gm2-compiler/bnflex.mod: New file.
3231 * gm2-compiler/cflex.def: New file.
3232 * gm2-compiler/gm2.mod: New file.
3233 * gm2-compiler/gm2lcc.mod: New file.
3234 * gm2-compiler/gm2lgen.mod: New file.
3235 * gm2-compiler/gm2lorder.mod: New file.
3236 * gm2-compiler/m2flex.def: New file.
3237 * gm2-compiler/ppg.mod: New file.
3238 * gm2-gcc/README: New file.
3239 * gm2-gcc/dynamicstrings.h: New file.
3240 * gm2-gcc/gcc-consolidation.h: New file.
3241 * gm2-gcc/init.cc: New file.
3242 * gm2-gcc/init.def: New file.
3243 * gm2-gcc/init.h: New file.
3244 * gm2-gcc/m2assert.cc: New file.
3245 * gm2-gcc/m2assert.h: New file.
3246 * gm2-gcc/m2block.cc: New file.
3247 * gm2-gcc/m2block.def: New file.
3248 * gm2-gcc/m2block.h: New file.
3249 * gm2-gcc/m2builtins.cc: New file.
3250 * gm2-gcc/m2builtins.def: New file.
3251 * gm2-gcc/m2builtins.h: New file.
3252 * gm2-gcc/m2color.cc: New file.
3253 * gm2-gcc/m2color.def: New file.
3254 * gm2-gcc/m2color.h: New file.
3255 * gm2-gcc/m2configure.cc: New file.
3256 * gm2-gcc/m2configure.def: New file.
3257 * gm2-gcc/m2configure.h: New file.
3258 * gm2-gcc/m2convert.cc: New file.
3259 * gm2-gcc/m2convert.def: New file.
3260 * gm2-gcc/m2convert.h: New file.
3261 * gm2-gcc/m2decl.cc: New file.
3262 * gm2-gcc/m2decl.def: New file.
3263 * gm2-gcc/m2decl.h: New file.
3264 * gm2-gcc/m2except.cc: New file.
3265 * gm2-gcc/m2except.def: New file.
3266 * gm2-gcc/m2except.h: New file.
3267 * gm2-gcc/m2expr.cc: New file.
3268 * gm2-gcc/m2expr.def: New file.
3269 * gm2-gcc/m2expr.h: New file.
3270 * gm2-gcc/m2linemap.cc: New file.
3271 * gm2-gcc/m2linemap.def: New file.
3272 * gm2-gcc/m2linemap.h: New file.
3273 * gm2-gcc/m2misc.cc: New file.
3274 * gm2-gcc/m2misc.def: New file.
3275 * gm2-gcc/m2misc.h: New file.
3276 * gm2-gcc/m2options.h: New file.
3277 * gm2-gcc/m2range.h: New file.
3278 * gm2-gcc/m2search.h: New file.
3279 * gm2-gcc/m2statement.cc: New file.
3280 * gm2-gcc/m2statement.def: New file.
3281 * gm2-gcc/m2statement.h: New file.
3282 * gm2-gcc/m2top.cc: New file.
3283 * gm2-gcc/m2top.def: New file.
3284 * gm2-gcc/m2top.h: New file.
3285 * gm2-gcc/m2tree.cc: New file.
3286 * gm2-gcc/m2tree.def: New file.
3287 * gm2-gcc/m2tree.h: New file.
3288 * gm2-gcc/m2treelib.cc: New file.
3289 * gm2-gcc/m2treelib.def: New file.
3290 * gm2-gcc/m2treelib.h: New file.
3291 * gm2-gcc/m2type.cc: New file.
3292 * gm2-gcc/m2type.def: New file.
3293 * gm2-gcc/m2type.h: New file.
3294 * gm2-gcc/rtegraph.cc: New file.
3295 * gm2-gcc/rtegraph.h: New file.
3296 * gm2-ici/M2Emit.mod: New file.
3297 * gm2-ici/README: New file.
3298 * gm2-ici/m2linemap.c: New file.
3299 * gm2-internals.texi: New file.
3300 * gm2-lang.cc: New file.
3301 * gm2-lang.h: New file.
3302 * gm2-libiberty/README: New file.
3303 * gm2-libiberty/choosetemp.def: New file.
3304 * gm2-libiberty/pexecute.def: New file.
3305 * gm2-libs-ch/M2LINK.c: New file.
3306 * gm2-libs-ch/README: New file.
3307 * gm2-libs-ch/RTcodummy.c: New file.
3308 * gm2-libs-ch/RTintdummy.c: New file.
3309 * gm2-libs-ch/Selective.c: New file.
3310 * gm2-libs-ch/SysExceptions.c: New file.
3311 * gm2-libs-ch/UnixArgs.cc: New file.
3312 * gm2-libs-ch/cgetopt.c: New file.
3313 * gm2-libs-ch/choosetemp.c: New file.
3314 * gm2-libs-ch/dtoa.cc: New file.
3315 * gm2-libs-ch/errno.c: New file.
3316 * gm2-libs-ch/host.c: New file.
3317 * gm2-libs-ch/ldtoa.cc: New file.
3318 * gm2-libs-ch/m2rts.h: New file.
3319 * gm2-libs-ch/termios.c: New file.
3320 * gm2-libs-ch/tools.c: New file.
3321 * gm2-libs-ch/wrapc.c: New file.
3322 * gm2-libs-ch/xlibc.c: New file.
3323 * gm2-libs-coroutines/Debug.def: New file.
3324 * gm2-libs-coroutines/Debug.mod: New file.
3325 * gm2-libs-coroutines/Executive.def: New file.
3326 * gm2-libs-coroutines/Executive.mod: New file.
3327 * gm2-libs-coroutines/KeyBoardLEDs.def: New file.
3328 * gm2-libs-coroutines/README.texi: New file.
3329 * gm2-libs-coroutines/SYSTEM.def: New file.
3330 * gm2-libs-coroutines/SYSTEM.mod: New file.
3331 * gm2-libs-coroutines/TimerHandler.def: New file.
3332 * gm2-libs-coroutines/TimerHandler.mod: New file.
3333 * gm2-libs-iso/COROUTINES.def: New file.
3334 * gm2-libs-iso/COROUTINES.mod: New file.
3335 * gm2-libs-iso/ChanConsts.def: New file.
3336 * gm2-libs-iso/ChanConsts.h: New file.
3337 * gm2-libs-iso/ChanConsts.mod: New file.
3338 * gm2-libs-iso/CharClass.def: New file.
3339 * gm2-libs-iso/CharClass.mod: New file.
3340 * gm2-libs-iso/ClientSocket.def: New file.
3341 * gm2-libs-iso/ClientSocket.mod: New file.
3342 * gm2-libs-iso/ComplexMath.def: New file.
3343 * gm2-libs-iso/ComplexMath.mod: New file.
3344 * gm2-libs-iso/ConvStringLong.def: New file.
3345 * gm2-libs-iso/ConvStringLong.mod: New file.
3346 * gm2-libs-iso/ConvStringReal.def: New file.
3347 * gm2-libs-iso/ConvStringReal.mod: New file.
3348 * gm2-libs-iso/ConvTypes.def: New file.
3349 * gm2-libs-iso/ConvTypes.mod: New file.
3350 * gm2-libs-iso/EXCEPTIONS.def: New file.
3351 * gm2-libs-iso/EXCEPTIONS.mod: New file.
3352 * gm2-libs-iso/ErrnoCategory.def: New file.
3353 * gm2-libs-iso/GeneralUserExceptions.def: New file.
3354 * gm2-libs-iso/GeneralUserExceptions.mod: New file.
3355 * gm2-libs-iso/IOChan.def: New file.
3356 * gm2-libs-iso/IOChan.mod: New file.
3357 * gm2-libs-iso/IOConsts.def: New file.
3358 * gm2-libs-iso/IOConsts.mod: New file.
3359 * gm2-libs-iso/IOLink.def: New file.
3360 * gm2-libs-iso/IOLink.mod: New file.
3361 * gm2-libs-iso/IOResult.def: New file.
3362 * gm2-libs-iso/IOResult.mod: New file.
3363 * gm2-libs-iso/LongComplexMath.def: New file.
3364 * gm2-libs-iso/LongComplexMath.mod: New file.
3365 * gm2-libs-iso/LongConv.def: New file.
3366 * gm2-libs-iso/LongConv.mod: New file.
3367 * gm2-libs-iso/LongIO.def: New file.
3368 * gm2-libs-iso/LongIO.mod: New file.
3369 * gm2-libs-iso/LongMath.def: New file.
3370 * gm2-libs-iso/LongMath.mod: New file.
3371 * gm2-libs-iso/LongStr.def: New file.
3372 * gm2-libs-iso/LongStr.mod: New file.
3373 * gm2-libs-iso/LongWholeIO.def: New file.
3374 * gm2-libs-iso/LongWholeIO.mod: New file.
3375 * gm2-libs-iso/LowLong.def: New file.
3376 * gm2-libs-iso/LowLong.mod: New file.
3377 * gm2-libs-iso/LowReal.def: New file.
3378 * gm2-libs-iso/LowReal.mod: New file.
3379 * gm2-libs-iso/LowShort.def: New file.
3380 * gm2-libs-iso/LowShort.mod: New file.
3381 * gm2-libs-iso/M2EXCEPTION.def: New file.
3382 * gm2-libs-iso/M2EXCEPTION.mod: New file.
3383 * gm2-libs-iso/M2RTS.def: New file.
3384 * gm2-libs-iso/M2RTS.mod: New file.
3385 * gm2-libs-iso/MemStream.def: New file.
3386 * gm2-libs-iso/MemStream.mod: New file.
3387 * gm2-libs-iso/Preemptive.def: New file.
3388 * gm2-libs-iso/Preemptive.mod: New file.
3389 * gm2-libs-iso/Processes.def: New file.
3390 * gm2-libs-iso/Processes.mod: New file.
3391 * gm2-libs-iso/ProgramArgs.def: New file.
3392 * gm2-libs-iso/ProgramArgs.mod: New file.
3393 * gm2-libs-iso/README.texi: New file.
3394 * gm2-libs-iso/RTco.def: New file.
3395 * gm2-libs-iso/RTdata.def: New file.
3396 * gm2-libs-iso/RTdata.mod: New file.
3397 * gm2-libs-iso/RTentity.def: New file.
3398 * gm2-libs-iso/RTentity.mod: New file.
3399 * gm2-libs-iso/RTfio.def: New file.
3400 * gm2-libs-iso/RTfio.mod: New file.
3401 * gm2-libs-iso/RTgen.def: New file.
3402 * gm2-libs-iso/RTgen.mod: New file.
3403 * gm2-libs-iso/RTgenif.def: New file.
3404 * gm2-libs-iso/RTgenif.mod: New file.
3405 * gm2-libs-iso/RTio.def: New file.
3406 * gm2-libs-iso/RTio.mod: New file.
3407 * gm2-libs-iso/RandomNumber.def: New file.
3408 * gm2-libs-iso/RandomNumber.mod: New file.
3409 * gm2-libs-iso/RawIO.def: New file.
3410 * gm2-libs-iso/RawIO.mod: New file.
3411 * gm2-libs-iso/RealConv.def: New file.
3412 * gm2-libs-iso/RealConv.mod: New file.
3413 * gm2-libs-iso/RealIO.def: New file.
3414 * gm2-libs-iso/RealIO.mod: New file.
3415 * gm2-libs-iso/RealMath.def: New file.
3416 * gm2-libs-iso/RealMath.mod: New file.
3417 * gm2-libs-iso/RealStr.def: New file.
3418 * gm2-libs-iso/RealStr.mod: New file.
3419 * gm2-libs-iso/RndFile.def: New file.
3420 * gm2-libs-iso/RndFile.mod: New file.
3421 * gm2-libs-iso/SIOResult.def: New file.
3422 * gm2-libs-iso/SIOResult.mod: New file.
3423 * gm2-libs-iso/SLongIO.def: New file.
3424 * gm2-libs-iso/SLongIO.mod: New file.
3425 * gm2-libs-iso/SLongWholeIO.def: New file.
3426 * gm2-libs-iso/SLongWholeIO.mod: New file.
3427 * gm2-libs-iso/SRawIO.def: New file.
3428 * gm2-libs-iso/SRawIO.mod: New file.
3429 * gm2-libs-iso/SRealIO.def: New file.
3430 * gm2-libs-iso/SRealIO.mod: New file.
3431 * gm2-libs-iso/SShortIO.def: New file.
3432 * gm2-libs-iso/SShortIO.mod: New file.
3433 * gm2-libs-iso/SShortWholeIO.def: New file.
3434 * gm2-libs-iso/SShortWholeIO.mod: New file.
3435 * gm2-libs-iso/STextIO.def: New file.
3436 * gm2-libs-iso/STextIO.mod: New file.
3437 * gm2-libs-iso/SWholeIO.def: New file.
3438 * gm2-libs-iso/SWholeIO.mod: New file.
3439 * gm2-libs-iso/SYSTEM.def: New file.
3440 * gm2-libs-iso/SYSTEM.mod: New file.
3441 * gm2-libs-iso/Semaphores.def: New file.
3442 * gm2-libs-iso/Semaphores.mod: New file.
3443 * gm2-libs-iso/SeqFile.def: New file.
3444 * gm2-libs-iso/SeqFile.mod: New file.
3445 * gm2-libs-iso/ShortComplexMath.def: New file.
3446 * gm2-libs-iso/ShortComplexMath.mod: New file.
3447 * gm2-libs-iso/ShortIO.def: New file.
3448 * gm2-libs-iso/ShortIO.mod: New file.
3449 * gm2-libs-iso/ShortWholeIO.def: New file.
3450 * gm2-libs-iso/ShortWholeIO.mod: New file.
3451 * gm2-libs-iso/SimpleCipher.def: New file.
3452 * gm2-libs-iso/SimpleCipher.mod: New file.
3453 * gm2-libs-iso/StdChans.def: New file.
3454 * gm2-libs-iso/StdChans.mod: New file.
3455 * gm2-libs-iso/Storage.def: New file.
3456 * gm2-libs-iso/Storage.mod: New file.
3457 * gm2-libs-iso/StreamFile.def: New file.
3458 * gm2-libs-iso/StreamFile.mod: New file.
3459 * gm2-libs-iso/StringChan.def: New file.
3460 * gm2-libs-iso/StringChan.mod: New file.
3461 * gm2-libs-iso/Strings.def: New file.
3462 * gm2-libs-iso/Strings.mod: New file.
3463 * gm2-libs-iso/SysClock.def: New file.
3464 * gm2-libs-iso/SysClock.mod: New file.
3465 * gm2-libs-iso/TERMINATION.def: New file.
3466 * gm2-libs-iso/TERMINATION.mod: New file.
3467 * gm2-libs-iso/TermFile.def: New file.
3468 * gm2-libs-iso/TermFile.mod: New file.
3469 * gm2-libs-iso/TextIO.def: New file.
3470 * gm2-libs-iso/TextIO.mod: New file.
3471 * gm2-libs-iso/WholeConv.def: New file.
3472 * gm2-libs-iso/WholeConv.mod: New file.
3473 * gm2-libs-iso/WholeIO.def: New file.
3474 * gm2-libs-iso/WholeIO.mod: New file.
3475 * gm2-libs-iso/WholeStr.def: New file.
3476 * gm2-libs-iso/WholeStr.mod: New file.
3477 * gm2-libs-iso/wrapsock.c: New file.
3478 * gm2-libs-iso/wrapsock.def: New file.
3479 * gm2-libs-iso/wraptime.c: New file.
3480 * gm2-libs-iso/wraptime.def: New file.
3481 * gm2-libs-min/M2RTS.def: New file.
3482 * gm2-libs-min/M2RTS.mod: New file.
3483 * gm2-libs-min/SYSTEM.def: New file.
3484 * gm2-libs-min/SYSTEM.mod: New file.
3485 * gm2-libs-min/libc.c: New file.
3486 * gm2-libs-min/libc.def: New file.
3487 * gm2-libs-pim/BitBlockOps.def: New file.
3488 * gm2-libs-pim/BitBlockOps.mod: New file.
3489 * gm2-libs-pim/BitByteOps.def: New file.
3490 * gm2-libs-pim/BitByteOps.mod: New file.
3491 * gm2-libs-pim/BitWordOps.def: New file.
3492 * gm2-libs-pim/BitWordOps.mod: New file.
3493 * gm2-libs-pim/BlockOps.def: New file.
3494 * gm2-libs-pim/BlockOps.mod: New file.
3495 * gm2-libs-pim/Break.c: New file.
3496 * gm2-libs-pim/Break.def: New file.
3497 * gm2-libs-pim/CardinalIO.def: New file.
3498 * gm2-libs-pim/CardinalIO.mod: New file.
3499 * gm2-libs-pim/Conversions.def: New file.
3500 * gm2-libs-pim/Conversions.mod: New file.
3501 * gm2-libs-pim/DebugPMD.def: New file.
3502 * gm2-libs-pim/DebugPMD.mod: New file.
3503 * gm2-libs-pim/DebugTrace.def: New file.
3504 * gm2-libs-pim/DebugTrace.mod: New file.
3505 * gm2-libs-pim/Delay.def: New file.
3506 * gm2-libs-pim/Delay.mod: New file.
3507 * gm2-libs-pim/Display.def: New file.
3508 * gm2-libs-pim/Display.mod: New file.
3509 * gm2-libs-pim/ErrorCode.def: New file.
3510 * gm2-libs-pim/ErrorCode.mod: New file.
3511 * gm2-libs-pim/FileSystem.def: New file.
3512 * gm2-libs-pim/FileSystem.mod: New file.
3513 * gm2-libs-pim/FloatingUtilities.def: New file.
3514 * gm2-libs-pim/FloatingUtilities.mod: New file.
3515 * gm2-libs-pim/InOut.def: New file.
3516 * gm2-libs-pim/InOut.mod: New file.
3517 * gm2-libs-pim/Keyboard.def: New file.
3518 * gm2-libs-pim/Keyboard.mod: New file.
3519 * gm2-libs-pim/LongIO.def: New file.
3520 * gm2-libs-pim/LongIO.mod: New file.
3521 * gm2-libs-pim/NumberConversion.def: New file.
3522 * gm2-libs-pim/NumberConversion.mod: New file.
3523 * gm2-libs-pim/README.texi: New file.
3524 * gm2-libs-pim/Random.def: New file.
3525 * gm2-libs-pim/Random.mod: New file.
3526 * gm2-libs-pim/RealConversions.def: New file.
3527 * gm2-libs-pim/RealConversions.mod: New file.
3528 * gm2-libs-pim/RealInOut.def: New file.
3529 * gm2-libs-pim/RealInOut.mod: New file.
3530 * gm2-libs-pim/Strings.def: New file.
3531 * gm2-libs-pim/Strings.mod: New file.
3532 * gm2-libs-pim/Termbase.def: New file.
3533 * gm2-libs-pim/Termbase.mod: New file.
3534 * gm2-libs-pim/Terminal.def: New file.
3535 * gm2-libs-pim/Terminal.mod: New file.
3536 * gm2-libs-pim/TimeDate.def: New file.
3537 * gm2-libs-pim/TimeDate.mod: New file.
3538 * gm2-libs/ASCII.def: New file.
3539 * gm2-libs/ASCII.mod: New file.
3540 * gm2-libs/Args.def: New file.
3541 * gm2-libs/Args.mod: New file.
3542 * gm2-libs/Assertion.def: New file.
3543 * gm2-libs/Assertion.mod: New file.
3544 * gm2-libs/Break.def: New file.
3545 * gm2-libs/Break.mod: New file.
3546 * gm2-libs/Builtins.def: New file.
3547 * gm2-libs/Builtins.mod: New file.
3548 * gm2-libs/COROUTINES.def: New file.
3549 * gm2-libs/COROUTINES.mod: New file.
3550 * gm2-libs/CmdArgs.def: New file.
3551 * gm2-libs/CmdArgs.mod: New file.
3552 * gm2-libs/Debug.def: New file.
3553 * gm2-libs/Debug.mod: New file.
3554 * gm2-libs/DynamicStrings.def: New file.
3555 * gm2-libs/DynamicStrings.mod: New file.
3556 * gm2-libs/Environment.def: New file.
3557 * gm2-libs/Environment.mod: New file.
3558 * gm2-libs/FIO.def: New file.
3559 * gm2-libs/FIO.mod: New file.
3560 * gm2-libs/FormatStrings.def: New file.
3561 * gm2-libs/FormatStrings.mod: New file.
3562 * gm2-libs/FpuIO.def: New file.
3563 * gm2-libs/FpuIO.mod: New file.
3564 * gm2-libs/GetOpt.def: New file.
3565 * gm2-libs/GetOpt.mod: New file.
3566 * gm2-libs/IO.def: New file.
3567 * gm2-libs/IO.mod: New file.
3568 * gm2-libs/Indexing.def: New file.
3569 * gm2-libs/Indexing.mod: New file.
3570 * gm2-libs/LMathLib0.def: New file.
3571 * gm2-libs/LMathLib0.mod: New file.
3572 * gm2-libs/LegacyReal.def: New file.
3573 * gm2-libs/LegacyReal.mod: New file.
3574 * gm2-libs/M2Dependent.def: New file.
3575 * gm2-libs/M2Dependent.mod: New file.
3576 * gm2-libs/M2EXCEPTION.def: New file.
3577 * gm2-libs/M2EXCEPTION.mod: New file.
3578 * gm2-libs/M2LINK.def: New file.
3579 * gm2-libs/M2RTS.def: New file.
3580 * gm2-libs/M2RTS.mod: New file.
3581 * gm2-libs/MathLib0.def: New file.
3582 * gm2-libs/MathLib0.mod: New file.
3583 * gm2-libs/MemUtils.def: New file.
3584 * gm2-libs/MemUtils.mod: New file.
3585 * gm2-libs/NumberIO.def: New file.
3586 * gm2-libs/NumberIO.mod: New file.
3587 * gm2-libs/OptLib.def: New file.
3588 * gm2-libs/OptLib.mod: New file.
3589 * gm2-libs/PushBackInput.def: New file.
3590 * gm2-libs/PushBackInput.mod: New file.
3591 * gm2-libs/README.texi: New file.
3592 * gm2-libs/RTExceptions.def: New file.
3593 * gm2-libs/RTExceptions.mod: New file.
3594 * gm2-libs/RTint.def: New file.
3595 * gm2-libs/RTint.mod: New file.
3596 * gm2-libs/SArgs.def: New file.
3597 * gm2-libs/SArgs.mod: New file.
3598 * gm2-libs/SCmdArgs.def: New file.
3599 * gm2-libs/SCmdArgs.mod: New file.
3600 * gm2-libs/SEnvironment.def: New file.
3601 * gm2-libs/SEnvironment.mod: New file.
3602 * gm2-libs/SFIO.def: New file.
3603 * gm2-libs/SFIO.mod: New file.
3604 * gm2-libs/SMathLib0.def: New file.
3605 * gm2-libs/SMathLib0.mod: New file.
3606 * gm2-libs/SYSTEM.def: New file.
3607 * gm2-libs/SYSTEM.mod: New file.
3608 * gm2-libs/Scan.def: New file.
3609 * gm2-libs/Scan.mod: New file.
3610 * gm2-libs/Selective.def: New file.
3611 * gm2-libs/StdIO.def: New file.
3612 * gm2-libs/StdIO.mod: New file.
3613 * gm2-libs/Storage.def: New file.
3614 * gm2-libs/Storage.mod: New file.
3615 * gm2-libs/StrCase.def: New file.
3616 * gm2-libs/StrCase.mod: New file.
3617 * gm2-libs/StrIO.def: New file.
3618 * gm2-libs/StrIO.mod: New file.
3619 * gm2-libs/StrLib.def: New file.
3620 * gm2-libs/StrLib.mod: New file.
3621 * gm2-libs/StringConvert.def: New file.
3622 * gm2-libs/StringConvert.mod: New file.
3623 * gm2-libs/SysExceptions.def: New file.
3624 * gm2-libs/SysStorage.def: New file.
3625 * gm2-libs/SysStorage.mod: New file.
3626 * gm2-libs/TimeString.def: New file.
3627 * gm2-libs/TimeString.mod: New file.
3628 * gm2-libs/UnixArgs.def: New file.
3629 * gm2-libs/cbuiltin.def: New file.
3630 * gm2-libs/cgetopt.def: New file.
3631 * gm2-libs/config-host: New file.
3632 * gm2-libs/config-host.in: New file.
3633 * gm2-libs/cxxabi.def: New file.
3634 * gm2-libs/dtoa.def: New file.
3635 * gm2-libs/errno.def: New file.
3636 * gm2-libs/gdbif.def: New file.
3637 * gm2-libs/gdbif.mod: New file.
3638 * gm2-libs/gm2-libs-host.h.in: New file.
3639 * gm2-libs/ldtoa.def: New file.
3640 * gm2-libs/libc.def: New file.
3641 * gm2-libs/libm.def: New file.
3642 * gm2-libs/sckt.def: New file.
3643 * gm2-libs/termios.def: New file.
3644 * gm2-libs/wrapc.def: New file.
3645 * gm2config.h.in: New file.
3646 * gm2spec.cc: New file.
3647 * gm2version.h: New file.
3648 * init/README: New file.
3649 * init/mcinit: New file.
3650 * init/ppginit: New file.
3651 * lang-specs.h: New file.
3652 * lang.opt: New file.
3653 * m2-tree.def: New file.
3654 * m2-tree.h: New file.
3655 * m2.flex: New file.
3656 * m2pp.cc: New file.
3658 * mc-boot-ch/GBuiltins.c: New file.
3659 * mc-boot-ch/GM2LINK.c: New file.
3660 * mc-boot-ch/GRTco.c: New file.
3661 * mc-boot-ch/GSYSTEM.c: New file.
3662 * mc-boot-ch/GSelective.c: New file.
3663 * mc-boot-ch/GSysExceptions.c: New file.
3664 * mc-boot-ch/GUnixArgs.cc: New file.
3665 * mc-boot-ch/Gabort.c: New file.
3666 * mc-boot-ch/Gcbuiltin.c: New file.
3667 * mc-boot-ch/Gdtoa.c: New file.
3668 * mc-boot-ch/Gerrno.c: New file.
3669 * mc-boot-ch/Gldtoa.c: New file.
3670 * mc-boot-ch/Glibc.c: New file.
3671 * mc-boot-ch/Glibm.c: New file.
3672 * mc-boot-ch/Gmcrts.c: New file.
3673 * mc-boot-ch/Gmcrts.h: New file.
3674 * mc-boot-ch/Gnetwork.h: New file.
3675 * mc-boot-ch/Gtermios.cc: New file.
3676 * mc-boot-ch/Gwrapc.c: New file.
3677 * mc-boot-ch/README: New file.
3678 * mc-boot-ch/m2rts.h: New file.
3679 * mc-boot-ch/network.c: New file.
3680 * mc-boot/GASCII.c: New file.
3681 * mc-boot/GASCII.h: New file.
3682 * mc-boot/GArgs.c: New file.
3683 * mc-boot/GArgs.h: New file.
3684 * mc-boot/GAssertion.c: New file.
3685 * mc-boot/GAssertion.h: New file.
3686 * mc-boot/GBreak.c: New file.
3687 * mc-boot/GBreak.h: New file.
3688 * mc-boot/GCOROUTINES.h: New file.
3689 * mc-boot/GCmdArgs.c: New file.
3690 * mc-boot/GCmdArgs.h: New file.
3691 * mc-boot/GDebug.c: New file.
3692 * mc-boot/GDebug.h: New file.
3693 * mc-boot/GDynamicStrings.c: New file.
3694 * mc-boot/GDynamicStrings.h: New file.
3695 * mc-boot/GEnvironment.c: New file.
3696 * mc-boot/GEnvironment.h: New file.
3697 * mc-boot/GFIO.c: New file.
3698 * mc-boot/GFIO.h: New file.
3699 * mc-boot/GFormatStrings.c: New file.
3700 * mc-boot/GFormatStrings.h: New file.
3701 * mc-boot/GFpuIO.c: New file.
3702 * mc-boot/GFpuIO.h: New file.
3703 * mc-boot/GIO.c: New file.
3704 * mc-boot/GIO.h: New file.
3705 * mc-boot/GIndexing.c: New file.
3706 * mc-boot/GIndexing.h: New file.
3707 * mc-boot/GM2Dependent.c: New file.
3708 * mc-boot/GM2Dependent.h: New file.
3709 * mc-boot/GM2EXCEPTION.c: New file.
3710 * mc-boot/GM2EXCEPTION.h: New file.
3711 * mc-boot/GM2LINK.h: New file.
3712 * mc-boot/GM2RTS.c: New file.
3713 * mc-boot/GM2RTS.h: New file.
3714 * mc-boot/GMemUtils.c: New file.
3715 * mc-boot/GMemUtils.h: New file.
3716 * mc-boot/GNumberIO.c: New file.
3717 * mc-boot/GNumberIO.h: New file.
3718 * mc-boot/GPushBackInput.c: New file.
3719 * mc-boot/GPushBackInput.h: New file.
3720 * mc-boot/GRTExceptions.c: New file.
3721 * mc-boot/GRTExceptions.h: New file.
3722 * mc-boot/GRTco.h: New file.
3723 * mc-boot/GRTint.c: New file.
3724 * mc-boot/GRTint.h: New file.
3725 * mc-boot/GSArgs.c: New file.
3726 * mc-boot/GSArgs.h: New file.
3727 * mc-boot/GSFIO.c: New file.
3728 * mc-boot/GSFIO.h: New file.
3729 * mc-boot/GSYSTEM.h: New file.
3730 * mc-boot/GSelective.h: New file.
3731 * mc-boot/GStdIO.c: New file.
3732 * mc-boot/GStdIO.h: New file.
3733 * mc-boot/GStorage.c: New file.
3734 * mc-boot/GStorage.h: New file.
3735 * mc-boot/GStrCase.c: New file.
3736 * mc-boot/GStrCase.h: New file.
3737 * mc-boot/GStrIO.c: New file.
3738 * mc-boot/GStrIO.h: New file.
3739 * mc-boot/GStrLib.c: New file.
3740 * mc-boot/GStrLib.h: New file.
3741 * mc-boot/GStringConvert.c: New file.
3742 * mc-boot/GStringConvert.h: New file.
3743 * mc-boot/GSysExceptions.h: New file.
3744 * mc-boot/GSysStorage.c: New file.
3745 * mc-boot/GSysStorage.h: New file.
3746 * mc-boot/GTimeString.c: New file.
3747 * mc-boot/GTimeString.h: New file.
3748 * mc-boot/GUnixArgs.h: New file.
3749 * mc-boot/Galists.c: New file.
3750 * mc-boot/Galists.h: New file.
3751 * mc-boot/Gdecl.c: New file.
3752 * mc-boot/Gdecl.h: New file.
3753 * mc-boot/Gdtoa.h: New file.
3754 * mc-boot/Gerrno.h: New file.
3755 * mc-boot/Gkeyc.c: New file.
3756 * mc-boot/Gkeyc.h: New file.
3757 * mc-boot/Gldtoa.h: New file.
3758 * mc-boot/Glibc.h: New file.
3759 * mc-boot/Glibm.h: New file.
3760 * mc-boot/Glists.c: New file.
3761 * mc-boot/Glists.h: New file.
3762 * mc-boot/GmcComment.c: New file.
3763 * mc-boot/GmcComment.h: New file.
3764 * mc-boot/GmcComp.c: New file.
3765 * mc-boot/GmcComp.h: New file.
3766 * mc-boot/GmcDebug.c: New file.
3767 * mc-boot/GmcDebug.h: New file.
3768 * mc-boot/GmcError.c: New file.
3769 * mc-boot/GmcError.h: New file.
3770 * mc-boot/GmcFileName.c: New file.
3771 * mc-boot/GmcFileName.h: New file.
3772 * mc-boot/GmcLexBuf.c: New file.
3773 * mc-boot/GmcLexBuf.h: New file.
3774 * mc-boot/GmcMetaError.c: New file.
3775 * mc-boot/GmcMetaError.h: New file.
3776 * mc-boot/GmcOptions.c: New file.
3777 * mc-boot/GmcOptions.h: New file.
3778 * mc-boot/GmcPreprocess.c: New file.
3779 * mc-boot/GmcPreprocess.h: New file.
3780 * mc-boot/GmcPretty.c: New file.
3781 * mc-boot/GmcPretty.h: New file.
3782 * mc-boot/GmcPrintf.c: New file.
3783 * mc-boot/GmcPrintf.h: New file.
3784 * mc-boot/GmcQuiet.c: New file.
3785 * mc-boot/GmcQuiet.h: New file.
3786 * mc-boot/GmcReserved.c: New file.
3787 * mc-boot/GmcReserved.h: New file.
3788 * mc-boot/GmcSearch.c: New file.
3789 * mc-boot/GmcSearch.h: New file.
3790 * mc-boot/GmcStack.c: New file.
3791 * mc-boot/GmcStack.h: New file.
3792 * mc-boot/GmcStream.c: New file.
3793 * mc-boot/GmcStream.h: New file.
3794 * mc-boot/Gmcflex.h: New file.
3795 * mc-boot/Gmcp1.c: New file.
3796 * mc-boot/Gmcp1.h: New file.
3797 * mc-boot/Gmcp2.c: New file.
3798 * mc-boot/Gmcp2.h: New file.
3799 * mc-boot/Gmcp3.c: New file.
3800 * mc-boot/Gmcp3.h: New file.
3801 * mc-boot/Gmcp4.c: New file.
3802 * mc-boot/Gmcp4.h: New file.
3803 * mc-boot/Gmcp5.c: New file.
3804 * mc-boot/Gmcp5.h: New file.
3805 * mc-boot/GnameKey.c: New file.
3806 * mc-boot/GnameKey.h: New file.
3807 * mc-boot/Gpth.h: New file.
3808 * mc-boot/GsymbolKey.c: New file.
3809 * mc-boot/GsymbolKey.h: New file.
3810 * mc-boot/Gtermios.h: New file.
3811 * mc-boot/Gtop.c: New file.
3812 * mc-boot/Gvarargs.c: New file.
3813 * mc-boot/Gvarargs.h: New file.
3814 * mc-boot/Gwlists.c: New file.
3815 * mc-boot/Gwlists.h: New file.
3816 * mc-boot/Gwrapc.h: New file.
3817 * mc-boot/README: New file.
3818 * mc/Indexing.def: New file.
3819 * mc/Indexing.mod: New file.
3820 * mc/README: New file.
3821 * mc/alists.def: New file.
3822 * mc/alists.mod: New file.
3823 * mc/decl.def: New file.
3824 * mc/decl.mod: New file.
3825 * mc/decl.mod-extra: New file.
3826 * mc/keyc.def: New file.
3827 * mc/keyc.mod: New file.
3828 * mc/lists.def: New file.
3829 * mc/lists.mod: New file.
3830 * mc/m2flex.def: New file.
3831 * mc/mc.flex: New file.
3832 * mc/mcComment.def: New file.
3833 * mc/mcComment.h: New file.
3834 * mc/mcComment.mod: New file.
3835 * mc/mcComp.def: New file.
3836 * mc/mcComp.mod: New file.
3837 * mc/mcDebug.def: New file.
3838 * mc/mcDebug.mod: New file.
3839 * mc/mcError.def: New file.
3840 * mc/mcError.mod: New file.
3841 * mc/mcFileName.def: New file.
3842 * mc/mcFileName.mod: New file.
3843 * mc/mcLexBuf.def: New file.
3844 * mc/mcLexBuf.h: New file.
3845 * mc/mcLexBuf.mod: New file.
3846 * mc/mcMetaError.def: New file.
3847 * mc/mcMetaError.mod: New file.
3848 * mc/mcOptions.def: New file.
3849 * mc/mcOptions.mod: New file.
3850 * mc/mcPreprocess.def: New file.
3851 * mc/mcPreprocess.mod: New file.
3852 * mc/mcPretty.def: New file.
3853 * mc/mcPretty.mod: New file.
3854 * mc/mcPrintf.def: New file.
3855 * mc/mcPrintf.mod: New file.
3856 * mc/mcQuiet.def: New file.
3857 * mc/mcQuiet.mod: New file.
3858 * mc/mcReserved.def: New file.
3859 * mc/mcReserved.h: New file.
3860 * mc/mcReserved.mod: New file.
3861 * mc/mcSearch.def: New file.
3862 * mc/mcSearch.mod: New file.
3863 * mc/mcStack.def: New file.
3864 * mc/mcStack.mod: New file.
3865 * mc/mcStream.def: New file.
3866 * mc/mcStream.mod: New file.
3867 * mc/mcflex.def: New file.
3868 * mc/mcp1.bnf: New file.
3869 * mc/mcp1.def: New file.
3870 * mc/mcp2.bnf: New file.
3871 * mc/mcp2.def: New file.
3872 * mc/mcp3.bnf: New file.
3873 * mc/mcp3.def: New file.
3874 * mc/mcp4.bnf: New file.
3875 * mc/mcp4.def: New file.
3876 * mc/mcp5.bnf: New file.
3877 * mc/mcp5.def: New file.
3878 * mc/nameKey.def: New file.
3879 * mc/nameKey.mod: New file.
3880 * mc/symbolKey.def: New file.
3881 * mc/symbolKey.mod: New file.
3882 * mc/top.mod: New file.
3883 * mc/varargs.def: New file.
3884 * mc/varargs.mod: New file.
3885 * mc/wlists.def: New file.
3886 * mc/wlists.mod: New file.
3887 * pge-boot/GASCII.c: New file.
3888 * pge-boot/GASCII.h: New file.
3889 * pge-boot/GArgs.c: New file.
3890 * pge-boot/GArgs.h: New file.
3891 * pge-boot/GAssertion.c: New file.
3892 * pge-boot/GAssertion.h: New file.
3893 * pge-boot/GBreak.h: New file.
3894 * pge-boot/GBuiltins.c: New file.
3895 * pge-boot/GCmdArgs.h: New file.
3896 * pge-boot/GDebug.c: New file.
3897 * pge-boot/GDebug.h: New file.
3898 * pge-boot/GDynamicStrings.c: New file.
3899 * pge-boot/GDynamicStrings.h: New file.
3900 * pge-boot/GEnvironment.h: New file.
3901 * pge-boot/GFIO.c: New file.
3902 * pge-boot/GFIO.h: New file.
3903 * pge-boot/GFormatStrings.h: New file.
3904 * pge-boot/GFpuIO.h: New file.
3905 * pge-boot/GIO.c: New file.
3906 * pge-boot/GIO.h: New file.
3907 * pge-boot/GIndexing.c: New file.
3908 * pge-boot/GIndexing.h: New file.
3909 * pge-boot/GLists.c: New file.
3910 * pge-boot/GLists.h: New file.
3911 * pge-boot/GM2Dependent.c: New file.
3912 * pge-boot/GM2Dependent.h: New file.
3913 * pge-boot/GM2EXCEPTION.c: New file.
3914 * pge-boot/GM2EXCEPTION.h: New file.
3915 * pge-boot/GM2LINK.c: New file.
3916 * pge-boot/GM2LINK.h: New file.
3917 * pge-boot/GM2RTS.c: New file.
3918 * pge-boot/GM2RTS.h: New file.
3919 * pge-boot/GNameKey.c: New file.
3920 * pge-boot/GNameKey.h: New file.
3921 * pge-boot/GNumberIO.c: New file.
3922 * pge-boot/GNumberIO.h: New file.
3923 * pge-boot/GOutput.c: New file.
3924 * pge-boot/GOutput.h: New file.
3925 * pge-boot/GPushBackInput.c: New file.
3926 * pge-boot/GPushBackInput.h: New file.
3927 * pge-boot/GRTExceptions.c: New file.
3928 * pge-boot/GRTExceptions.h: New file.
3929 * pge-boot/GRTco.c: New file.
3930 * pge-boot/GSArgs.h: New file.
3931 * pge-boot/GSEnvironment.h: New file.
3932 * pge-boot/GSFIO.c: New file.
3933 * pge-boot/GSFIO.h: New file.
3934 * pge-boot/GSYSTEM.c: New file.
3935 * pge-boot/GSYSTEM.h: New file.
3936 * pge-boot/GScan.h: New file.
3937 * pge-boot/GSelective.c: New file.
3938 * pge-boot/GStdIO.c: New file.
3939 * pge-boot/GStdIO.h: New file.
3940 * pge-boot/GStorage.c: New file.
3941 * pge-boot/GStorage.h: New file.
3942 * pge-boot/GStrCase.c: New file.
3943 * pge-boot/GStrCase.h: New file.
3944 * pge-boot/GStrIO.c: New file.
3945 * pge-boot/GStrIO.h: New file.
3946 * pge-boot/GStrLib.c: New file.
3947 * pge-boot/GStrLib.h: New file.
3948 * pge-boot/GStringConvert.h: New file.
3949 * pge-boot/GSymbolKey.c: New file.
3950 * pge-boot/GSymbolKey.h: New file.
3951 * pge-boot/GSysExceptions.c: New file.
3952 * pge-boot/GSysExceptions.h: New file.
3953 * pge-boot/GSysStorage.c: New file.
3954 * pge-boot/GSysStorage.h: New file.
3955 * pge-boot/GTimeString.h: New file.
3956 * pge-boot/GUnixArgs.cc: New file.
3957 * pge-boot/GUnixArgs.h: New file.
3958 * pge-boot/Gabort.c: New file.
3959 * pge-boot/Gbnflex.c: New file.
3960 * pge-boot/Gbnflex.h: New file.
3961 * pge-boot/Gcbuiltin.c: New file.
3962 * pge-boot/Gdtoa.c: New file.
3963 * pge-boot/Gdtoa.h: New file.
3964 * pge-boot/Gerrno.c: New file.
3965 * pge-boot/Gerrno.h: New file.
3966 * pge-boot/Gldtoa.c: New file.
3967 * pge-boot/Gldtoa.h: New file.
3968 * pge-boot/Glibc.c: New file.
3969 * pge-boot/Glibc.h: New file.
3970 * pge-boot/Glibm.c: New file.
3971 * pge-boot/Glibm.h: New file.
3972 * pge-boot/Gmcrts.c: New file.
3973 * pge-boot/Gmcrts.h: New file.
3974 * pge-boot/Gnetwork.h: New file.
3975 * pge-boot/Gpge.c: New file.
3976 * pge-boot/Gtermios.cc: New file.
3977 * pge-boot/Gtermios.h: New file.
3978 * pge-boot/Gwrapc.c: New file.
3979 * pge-boot/Gwrapc.h: New file.
3980 * pge-boot/README: New file.
3981 * pge-boot/m2rts.h: New file.
3982 * pge-boot/main.c: New file.
3983 * pge-boot/network.c: New file.
3984 * plugin/README: New file.
3985 * plugin/m2rte.cc: New file.
3986 * tools-src/README: New file.
3987 * tools-src/boilerplate.py: New file.
3988 * tools-src/buildpg: New file.
3989 * tools-src/calcpath: New file.
3990 * tools-src/def2doc.py: New file.
3991 * tools-src/makeSystem: New file.
3992 * tools-src/mklink.c: New file.
3993 * tools-src/tidydates.py: New file.
3994 * images/LICENSE.IMG: New file.
3995 * images/gnupng: New file.
3996 * images/gnu.eps: New file.
3997 * version.c: New file.
3998 * configure: Rebuilt.
3999 * target-independent/Builtins.texi: New file.
4000 * target-independent/SYSTEM-iso.texi: New file.
4001 * target-independent/SYSTEM-pim.texi: New file.
4002 * target-independent/gm2-libs.texi: New file.
4003 * target-independent/readme.txt: New file.