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