| 2025-11-30 Andrew Pinski <andrew.pinski@oss.qualcomm.com> |
| |
| * lang.opt.urls: Regenerate. |
| |
| 2025-11-02 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/122499 |
| * gm2-compiler/M2StackSpell.mod (PushName): Add comment. |
| (GetSpellHint): Rewrite. |
| (GetExportedSpellHint): New procedure function. |
| (GetScopeSpellHint): New procedure function. |
| * gm2-compiler/P1Build.bnf (IdentScope): Rewrite. |
| (PossiblyExportIdent): Ditto. |
| * gm2-compiler/P1SymBuild.mod (BuildImportInnerModule): Add |
| parameter to AddNameToImportList. |
| * gm2-compiler/SymbolTable.def (GetUnknownOnImport): New |
| procedure function. |
| (GetUnknownDeclScope): Ditto. |
| (AddNameToScope): Add tok parameter. |
| (AddNameToImportList): Ditto. |
| * gm2-compiler/SymbolTable.mod (SymUndefined): New field |
| declScope. |
| New field onImport. |
| (MakeObject): Add tok parameter. |
| (FillInUnknownFields): Initialize declScope. |
| Initialize onImport. |
| (GetUnknownOnImport): New procedure function. |
| (GetUnknownDeclScope): Ditto. |
| (AddNameToScope): Pass tok to MakeObject. |
| (AddNameToImportList): Add tok parameter. |
| Pass tok to MakeObject. |
| (GetDeclaredSym): Add parameters to FillInUnknownFields. |
| (RequestSym): Ditto. |
| (FetchUnknownFromModule): Ditto. |
| (FetchUnknownFromDefImp): Ditto. |
| (FetchUnknownFrom): Ditto. |
| |
| 2025-10-30 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/122485 |
| * gm2-compiler/M2Comp.mod (Pass0CheckDef): Add spell check |
| format specifier filtering on module names. |
| * gm2-compiler/M2MetaError.mod (errorBlock): New field |
| filterDef. |
| (initErrorBlock): Initialize filterDef. |
| (continuation): Add 'D' filter on definition module specifier. |
| (SpellHint): Rewrite to check for filterDef and defimp symbols. |
| (FilterOnDefinitionModule): New procedure. |
| * gm2-compiler/M2Quads.mod (BuildSizeFunction): Rewrite to |
| ensure variables are initialized. |
| * gm2-compiler/M2StackSpell.def (GetDefModuleSpellHint): New |
| procedure function. |
| * gm2-compiler/M2StackSpell.mod (GetDefModuleSpellHint): New |
| procedure function. |
| (CandidatePushName): New procedure. |
| (BuildHintStr): New procedure. |
| (CheckForHintStr): Rewrite. |
| |
| 2025-10-24 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/122407 |
| * gm2-compiler/FilterError.def (Copyright): Use correct |
| licence. |
| * gm2-compiler/FilterError.mod (Copyright): Ditto. |
| * gm2-compiler/M2Quads.mod (BuildNewProcedure): Rewrite. |
| (BuildIncProcedure): Ditto. |
| (BuildDecProcedure): Ditto. |
| (BuildInclProcedure): Ditto. |
| (BuildExclProcedure): Ditto. |
| (BuildAbsFunction): Ditto. |
| (BuildCapFunction): Ditto. |
| (BuildChrFunction): Ditto. |
| (BuildOrdFunction): Ditto. |
| (BuildIntFunction): Ditto. |
| (BuildMinFunction): Ditto. |
| (BuildMaxFunction): Ditto. |
| (BuildTruncFunction): Ditto. |
| (BuildTBitSizeFunction): Ditto. |
| (BuildTSizeFunction): Ditto. |
| (BuildSizeFunction): Ditto. |
| |
| 2025-10-24 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/122407 |
| * Make-lang.in (GM2-LIBS-BOOT-DEFS): Add BinDict.def. |
| (GM2-LIBS-BOOT-MODS): Add BinDict.mod. |
| (GM2-COMP-BOOT-DEFS): Add FilterError.def. |
| (GM2-COMP-BOOT-MODS): Add FilterError.mod. |
| (GM2-LIBS-DEFS): Add BinDict.def. |
| (GM2-LIBS-MODS): Add BinDict.mod. |
| * gm2-compiler/M2Error.def (KillError): New procedure. |
| * gm2-compiler/M2Error.mod (WriteFormat3): Reformat. |
| (NewError): Rewrite and call AddToList. |
| (AddToList): New procedure. |
| (SubFromList): Ditto. |
| (WipeReferences): Ditto. |
| (KillError): Ditto. |
| * gm2-compiler/M2LexBuf.mod (MakeVirtualTok): Return |
| caret if all token positions are identical. |
| * gm2-compiler/M2MetaError.mod (KillError): Import. |
| (FilterError): Import. |
| (FilterUnknown): New global. |
| (initErrorBlock): Initialize symcause and token. |
| (push): Capitalize comments. |
| (pop): Copy symcause to toblock if discovered. |
| (doError): Add parameter sym. |
| (defaultError): Assign token if discovered. |
| Pass NulSym to doError. |
| (updateTokSym): New procedure. |
| (chooseError): Call updateTokSym. |
| (doErrorScopeModule): Pass sym to doError. |
| (doErrorScopeForward): Ditto. |
| (doErrorScopeMod): Ditto. |
| (doErrorScopeFor): Ditto. |
| (doErrorScopeDefinition): Ditto. |
| (doErrorScopeDef): Ditto. |
| (doErrorScopeProc): Ditto. |
| (used): Pass sym[bol] to doError. |
| (op): Assign symcause when encountering |
| an error, warning or note. |
| (MetaErrorStringT1): Rewrite. |
| (MetaErrorStringT2): Ditto. |
| (MetaErrorStringT3): Ditto. |
| (MetaErrorStringT4): Ditto. |
| (isUniqueError): New procedure function. |
| (wrapErrors): Rewrite. |
| (FilterUnknown): Initialize. |
| * gm2-compiler/M2Quads.mod (BuildTSizeFunction): Add spell check |
| hint specifier. |
| * gm2-compiler/FilterError.def: New file. |
| * gm2-compiler/FilterError.mod: New file. |
| * gm2-libs/BinDict.def: New file. |
| * gm2-libs/BinDict.mod: New file. |
| |
| 2025-10-19 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/122333 |
| * gm2-compiler/M2MetaError.mod (JoinSentances): Remove |
| unused variable. |
| * gm2-gcc/m2spellcheck.cc (m2spellcheck_InitCandidates): Rewrite. |
| (KillCandidates): Deallocate auto_vec candidates_array. |
| (candidates_array_vec_t): New declaration. |
| |
| 2025-10-13 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/122241 |
| * gm2-compiler/M2Quads.mod (BuildSizeFunction): Improve |
| error message. |
| (BuildTSizeFunction): Improve error message. |
| * gm2-compiler/P3Build.bnf (ProgramModule): New variable |
| namet. |
| Pass namet to P3EndBuildProgModule. |
| (ImplementationModule): New variable namet. |
| Pass namet to P3EndBuildImpModule. |
| (ModuleDeclaration): New variable namet. |
| Pass namet to P3EndBuildInnerModule. |
| (DefinitionModule): New variable namet. |
| Pass namet to P3EndBuildDefModule. |
| * gm2-compiler/P3SymBuild.def (P3EndBuildDefModule): New |
| parameter tokno. |
| (P3EndBuildImpModule): Ditto. |
| (P3EndBuildProgModule): Ditto. |
| (EndBuildInnerModule): Ditto. |
| * gm2-compiler/P3SymBuild.mod (P3EndBuildDefModule): New |
| parameter tokno. |
| Pass tokno to CheckForUnknownInModule. |
| (P3EndBuildImpModule): Ditto. |
| (P3EndBuildProgModule): Ditto. |
| (EndBuildInnerModule): Ditto. |
| * gm2-compiler/PCBuild.bnf (ProgramModule): New variable |
| namet. |
| Pass namet to PCEndBuildProgModule. |
| (ImplementationModule): New variable namet. |
| Pass namet to PCEndBuildImpModule. |
| (ModuleDeclaration): New variable namet. |
| Pass namet to PCEndBuildInnerModule. |
| (DefinitionModule): New variable namet. |
| Pass namet to PCEndBuildDefModule. |
| * gm2-compiler/PCSymBuild.def (PCEndBuildDefModule): New |
| parameter tokno. |
| (PCEndBuildImpModule): Ditto. |
| (PCEndBuildProgModule): Ditto. |
| (PCEndBuildInnerModule): Ditto. |
| * gm2-compiler/PCSymBuild.mod (PCEndBuildDefModule): New |
| parameter tokno. |
| Pass tokno to CheckForUnknownInModule. |
| (PCEndBuildImpModule): Ditto. |
| (PCEndBuildProgModule): Ditto. |
| (PCEndBuildInnerModule): Ditto. |
| * gm2-compiler/PHBuild.bnf (DefinitionModule): New variable |
| namet. |
| Pass namet to PHEndBuildDefModule. |
| (ModuleDeclaration): New variable namet. |
| Pass namet to PHEndBuildProgModule. |
| (ImplementationModule): New variable namet. |
| Pass namet to PHEndBuildImpModule. |
| (ModuleDeclaration): New variable namet. |
| Pass namet to PHEndBuildInnerModule. |
| (DefinitionModule): New variable namet. |
| Pass namet to PHEndBuildDefModule. |
| * gm2-compiler/SymbolTable.def (CheckForUnknownInModule): Add |
| tokno parameter. |
| * gm2-compiler/SymbolTable.mod (CheckForUnknownInModule): Add |
| tokno parameter. |
| Pass tokno to CheckForUnknowns. |
| (CheckForUnknowns): Reimplement. |
| |
| 2025-10-11 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/122241 |
| * Make-lang.in (GM2_C_OBJS): Add m2/gm2-gcc/m2spellcheck.o. |
| (GM2-COMP-BOOT-DEFS): Add M2StackSpell.def. |
| (GM2-COMP-BOOT-MODS): Add M2StackSpell.mod. |
| (GM2-GCC-DEFS): Add m2spellcheck.def. |
| (GM2-COMP-DEFS): Add M2StackSpell.def. |
| (GM2-COMP-MODS): Add M2StackSpell.mod. |
| * gm2-compiler/M2Base.mod (CheckCompatible): Add comments. |
| * gm2-compiler/M2MetaError.mod (importHint): New field. |
| (exportHint): Ditto. |
| (withStackHint): Ditto. |
| * gm2-compiler/M2Quads.mod (M2StackSpell): Import. |
| (BuildProcedureCall): Add spell check specifier when |
| encountering an unknown symbol. |
| (CheckProcedureParameters): Ditto. |
| (CheckParameter): Ditto. |
| (DescribeType): Ditto. |
| (GetQualidentImport): Ditto. |
| (BuildValFunction): Ditto. |
| (BuildCastFunction): Ditto. |
| (BuildConvertFunction): Ditto. |
| (ExpectingParameterType): Ditto. |
| (ExpectingVariableType): Ditto. |
| (BuildDesignatorPointer): Ditto. |
| (BuildEmptySet): Ditto. |
| (CheckVariableOrConstantOrProcedure): Ditto. |
| * gm2-compiler/P2SymBuild.mod (BuildType): Add comment. |
| * gm2-compiler/P3Build.bnf (SubDesignator): Reimplement. |
| * gm2-compiler/P3SymBuild.mod (P3StartBuildDefModule): Add |
| M2StackSpell.Push. |
| (P3StartBuildProgModule): Ditto. |
| (P3StartBuildImpModule): Ditto. |
| (StartBuildInnerModule): Ditto. |
| (StartBuildProcedure): Ditto. |
| (P3EndBuildDefModule): Add M2StackSpell.Pop. |
| (P3EndBuildImpModule): Ditto. |
| (P3EndBuildProgModule): Ditto. |
| (EndBuildInnerModule): Ditto. |
| (EndBuildProcedure): Ditto. |
| (BuildProcedureHeading): Ditto. |
| (EndBuildForward): Ditto. |
| * gm2-compiler/SymbolTable.mod (RequestSym): Reformat. |
| * gm2-gcc/init.cc (_M2_M2StackSpell_init): New prototype. |
| (init_PerCompilationInit): Call _M2_M2StackSpell_init. |
| * gm2-libs/DynamicStrings.def (RemoveWhitePrefix): Correct |
| comment. |
| * gm2-libs/DynamicStrings.mod (RemoveWhitePrefix): Ditto. |
| * gm2-compiler/M2StackSpell.def: New file. |
| * gm2-compiler/M2StackSpell.mod: New file. |
| * gm2-gcc/m2spellcheck.cc: New file. |
| * gm2-gcc/m2spellcheck.def: New file. |
| * gm2-gcc/m2spellcheck.h: New file. |
| |
| 2025-10-02 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/122009 |
| * gm2-compiler/M2GCCDeclare.mod (PrintKnown): Remove. |
| * gm2-gcc/m2type.cc (m2type_BuildEnumerator): Add const modifier. |
| * gm2-gcc/m2type.def (BuildEnumerator): Use ConstCharStar type. |
| * gm2-gcc/m2type.h (m2type_BuildEnumerator): Add const modifier. |
| * gm2-libs/M2WIDESET.mod (ShiftLeftByteBit): Rename variable to |
| as toIdx. |
| Rename variable from as fromIdx. |
| (ShiftRightByteBit): Rename variable to as toIdx. |
| Rename variable from as fromIdx. |
| (RotateLeft): Rename variable to as toIdx. |
| Rename variable from as fromIdx. |
| (ArithShiftLeftBit): Rename set to setb. |
| (ArithShiftRightBit): Rename set to setb. |
| |
| 2025-10-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/122009 |
| * pge-boot/Gldtoa.cc (ldtoa_ldtoa): Change int to bool for |
| parameter sign. |
| |
| 2025-09-21 Mark Wielaard <mark@klomp.org> |
| |
| * lang.opt.urls: Regenerate. |
| |
| 2025-09-20 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/122009 |
| * gm2-compiler/M2GenGCC.mod (FromM2WIDESETImport): Assign |
| sym to NulSym. |
| (CodeMakeAdr): Remove fourth parameter to BuildLogicalOrAddress. |
| (FoldMakeAdr): Ditto. |
| * gm2-compiler/M2Quads.mod (BuildAssignmentBoolean): Remove |
| unused parameter checkTypes. |
| (doBuildAssignment): Remove checkTypes parameter when calling |
| BuildAssignmentBoolean. |
| * gm2-gcc/m2expr.def (BuildLogicalOrAddress): Remove |
| needconvert parameter. |
| * gm2-gcc/m2statement.def (IfExprJump): Change label type |
| to CharStar. |
| * gm2-gcc/m2type.cc (m2type_BuildEnumerator): Remove const. |
| * gm2-gcc/m2type.h (m2type_BuildEnumerator): Ditto. |
| |
| 2025-09-19 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/121856 |
| * Make-lang.in (GM2-LIBS-BOOT-DEFS): Add M2Diagnostic.def. |
| Add Selective.def. |
| (GM2-LIBS-BOOT-MODS): Add M2Diagnostic.mod. |
| (GM2-LIBS-BOOT-C): Add Selective.c. |
| (GM2-LIBS-DEFS): Add Selective.def. |
| (GM2-LIBS-MODS): Add M2Diagnostic.mod. |
| (MC-LIB-MODS): Add M2Diagnostic.mod. |
| (m2/gm2-libs-boot/Selective.o): New rule. |
| (BUILD-PGE-O): Add m2/pge-boot/GM2Diagnostic.o. |
| Add m2/pge-boot/GM2Diagnostic.o. |
| Add m2/pge-boot/GStringConvert.o. |
| Add m2/pge-boot/Gdtoa.o. |
| Add m2/pge-boot/Gldtoa.o. |
| * Make-maintainer.in (PPG-LIB-DEFS): Add M2Diagnostic.def. |
| Add StringConvert.def. |
| (PPG-LIB-MODS): Add M2Diagnostic.mod. |
| Add StringConvert.mod. |
| (PGE-DEF): Add M2Diagnostic.def. |
| (PGE-DEPS): Add GM2Diagnostic.cc. |
| Add GM2Diagnostic.h. |
| * gm2-compiler/FifoQueue.def (PutSetIntoFifoQueue): New |
| procedure. |
| (GetSetFromFifoQueue): New procedure function. |
| * gm2-compiler/FifoQueue.mod (PutSetIntoFifoQueue): New |
| procedure. |
| (GetSetFromFifoQueue): New procedure function. |
| * gm2-compiler/M2ALU.def (KillValue): New procedure. |
| (PushSetTree): Rename parameter t to value. |
| (ConstructSetConstant): Rewrite comment. |
| * gm2-compiler/M2ALU.mod: Rewrite to use the new set type |
| and introduce memory diagnostics. |
| * gm2-compiler/M2Base.mod (InitBaseProcedures): Lookup M2WIDESET. |
| * gm2-compiler/M2CaseList.mod (CheckCaseBoundsResolved): Change |
| format specifier to allow the preceeding indefinite article to |
| have a n concatenated providing the following string substitute |
| begins with a vowel. |
| (checkTypes): Ditto. |
| * gm2-compiler/M2Check.mod (checkGenericUnboundedTyped): New |
| procedure function. |
| * gm2-compiler/M2Code.mod (OptimizationAnalysis): Replace with ... |
| (ResourceAnalysis): ... this. |
| * gm2-compiler/M2Comp.mod (PopulateResource): New procedure. |
| (compile): Call PopulateResource. |
| Call M2Diagnostic.Generate. |
| * gm2-compiler/M2GCCDeclare.mod: Rewrite for new set type. |
| * gm2-compiler/M2GenGCC.mod: Rewrite implementation for |
| becomes, incl, excl, and, or, not, xor for the new set type. |
| * gm2-compiler/M2MetaError.def: Extend comment documenting |
| the v format specifier. |
| * gm2-compiler/M2MetaError.mod (errorBlock): New field vowel. |
| (initErrorBlock): Initialize field vowel. |
| Reformat comments. |
| (pop): Call checkVowel. |
| (checkVowel): New procedure. |
| (isVowel): New procedure function. |
| (symDesc): Remove indefinite article. |
| (op): Set vowel field in case clause. |
| * gm2-compiler/M2Options.def (OptimizeSets): New global. |
| (TimeReport): Ditto. |
| (MemReport): Ditto. |
| (SetMemReport): New procedure. |
| (SetTimeReport): Ditto. |
| (SetWideset): Ditto. |
| (GetWideset): New procedure function. |
| * gm2-compiler/M2Options.mod (SetOptimizing): Assign |
| OptimizeSets depending upon the optimization level. |
| (SetMemReport): New procedure. |
| (SetTimeReport): Ditto. |
| (SetWideset): Ditto. |
| (GetWideset): New procedure function. |
| (OptimizeSets): Initialize to FALSE. |
| (TimeReport): Ditto. |
| (MemReport): Ditto. |
| * gm2-compiler/M2Quads.mod (M2Diagnostic): Import. |
| (QuadsMemDiag): New global variable. |
| (NewQuad): Bump QuadsMemDiag whenever a quad is allocated. |
| (BuildAssignmentBoolean): New procedure. |
| (doBuildAssignment): Ditto. |
| Add v to the format specifier. |
| (CheckCompatibleWithBecomes): Add v to the format specifier. |
| (CheckProcTypeAndProcedure): Ditto. |
| (BuildAddAdrFunction): Ditto. |
| (BuildSubAdrFunction): Ditto. |
| (BuildDifAdrFunction): Ditto. |
| (BuildDesignatorArrayStaticDynamic): Ditto. |
| (BuildDesignatorPointer): Ditto. |
| (CheckVariableOrConstantOrProcedure): Ditto. |
| (Init): Initialize QuadsMemDiag. |
| * gm2-compiler/M2Range.mod (CodeTypeAssign): Add v to the |
| format specifier. |
| * gm2-compiler/M2Scaffold.mod (DeclareScaffoldFunctions): |
| Generate more precise warning note. |
| * gm2-compiler/M2SymInit.mod (PrintSymInit): Add record |
| field warning. |
| * gm2-compiler/M2System.mod |
| (IsPseudoSystemFunctionConstExpression): Add TBitSize. |
| * gm2-compiler/NameKey.mod: Add MemDiagnostic code |
| commented out. |
| * gm2-compiler/P1SymBuild.mod (StartBuildProcedure): |
| Add v format specifier. |
| * gm2-compiler/P2SymBuild.mod (BuildFieldRecord): Ditto. |
| * gm2-compiler/P3Build.bnf (SetType): Reformat. |
| * gm2-compiler/PathName.def (Copyright): Added. |
| * gm2-compiler/PathName.mod: Remove blank line. |
| * gm2-compiler/SymbolConversion.mod (gdbhook): New procedure. |
| (BreakWhenSymBooked): Ditto. |
| (CheckBook): Ditto. |
| (Init): Rewrite. |
| * gm2-compiler/SymbolTable.def (GetSetArray): New procedure. |
| (PutSetArray): Ditto. |
| (MakeSetArray): New procedure function. |
| (PutSetInWord): New procedure. |
| (GetSetInWord): New procedure function. |
| (IsConstVar): Ditto. |
| * gm2-compiler/SymbolTable.mod (SymSet): SetInWord new field. |
| SetArray new field. |
| Align new field. |
| (SymMemDiag): New global variable. |
| (Init): Initialize SymMemDiag. |
| (IsConstVar): New procedure function. |
| (IsVariableSSA): Replace InternalError with Return FALSE. |
| (GetNthParamOrdered): Reimplement. |
| (GetNthParamAnyClosest): Ditto. |
| (GetOuterModuleScope): Ditto. |
| (MakeSet): Ditto. |
| (PutSetArray): New procedure. |
| (GetSetArray): New procedure function. |
| (MakeSetArray): Ditto. |
| (PutSetInWord): New procedure. |
| (GetSetInWord): New procedure function. |
| * gm2-gcc/init.cc (_M2_M2Diagnostic_init): Define |
| prototype. |
| (init_FrontEndInit):Call _M2_M2Diagnostic_init. |
| * gm2-gcc/m2block.cc (m2block_GetTotalConstants): New function. |
| (m2block_GetGlobalTypes): Ditto. |
| * gm2-gcc/m2block.def (GetTotalConstants): New procedure function. |
| (GetGlobalTypes): New procedure function. |
| * gm2-gcc/m2block.h (m2block_GetTotalConstants): New function |
| prototype. |
| (m2block_GetGlobalTypes): Ditto. |
| * gm2-gcc/m2convert.cc (converting_ISO_generic): Reimplement. |
| (m2convert_ToPIMByte): New function. |
| * gm2-gcc/m2convert.def (ToLoc): New procedure function. |
| (ToPIMByte): Ditto. |
| * gm2-gcc/m2convert.h (m2convert_ToPIMByte): Ditto. |
| * gm2-gcc/m2decl.h (m2decl_RememberVariables): Ditto. |
| * gm2-gcc/m2expr.cc (m2expr_BuildLogicalShift): Reimplement. |
| (m2expr_BuildLRotate): Ditto. |
| (m2expr_BuildLRLn): Ditto. |
| (m2expr_BuildLRRn): Ditto. |
| (m2expr_BuildLogicalRotate): Ditto. |
| (buildUnboundedArrayOf): Ditto. |
| (BuildIfBitInSetLower): New function. |
| (m2expr_BuildBinarySetDo): Reimplement. |
| (m2expr_BuildIfInSet): Ditto. |
| (m2expr_BuildIfNotInSet): New function. |
| (m2expr_Build4LogicalOr): Reimplement. |
| (m2expr_BuildSetNegate): Ditto. |
| (m2expr_BuildLogicalOrAddress): Ditto. |
| (m2expr_BuildLogicalOr): Ditto. |
| (m2expr_BuildLogicalAnd): Ditto. |
| (m2expr_BuildSymmetricDifference): Ditto. |
| (m2expr_BuildLogicalDifference): Ditto. |
| (boolean_enum_to_unsigned): Ditto. |
| (m2expr_BuildIsSuperset): Ditto. |
| (m2expr_BuildIsNotSuperset): Ditto. |
| (m2expr_BuildIsSubset): Ditto. |
| (m2expr_BuildIfBitInSetJump): Ditto. |
| (m2expr_BuildIfNotConstInVar): Ditto. |
| (m2expr_BuildIfVarInVar): Ditto. |
| (m2expr_BuildIfNotVarInVar): Remove. |
| (m2expr_BuildIfConstInVar): Remove. |
| (m2expr_BuildForeachWordInSetDoIfExpr): Ditto. |
| (m2expr_BuildBinaryForeachWordDo): Ditto. |
| (m2expr_BuildIfInRangeGoto): Reimplement. |
| (m2expr_BuildIfNotInRangeGoto): Ditto. |
| (m2expr_SetAndNarrow): Ditto. |
| (m2expr_GetBitsetZero): New function. |
| (m2expr_GetRValue): Ditto. |
| * gm2-gcc/m2expr.def (GetBitsetZero): New function. |
| (BuildSetNegate): Ditto. |
| (BuildLogicalOr): Reimplement. |
| (BuildLogicalAnd): Ditto. |
| (BuildSymmetricDifference): Ditto. |
| (BuildLogicalDifference): Ditto. |
| (BuildIfInSet): New procedure function. |
| (BuildIfNotInSet): Ditto. |
| (BuildEqualTo): Reimplement. |
| (BuildNotEqualTo): Ditto. |
| (BuildBinaryForeachWordDo): Remove. |
| (BuildBinarySetDo): Ditto. |
| (GetRValue): New procedure function. |
| * gm2-gcc/m2expr.h (m2expr_BuildBinaryForeachWordDo): Remove. |
| (m2expr_BuildForeachWordInSetDoIfExpr): Ditto. |
| (m2expr_BuildIfNotVarInVar): Ditto. |
| (m2expr_BuildIfVarInVar): Ditto. |
| (m2expr_BuildIfNotConstInVar): Ditto. |
| (m2expr_BuildIfConstInVar): Ditto. |
| (m2expr_BuildLogicalDifference): Reimplement. |
| (m2expr_BuildSymmetricDifference): Ditto. |
| (m2expr_BuildLogicalAnd): Ditto. |
| (m2expr_BuildLogicalOr): Ditto. |
| (m2expr_BuildLogicalOrAddress): Ditto. |
| (m2expr_BuildSetNegate): Ditto. |
| (m2expr_GetBitsetZero): New function. |
| (m2expr_GetRValue): Ditto. |
| (m2expr_BuildIfInSet): Ditto. |
| (m2expr_BuildIfNotInSet): Ditto. |
| * gm2-gcc/m2options.h (M2Options_SetTimeReport): New function. |
| (M2Options_SetMemReport): Ditto. |
| (M2Options_SetWideset): Ditto. |
| (M2Options_GetWideset): Ditto. |
| * gm2-gcc/m2pp.cc (m2pp_shiftrotate_expr): New function. |
| (m2pp_simple_expression): Ditto. |
| * gm2-gcc/m2statement.cc (m2statement_BuildStartFunctionCode): |
| Tidyup comments. |
| (m2statement_BuildEndFunctionCode): Ditto. |
| (m2statement_BuildPushFunctionContext): Ditto. |
| (copy_array): Ditto. |
| (CopyByField_Lower): Ditto. |
| (m2statement_BuildGoto): Ditto. |
| (m2statement_DeclareLabel): Ditto. |
| (m2statement_BuildParam): Ditto. |
| (nCount): Ditto. |
| (m2statement_BuildProcedureCallTree): Ditto. |
| (m2statement_BuildBuiltinCallTree): Ditto. |
| (m2statement_BuildFunctValue): Ditto. |
| (m2statement_BuildCall2): Ditto. |
| (m2statement_BuildCall3): Ditto. |
| (m2statement_BuildFunctionCallTree): Ditto. |
| (m2statement_SetLastFunction): Ditto. |
| (m2statement_SetParamList): Ditto. |
| (m2statement_GetLastFunction): Ditto. |
| (m2statement_GetParamList): Ditto. |
| (m2statement_GetCurrentFunction): Ditto. |
| (m2statement_GetParamTree): Ditto. |
| (m2statement_BuildTryFinally): Ditto. |
| (m2statement_BuildCleanUp): Ditto. |
| (m2statement_BuildUnaryForeachWordDo): Remove. |
| (m2statement_BuildExcludeVarConst): Ditto. |
| (m2statement_BuildExcludeVarVar): Ditto. |
| (m2statement_BuildIncludeVarConst): Ditto. |
| (m2statement_BuildIncludeVarVar): Ditto. |
| (m2statement_DoJump): Remove. |
| (m2statement_IfExprJump): New function. |
| (m2statement_IfBitInSetJump): Ditto. |
| * gm2-gcc/m2statement.def (DoJump): Remove. |
| (IfExprJump): New procedure function. |
| (BuildUnaryForeachWordDo): Remove. |
| (IfBitInSetJump): New procedure function. |
| * gm2-gcc/m2statement.h (m2statement_BuildForeachWordDo): Remove. |
| (m2statement_DoJump): Ditto. |
| (m2statement_IfExprJump): New function. |
| (m2statement_IfBitInSetJump): Ditto. |
| * gm2-gcc/m2treelib.cc (m2treelib_do_jump_if_bit): Reimplement. |
| (nCount): Replace with ... |
| (m2treelib_nCount): ... this. |
| (m2treelib_DoCall): Reimplement. |
| (m2treelib_get_rvalue): Remove. |
| * gm2-gcc/m2treelib.def (get_rvalue): Remove. |
| (nCount): New procedure function. |
| * gm2-gcc/m2treelib.h (m2treelib_get_rvalue): Remove. |
| (m2treelib_nCount): New function. |
| * gm2-gcc/m2type.cc (constructor_elements): Change type to vec. |
| (m2type_BuildEndArrayType): Reformat. |
| (build_m2_type_node_by_array): Ditto. |
| (m2type_GetBooleanEnumList): New procedure function. |
| (m2type_BuildEnumerator): Add const to char *. |
| (m2type_BuildSetConstructorElement): Reimplement. |
| (m2type_BuildEndSetConstructor): Ditto. |
| (build_record_constructor): New function. |
| (m2type_BuildEndRecordConstructor): Reimplement. |
| (m2type_BuildRecordConstructorElement): Ditto. |
| (m2type_BuildStartArrayConstructor): Reimplement. |
| (m2type_BuildEndArrayConstructor): Remove blank lines. |
| * gm2-gcc/m2type.def (BuildSetConstructorElement): Reimplement. |
| (BuildEndArrayType): Reformat. |
| (GetBooleanEnumList): New function. |
| * gm2-gcc/m2type.h (m2type_BuildEnumerator): Add const to char *. |
| (m2type_BuildSetConstructorElement): Reimplement. |
| (m2type_GetBooleanEnumList): New procedure function. |
| * gm2-lang.cc (OPT_fmem_report): New option. |
| (OPT_ftime_report): Ditto. |
| (OPT_fwideset): Ditto. |
| * gm2-libs-coroutines/SYSTEM.def (ShiftVal): Remove. |
| (ShiftLeft): Ditto. |
| (ShiftRight): Ditto. |
| (RotateVal): Ditto. |
| (RotateLeft): Ditto. |
| (RotateRight): Ditto. |
| * gm2-libs-coroutines/SYSTEM.mod: Reimplement. |
| * gm2-libs-iso/SYSTEM.def (ShiftVal): Remove. |
| (ShiftLeft): Ditto. |
| (ShiftRight): Ditto. |
| (RotateVal): Ditto. |
| (RotateLeft): Ditto. |
| (RotateRight): Ditto. |
| * gm2-libs-iso/SYSTEM.mod: Reimplement. |
| * gm2-libs/SYSTEM.def (ShiftVal): Remove. |
| (ShiftLeft): Ditto. |
| (ShiftRight): Ditto. |
| (RotateVal): Ditto. |
| (RotateLeft): Ditto. |
| (RotateRight): Ditto. |
| * gm2-libs/SYSTEM.mod: Reimplement. |
| * gm2-libs/SysStorage.def (DEALLOCATE): Improve comment. |
| * gm2-libs/SysStorage.mod: Improve comment. |
| * init/ppginit (M2Diagnostic): Add. |
| (StringConvert): Add. |
| * lang.opt (fmem-report): Add access to c.opt. |
| (ftime-report): Ditto. |
| (fwideset): New option. |
| * pge-boot/main.cc (_M2_M2Diagnostic_init): New function. |
| (_M2_M2Diagnostic_fini): Ditto. |
| (_M2_StringConvert_init): Ditto. |
| (_M2_StringConvert_fini): Ditto. |
| (main): Call _M2_M2Diagnostic_init. |
| Call _M2_StringConvert_init. |
| Call _M2_M2Diagnostic_fini. |
| Call _M2_StringConvert_fini. |
| * tools-src/makeSystem: Add -gdb option. |
| * gm2-libs/M2Diagnostic.def: New file. |
| * gm2-libs/M2Diagnostic.mod: New file. |
| * gm2-libs/M2WIDESET.def: New file. |
| * gm2-libs/M2WIDESET.mod: New file. |
| * mc-boot/GM2Diagnostic.cc: New file. |
| * mc-boot/GM2Diagnostic.h: New file. |
| * pge-boot/GM2Diagnostic.cc: New file. |
| * pge-boot/GM2Diagnostic.h: New file. |
| * pge-boot/GSelective.h: New file. |
| * pge-boot/GStringConvert.cc: New file. |
| |
| 2025-08-29 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/121709 |
| * gm2-lang.cc (concat_component): New function. |
| (find_cpp_entry): Ditto. |
| (lookup_cpp_default): Ditto. |
| (add_default_include_paths): Rewrite. |
| (m2_pathname_root): Remove. |
| |
| 2025-08-28 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/121629 |
| * gm2-compiler/PathName.mod: Add copyright notice. |
| * gm2-lang.cc (named_path): Add field lib_root. |
| (push_back_Ipath): Set lib_root false. |
| (push_back_lib_root): New function. |
| (get_dir_sep_size): Ditto. |
| (add_path_component): Ditto. |
| (add_one_import_path): Ditto. |
| (add_non_dialect_specific_path): Ditto. |
| (foreach_lib_gen_import_path): Ditto. |
| (get_module_source_dir): Ditto. |
| (add_default_include_paths): Ditto. |
| (assign_flibs): Ditto. |
| (m2_pathname_root): Ditto. |
| (add_m2_import_paths): Remove function. |
| (gm2_langhook_post_options): Call assign_flibs. |
| Check np.lib_root and call foreach_lib_gen_import_path. |
| Replace call to add_m2_import_paths with a call to |
| add_default_include_paths. |
| (gm2_langhook_handle_option): Add case OPT_fm2_pathname_rootI_. |
| * gm2spec.cc (named_path): Add field lib_root. |
| (push_back_Ipath): Set lib_root false. |
| (push_back_lib_root): New function. |
| (add_m2_I_path): Add OPT_fm2_pathname_rootI_ option |
| if np.lib_root. |
| (lang_specific_driver): Add case OPT_fm2_pathname_root_. |
| * lang.opt (fm2-pathname-root=): New option. |
| (fm2-pathname-rootI=): Ditto. |
| |
| 2025-08-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/121354 |
| * gm2-compiler/M2GenGCC.mod (FoldHigh): Rewrite. |
| (IsUnboundedArray): New procedure function. |
| |
| 2025-07-31 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/121314 |
| * mc-boot/GFormatStrings.cc (PerformFormatString): Rebuilt. |
| * mc-boot/GM2EXCEPTION.cc (M2EXCEPTION_M2Exception): Rebuilt. |
| * mc-boot/GSFIO.cc (SFIO_GetFileName): Rebuilt. |
| * mc-boot/GSFIO.h (SFIO_GetFileName): Rebuilt. |
| * mc-boot/Gdecl.cc: Rebuilt. |
| * mc-boot/GmcFileName.h: Rebuilt. |
| * mc/decl.mod (getStringChar): New procedure function. |
| (getStringContents): Call getStringChar. |
| (addQuotes): New procedure function. |
| (foldBinary): Call addQuotes to add delimiting quotes |
| to the new string. |
| |
| 2025-07-29 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2GenGCC.mod (FoldBecomes): Remove all |
| local variables. |
| (CodeIndrX): Remove length. |
| Remove newstr. |
| * gm2-compiler/M2Range.mod (FoldTypeIndrX): Remove desType. |
| |
| 2025-07-29 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/121289 |
| * gm2-compiler/M2Students.def (CheckVariableAgainstKeyword): New |
| parameter tok. |
| * gm2-compiler/M2Students.mod (CheckVariableAgainstKeyword): New |
| parameter tok. |
| Pass tok to PerformVariableKeywordCheck. |
| (PerformVariableKeywordCheck): New parameter tok. |
| Pass tok to MetaErrorStringT0. |
| * gm2-compiler/P2SymBuild.mod (BuildVariable): Pass tok to |
| CheckVariableAgainstKeyword. |
| * gm2-libs-iso/LowLong.mod (except): Replace with ... |
| (exceptSrc): ... this. |
| * gm2-libs-iso/LowReal.mod (except): Replace with ... |
| (exceptSrc): ... this. |
| * gm2-libs-iso/LowShort.mod (except): Replace with ... |
| (exceptSrc): ... this. |
| * gm2-libs-iso/Processes.mod (Wait): Replace from with fromCor. |
| * gm2-libs-iso/RndFile.mod (EndPos): Replace end with endP. |
| * gm2-libs/SCmdArgs.mod (GetArg): Replace start with startPos. |
| Replace end with endPos. |
| (NArg): Replace start with startPos. |
| Replace end with endPos. |
| |
| 2025-07-25 David Malcolm <dmalcolm@redhat.com> |
| |
| * gm2-gcc/m2linemap.cc: Update usage of "diagnostic_info" to |
| explicitly refer to "diagnostics::diagnostic_info". |
| * gm2-gcc/rtegraph.cc: Likewise. |
| |
| 2025-07-25 David Malcolm <dmalcolm@redhat.com> |
| |
| * gm2-gcc/m2linemap.cc: Update for diagnostic_t becoming |
| enum class diagnostics::kind. |
| * gm2-gcc/rtegraph.cc: Likewise. |
| |
| 2025-07-25 David Malcolm <dmalcolm@redhat.com> |
| |
| * gm2-gcc/m2color.cc: Update for move of diagnostic-color.h to |
| diagnostics/color.h. |
| |
| 2025-07-23 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs/M2EXCEPTION.mod (M2Exception): Add return |
| exException in case Raise completes. |
| |
| 2025-07-23 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/121164 |
| * gm2-compiler/P1SymBuild.mod: Remove PutProcTypeParam. |
| Remove PutProcTypeParam. |
| (CheckFileName): Remove. |
| (P1EndBuildDefinitionModule): Correct spelling. |
| (P1EndBuildImplementationModule): Ditto. |
| (P1EndBuildProgramModule): Ditto. |
| (EndBuildInnerModule): Ditto. |
| * gm2-compiler/P2SymBuild.mod (P2EndBuildDefModule): Correct |
| spelling. |
| (P2EndBuildImplementationModule): Ditto. |
| (P2EndBuildProgramModule): Ditto. |
| (EndBuildInnerModule): Ditto. |
| (CheckFormalParameterSection): Ditto. |
| * gm2-compiler/P3SymBuild.mod (P3EndBuildDefModule): Ditto. |
| * gm2-compiler/PCSymBuild.mod (PCEndBuildDefModule): Ditto. |
| (fixupProcedureType): Pass tok to PutProcTypeVarParam. |
| Pass tok to PutProcTypeParam. |
| * gm2-compiler/SymbolTable.def (PutProcTypeParam): Add tok |
| parameter. |
| (PutProcTypeVarParam): Ditto. |
| * gm2-compiler/SymbolTable.mod (SymParam): At change type to |
| CARDINAL. |
| New field FullTok. |
| New field Scope. |
| (SymVarParam): At change type to CARDINAL. |
| New field FullTok. |
| New field Scope. |
| (GetVarDeclTok): Check ShadowVar for NulSym and return At. |
| (PutParam): Initialize FullTok. |
| Initialize At. |
| Initialize Scope. |
| (PutVarParam): Initialize FullTok. |
| Assign At. |
| Initialize Scope. |
| (AddProcedureProcTypeParam): Add tok parameter. |
| (GetScope): Add ParamSym and VarParamSym clause. |
| (PutProcTypeVarParam): Add tok parameter. |
| Initialize At. |
| Initialize FullTok. |
| (GetDeclaredDefinition): Clause ParamSym return At. |
| Clause VarParamSym return At. |
| (GetDeclaredModule): Ditto. |
| (PutDeclaredDefinition): Remove clause ParamSym. |
| Remove clause VarParamSym. |
| (PutDeclaredModule): Remove clause ParamSym. |
| Remove clause VarParamSym. |
| |
| 2025-07-18 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/121164 |
| * gm2-libs/ARRAYOFCHAR.mod (Write): Rename 2nd parameter |
| name a to str. |
| |
| 2025-07-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/120912 |
| * gm2-libs-iso/IOChanUtils.def (GetFile): New procedure function. |
| * gm2-libs-iso/IOChanUtils.mod (GetFile): New procedure function. |
| |
| 2025-06-29 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/117203 |
| * gm2-libs-log/FileSystem.def (GetFileName): New |
| procedure function. |
| (WriteString): New procedure. |
| * gm2-libs-log/FileSystem.mod (GetFileName): New |
| procedure function. |
| (WriteString): New procedure. |
| * gm2-libs/SFIO.def (GetFileName): New procedure function. |
| * gm2-libs/SFIO.mod (GetFileName): New procedure function. |
| * gm2-libs-iso/IOChanUtils.def: New file. |
| * gm2-libs-iso/IOChanUtils.mod: New file. |
| |
| 2025-06-22 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/120731 |
| * gm2-libs-log/Strings.def (Delete): Rewrite comment. |
| * gm2-libs-log/Strings.mod (Pos): Rewrite. |
| (PosLower): New procedure function. |
| |
| 2025-06-21 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2GCCDeclare.mod (StartDeclareModuleScopeSeparate): |
| Reformat statement comments. |
| (StartDeclareModuleScopeWholeProgram): Ditto. |
| |
| 2025-06-17 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/120673 |
| * gm2-compiler/M2GCCDeclare.mod (ErrorDepList): New |
| global variable set containing every errant dependency symbol. |
| (mystop): Remove. |
| (EmitCircularDependancyError): Replace with ... |
| (EmitCircularDependencyError): ... this. |
| (AssertAllTypesDeclared): Rewrite. |
| (DoVariableDeclaration): Ditto. |
| (TypeDependentsDeclared): New procedure function. |
| (PrepareGCCVarDeclaration): Ditto. |
| (DeclareVariable): Remove assert. |
| (DeclareLocalVariable): Ditto. |
| (Constructor): Initialize ErrorDepList. |
| * gm2-compiler/M2MetaError.mod (doErrorScopeProc): Rewrite |
| and ensure that a symbol with a module scope does not lookup |
| from a definition module. |
| * gm2-compiler/P2SymBuild.mod (BuildType): Rewrite so that |
| a synonym type is created using the token refering to the name |
| on the lhs. |
| |
| 2025-06-12 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/119650 |
| * gm2-libs/ARRAYOFCHAR.def: Remove comment about non |
| existent read. |
| * target-independent/m2/Builtins.texi: Regenerate. |
| * target-independent/m2/SYSTEM-iso.texi: Ditto. |
| * target-independent/m2/SYSTEM-pim.texi: Ditto. |
| * target-independent/m2/gm2-libs.texi: Ditto. |
| |
| 2025-06-09 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/120606 |
| * gm2-compiler/M2Quads.mod (ForLoopLastIterator): Dereference |
| start and end expressions e1 and e2 respectively. |
| |
| 2025-06-07 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/119650 |
| PR modula2/117203 |
| * gm2-compiler/P2Build.bnf (CheckModuleQualident): New |
| procedure. |
| (Qualident): Rewrite. |
| * gm2-compiler/P3Build.bnf (PushTFQualident): New procedure. |
| (CheckModuleQualident): Ditto. |
| (Qualident): Rewrite. |
| * gm2-compiler/PCBuild.bnf (PushTFQualident): New procedure. |
| (CheckModuleQualident): Ditto. |
| (Qualident): Rewrite. |
| * gm2-compiler/PHBuild.bnf (PushTFQualident): New procedure. |
| (CheckModuleQualident): Ditto. |
| (Qualident): Rewrite. |
| * gm2-libs/ARRAYOFCHAR.def: New file. |
| * gm2-libs/ARRAYOFCHAR.mod: New file. |
| * gm2-libs/CFileSysOp.def: New file. |
| * gm2-libs/CHAR.def: New file. |
| * gm2-libs/CHAR.mod: New file. |
| * gm2-libs/FileSysOp.def: New file. |
| * gm2-libs/FileSysOp.mod: New file. |
| * gm2-libs/String.def: New file. |
| * gm2-libs/String.mod: New file. |
| * gm2-libs/StringFileSysOp.def: New file. |
| * gm2-libs/StringFileSysOp.mod: New file. |
| |
| 2025-06-06 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/120542 |
| * gm2-compiler/M2Quads.mod (BuildReturnLower): New procedure. |
| (BuildReturn): Allow return without an expression from |
| module initialization blocks. Generate an error if an |
| expression is provided. Call BuildReturnLower if no error |
| was seen. |
| |
| 2025-06-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/120474 |
| * gm2-libs-log/InOut.mod (LocalWrite): Call FIO.FlushBuffer. |
| |
| 2025-06-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/120497 |
| * gm2-compiler/M2Range.mod (IsAssignmentCompatible): Remove from |
| import list. |
| (FoldTypeReturnFunc): Rewrite to skip the Lvalue of a var |
| variable. |
| (CodeTypeReturnFunc): Ditto. |
| (CodeTypeIndrX): Call AssignmentTypeCompatible rather than |
| IsAssignmentCompatible. |
| (FoldTypeIndrX): Ditto. |
| |
| 2025-05-31 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/120389 |
| * gm2-compiler/M2Check.def (AssignmentTypeCompatible): Add new |
| parameter enableReason. |
| * gm2-compiler/M2Check.mod (EquivalenceProcedure): New type. |
| (falseReason2): New procedure function. |
| (falseReason1): Ditto. |
| (falseReason0): Ditto. |
| (checkTypeEquivalence): Rewrite. |
| (checkUnboundedArray): Ditto. |
| (checkUnbounded): Ditto. |
| (checkArrayTypeEquivalence): Ditto. |
| (checkCharStringTypeEquivalence): Ditto. |
| (buildError4): Add false reason. |
| (buildError2): Ditto. |
| (IsTyped): Use GetDType. |
| (IsTypeEquivalence): New procedure function. |
| (checkVarTypeEquivalence): Ditto. |
| (checkVarEquivalence ): Rewrite. |
| (checkConstMeta): Ditto. |
| (checkEnumField): New procedure function. |
| (checkEnumFieldEquivalence): Ditto. |
| (checkSubrangeTypeEquivalence): Rewrite. |
| (checkSystemEquivalence): Ditto. |
| (checkTypeKindViolation): Ditto. |
| (doCheckPair): Ditto. |
| (InitEquivalenceArray): New procedure. |
| (addEquivalence): Ditto. |
| (checkProcType): Rewrite. |
| (deconstruct): Deallocate reason string. |
| (AssignmentTypeCompatible): Initialize reason and reasonEnable |
| fields. |
| (ParameterTypeCompatible): Ditto. |
| (doExpressionTypeCompatible): Ditto. |
| * gm2-compiler/M2GenGCC.mod (CodeIndrX) Rewrite. |
| (CheckBinaryExpressionTypes): Rewrite and simplify now that the |
| type checker is more robust. |
| (CheckElementSetTypes): Ditto. |
| (CodeXIndr): Add new range assignment type check. |
| * gm2-compiler/M2MetaError.def: Correct comments. |
| * gm2-compiler/M2Options.def (SetStrictTypeAssignment): New procedure. |
| (SetStrictTypeReason): Ditto. |
| * gm2-compiler/M2Options.mod: (SetStrictTypeAssignment): New procedure. |
| (SetStrictTypeReason): Ditto. |
| (StrictTypeReason): Initialize. |
| (StrictTypeAssignment): Ditto. |
| * gm2-compiler/M2Quads.mod (CheckBreak): Delete. |
| (BreakQuad): New global variable. |
| (BreakAtQuad): Delete. |
| (gdbhook): New procedure. |
| (BreakWhenQuadCreated): Ditto. |
| (CheckBreak): Ditto. |
| (Init): Call BreakWhenQuadCreated and gdbhook. |
| (doBuildAssignment): Add type assignment range check. |
| (CheckProcTypeAndProcedure): Only check if the procedure |
| types differ. |
| (doIndrX): Add type IndrX range check. |
| (CheckReturnType): Add range return type check. |
| * gm2-compiler/M2Range.def (InitTypesIndrXCheck): New procedure |
| function. |
| (InitTypesReturnTypeCheck): Ditto. |
| * gm2-compiler/M2Range.mod (InitTypesIndrXCheck): New procedure |
| function. |
| (InitTypesReturnTypeCheck): Ditto. |
| (HandlerExists): Add new clauses. |
| (FoldAssignment): Pass extra FALSE parameter to |
| AssignmentTypeCompatible. |
| (FoldTypeReturnFunc): New procedure. |
| (FoldTypeAssign): Ditto. |
| (FoldTypeIndrX): Ditto. |
| (CodeTypeAssign): Rewrite. |
| (CodeTypeIndrX): New procedure. |
| (CodeTypeReturnFunc): Ditto. |
| (FoldTypeCheck): Add new case clauses. |
| (CodeTypeCheck): Ditto. |
| (FoldRangeCheckLower): Ditto. |
| (IssueWarning): Ditto. |
| * gm2-gcc/m2options.h (M2Options_SetStrictTypeAssignment): New |
| function prototype. |
| (M2Options_SetStrictTypeReason): Ditto. |
| * gm2-lang.cc (gm2_langhook_handle_option): New case clause |
| OPT_fm2_strict_type_reason. |
| * lang.opt (-fm2-strict-type-reason): New option. |
| |
| 2025-05-22 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/120389 |
| * gm2-compiler/M2GenGCC.mod (CodeXIndr): Check to see that |
| the type of left is assignment compatible with the type of |
| right. |
| |
| 2025-05-13 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/120253 |
| * m2.flex (FIRST_COLUMN): New define. |
| (updatepos): Remove commented code. |
| (consumeLine): Assign column to FIRST_COLUMN. |
| (initLine): Ditto. |
| (m2flex_GetColumnNo): Return FIRST_COLUMN if currentLine is NULL. |
| (m2flex_GetLineNo): Rewrite for positive logic. |
| (m2flex_GetLocation): Ditto. |
| |
| 2025-05-05 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/120117 |
| * gm2-compiler/M2GenGCC.mod (FoldBecomes): Remove the call to |
| RemoveQuad since this is performed by TypeCheckBecomes. |
| * gm2-compiler/PCSymBuild.mod (buildConstFunction): Rewrite |
| header comment. |
| Check for a set or a type aliased set and appropriately |
| skip type equivalences and obtain the element type. |
| * gm2-compiler/SymbolTable.mod (PutConst): Add call to |
| CheckBreak. |
| |
| 2025-04-24 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/119915 |
| * gm2-libs/FormatStrings.mod (PerformFormatString): Handle |
| the %u and %x format specifiers in a similar way to the %d |
| specifier. Avoid using Slice and use Copy instead. |
| |
| 2025-04-24 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/119914 |
| * gm2-compiler/M2Check.mod (checkConstMeta): Add check for |
| Ztype, Rtype and Ctype and unbounded arrays. |
| (IsZRCType): New procedure function. |
| (isZRC): Add comment. |
| * gm2-compiler/M2Quads.mod: |
| * gm2-compiler/M2Range.mod (gdbinit): New procedure. |
| (BreakWhenRangeCreated): Ditto. |
| (CheckBreak): Ditto. |
| (InitRange): Call CheckBreak. |
| (Init): Add gdbhook and initialize interactive watch point. |
| * gm2-compiler/SymbolTable.def (GetNthParamAnyClosest): New |
| procedure function. |
| * gm2-compiler/SymbolTable.mod (BreakSym): Remove constant. |
| (BreakSym): Add Variable. |
| (stop): Remove. |
| (gdbhook): New procedure. |
| (BreakWhenSymCreated): Ditto. |
| (CheckBreak): Ditto. |
| (NewSym): Call CheckBreak. |
| (Init): Add gdbhook and initialize interactive watch point. |
| (MakeProcedure): Replace guarded call to stop with CheckBreak. |
| (GetNthParamChoice): New procedure function. |
| (GetNthParamOrdered): Ditto. |
| (GetNthParamAnyClosest): Ditto. |
| (GetOuterModuleScope): Ditto. |
| |
| 2025-04-11 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/119735 |
| * gm2-compiler/M2MetaError.def: Hide %n from comment. |
| * gm2-compiler/SymbolTable.def (PutIncludedByDefinition): Remove ' |
| from comment. |
| * gm2-gcc/m2expr.def (init): Ditto. |
| * gm2-libiberty/pexecute.def: Ditto. |
| * gm2-libs-coroutines/Executive.def (InitSemaphore): Ditto. |
| (Wait): Ditto. |
| * gm2-libs-iso/ClientSocket.def: Ditto. |
| * gm2-libs-log/BlockOps.def (BlockMoveBackward): Ditto. |
| * gm2-libs-log/InOut.def: Ditto. |
| * mc/mcFileName.def: Ditto. |
| |
| 2025-04-09 Jakub Jelinek <jakub@redhat.com> |
| |
| * gm2-compiler/M2MetaError.def: Fix comment typo, range" -> "range2". |
| |
| 2025-03-30 Sandra Loosemore <sloosemore@baylibre.com> |
| |
| * lang.opt.urls: Regenerate. |
| |
| 2025-03-28 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/119504 |
| * gm2-compiler/M2Quads.mod (BuildHighFunction): Defend against |
| Type = NulSym and fall into BuildConstHighFromSym. |
| (BuildDesignatorArray): Rewrite to detect an array access to |
| a constant string. |
| (BuildDesignatorArrayStaticDynamic): New procedure. |
| |
| 2025-03-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/119449 |
| * gm2-compiler/M2GCCDeclare.def (TryDeclareType): Remove tokenno |
| parameter. |
| * gm2-compiler/M2GCCDeclare.mod (TryDeclareType): Ditto. |
| * gm2-compiler/M2GenGCC.mod (FoldTBitsize): Remove op2 and |
| rename op1 as res and op3 as type. |
| (FoldStandardFunction): Call FoldTBitsize omitting op2. |
| * gm2-compiler/M2Quads.mod (GetTypeMin): Rewrite. |
| (GetTypeMinLower): New procedure function. |
| (GetTypeMax): Rewrite. |
| (GetTypeMaxLower): New procedure function. |
| * gm2-compiler/M2Range.mod (CheckCancelled): Comment out. |
| * gm2-compiler/M2System.mod (CreateMinMaxFor): Add realtype |
| parameter. |
| (MapType): Rewrite to use realtype. |
| (CreateType): Ditto. |
| (AttemptToCreateType): Ditto. |
| (MakeFixedSizedTypes): Add realtype boolean. |
| (InitPIMTypes): Ditto. |
| (InitISOTypes): Ditto. |
| (MakeExtraSystemTypes): Ditto. |
| * gm2-gcc/m2pp.cc (m2pp_nop_expr): Remove code. |
| * gm2-gcc/m2type.cc (IsGccRealType): New function. |
| (m2type_GetMinFrom): Rewrite. |
| (m2type_GetMaxFrom): Ditto. |
| (do_min_real): Declare static. |
| (do_max_real): Declare static. |
| |
| 2025-03-20 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/118600 |
| * gm2-compiler/M2GenGCC.mod (PerformCodeBecomes): New procedure. |
| (CodeBecomes): Refactor and call PerformCodeBecomes. |
| * gm2-gcc/m2builtins.cc (gm2_strncpy_node): New global variable. |
| (DoBuiltinStrNCopy): New function. |
| (m2builtins_BuiltinStrNCopy): New function. |
| (m2builtins_init): Initialize gm2_strncpy_node. |
| * gm2-gcc/m2builtins.def (BuiltinStrNCopy): New procedure |
| function. |
| * gm2-gcc/m2builtins.h (m2builtins_BuiltinStrNCopy): New |
| function. |
| * gm2-gcc/m2statement.cc (copy_record_fields): New function. |
| (copy_array): Ditto. |
| (copy_strncpy): Ditto. |
| (copy_memcpy): Ditto. |
| (CopyByField_Lower): Ditto. |
| (m2statement_CopyByField): Ditto. |
| * gm2-gcc/m2statement.def (CopyByField): New procedure function. |
| * gm2-gcc/m2statement.h (m2statement_CopyByField): New function. |
| * gm2-gcc/m2type.cc (check_record_fields): Ditto. |
| (check_array_types): Ditto. |
| (m2type_IsGccStrictTypeEquivalent): Ditto. |
| * gm2-gcc/m2type.def (IsGccStrictTypeEquivalent): New procedure |
| function. |
| * gm2-gcc/m2type.h (m2type_IsAddress): Replace return type int |
| with bool. |
| |
| 2025-03-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/115111 |
| * gm2-compiler/M2GenGCC.mod (CodeStatementNote): Add debugging. |
| * gm2-compiler/M2Quads.def (BuildEndWhile): New parameter reltokpos. |
| * gm2-compiler/M2Quads.mod (BuildEndWhile): Reimplement using new parameter. |
| * gm2-compiler/P3Build.bnf (WhileStatement): Call BuildEndWhile |
| with -1 relative position. |
| * gm2-gcc/m2block.cc (do_add_stmt): Tidy comment. |
| (GetGlobals): Ditto. |
| (flush_pending_note): Remove #if 0 code. |
| * gm2-gcc/m2pp.cc (m2pp_nop_expr): New function. |
| (m2pp_statement): New case clause call m2pp_nop_expr. |
| |
| 2025-03-10 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/119192 |
| * gm2-compiler/M2GCCDeclare.def (TryDeclareType): New procedure. |
| * gm2-compiler/M2GCCDeclare.mod (IsAnyType): New procedure. |
| (TryDeclareType): Ditto. |
| * gm2-compiler/M2GenGCC.mod (FoldTBitsize): New procedure. |
| (FoldStandardFunction): Call FoldTBitsize. |
| * gm2-gcc/m2expr.cc (BuildTBitSize): Improve comment. |
| (m2expr_BuildSystemTBitSize): New function. |
| * gm2-gcc/m2expr.def (BuildSystemTBitSize): New procedure |
| function. |
| * gm2-gcc/m2expr.h (m2expr_BuildSystemTBitSize): New function |
| prototype. |
| |
| 2025-03-05 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/118998 |
| * gm2-gcc/m2expr.cc (m2expr_BuildLRotate): Convert nBits |
| to the return type. |
| (m2expr_BuildRRotate): Ditto. |
| (m2expr_BuildLogicalRotate): Convert op3 to an integer type. |
| Replace op3 aith rotateCount. |
| Negate rotateCount if it is negative and call rotate right. |
| * gm2-gcc/m2pp.cc (m2pp_bit_and_expr): New function. |
| (m2pp_binary_function): Ditto. |
| (m2pp_simple_expression): BIT_AND_EXPR new case clause. |
| LROTATE_EXPR ditto. |
| RROTATE_EXPR ditto. |
| |
| 2025-03-02 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/119088 |
| * gm2-compiler/M2SymInit.mod (ConfigSymInit): Reimplement to |
| defensively check for NulSym type. |
| |
| 2025-02-22 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/118978 |
| * gm2-compiler/M2Check.mod (checkConstMeta): Add check for |
| typed constants. |
| * gm2-compiler/M2Quads.mod (BoolFrame): New field RangeDep. |
| (CheckProcedureParameters): Call PutRangeDep to associate the |
| range dependency with the parameter on the quad stack. |
| Pass ParamCheckId to CheckParameter. |
| (CheckProcTypeAndProcedure): Add ParamCheckId parameter. |
| Pass ParamCheckId to BuildRange. |
| (CheckParameter): New parameter ParamCheckId. |
| Pass ParamCheckId to CheckProcTypeAndProcedure. |
| (CheckParameterOrdinals): Add extra range dep parameter to the |
| call of InitParameterRangeCheck. |
| (ConvertBooleanToVariable): Initialize RangeDep field. |
| (PushBacktok): Ditto. |
| (OperandRangeDep): New procedure. |
| (PutRangeDep): Ditto. |
| * gm2-compiler/M2Range.def (InitTypesParameterCheck): Add new |
| parameter depRangeId. |
| (InitParameterRangeCheck): Add new parameter parentRangeId. |
| (FoldRangeCheck): Add new parameter range. |
| * gm2-compiler/M2Range.mod (InitTypesParameterCheck): Add new |
| parameter depRangeId. |
| (InitParameterRangeCheck): Add new parameter parentRangeId. |
| (FoldRangeCheck): Add new parameter range and rewrite. |
| (FoldRangeCheckLower): New procedure. |
| (Range): New field cancelled. |
| New field dependantid. |
| (PutRangeParam): Initialize dependantid. |
| (PutRangeParamAssign): Ditto. |
| (CheckCancelled): New procedure. |
| (Cancel): Ditto. |
| (IsCancelled): New procedure function. |
| (FoldTypeParam): Add depRangeId parameter. |
| (WriteRangeCheck): Add dependent debugging. |
| |
| 2025-02-11 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/118761 |
| * gm2spec.cc (lang_specific_driver): Add case clauses for |
| OPT__help, OPT__help_ set in_added_libraries to 0 and early |
| return. |
| |
| 2025-02-04 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/115112 |
| * gm2-compiler/M2Quads.mod (BuildPseudoProcedureCall): Pass |
| tokno to each build procedure. |
| (BuildThrowProcedure): New parameter functok. |
| (BuildIncProcedure): New parameter proctok. |
| Pass proctok on the quad stack during every push. |
| (BuildDecProcedure): Ditto. |
| (BuildInclProcedure): New parameter proctok. |
| (BuildExclProcedure): New parameter proctok. |
| |
| 2025-02-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/118703 |
| * gm2-gcc/m2builtins.cc (define_builtin_gcc): New function. |
| (m2builtins_init): Call define_builtin_gcc. |
| * gm2-libs/Builtins.def (clz): New procedure function. |
| (clzll): Ditto. |
| (ctz): Ditto. |
| (ctzll): Ditto. |
| * gm2-libs/Builtins.mod (clz): New procedure function. |
| (clzll): Ditto. |
| (ctz): Ditto. |
| (ctzll): Ditto. |
| * gm2-libs/cbuiltin.def (clz): New procedure function. |
| (clzll): Ditto. |
| (ctz): Ditto. |
| (ctzll): Ditto. |
| |
| 2025-01-29 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/118010 |
| PR modula2/118183 |
| PR modula2/116073 |
| * gm2-compiler/M2Options.mod (OffTBits): Assign to 0. |
| * gm2-gcc/m2type.cc (build_m2_specific_size_type): Ensure that |
| layout_type is called before returning c. |
| (build_m2_offt_type_node): If GetFileOffsetBits returns 0 then |
| use the type size of ssize_t. |
| |
| 2025-01-26 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2GenGCC.mod (FoldConstBecomes): Remove |
| commented out code. |
| Improve early return comment. |
| |
| 2025-01-26 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2GenGCC.mod (FoldStatementNote): Add header |
| comment. |
| (CodeStatementNote): Ditto. |
| (FoldRange): Tidy comment. |
| (CodeError): Ditto. |
| (CodeProcedureScope): Ditto. |
| (CheckConvertCoerceParameter): Replace op1 with nth. |
| Replace op2 with callee. |
| Replace op3 with actual. |
| |
| 2025-01-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/117737 |
| PR modula2/118010 |
| * Make-maintainer.in (PGE-MC-OPTIONS): New macro. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)M2RTS.o): Use $(PGE-MC-OPTIONS). |
| (m2/gm2-pge-boot/$(SRC_PREFIX)SymbolKey.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)NameKey.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)Lists.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)Output.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)bnflex.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)RTentity.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)pge.o): Ditto. |
| (m2/gm2-auto/pg.o): Ditto. |
| (m2/gm2-auto/pge.o): Ditto. |
| (mc-autogen): Add include directory $(GMPINC) to $(CXX). |
| * mc/keyc.mod (checkGccConfigSystem): Remove |
| INCLUDE_MEMORY define. |
| * mc-boot/GASCII.cc (INCLUDE_MEMORY): Removed during rebuild. |
| * mc-boot/GASCII.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GArgs.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GArgs.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GAssertion.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GAssertion.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GBreak.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GBreak.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GCOROUTINES.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GCmdArgs.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GCmdArgs.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GDebug.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GDebug.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GDynamicStrings.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GDynamicStrings.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GEnvironment.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GEnvironment.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GFIO.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GFIO.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GFormatStrings.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GFormatStrings.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GFpuIO.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GFpuIO.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GIO.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GIO.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GIndexing.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GIndexing.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GM2Dependent.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GM2Dependent.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GM2EXCEPTION.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GM2EXCEPTION.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GM2RTS.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GM2RTS.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GMemUtils.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GMemUtils.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GNumberIO.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GNumberIO.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GPushBackInput.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GPushBackInput.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GRTExceptions.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GRTExceptions.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GRTco.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GRTentity.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GRTint.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GRTint.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GSArgs.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GSArgs.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GSFIO.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GSFIO.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GSYSTEM.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GSelective.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GStdIO.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GStdIO.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GStorage.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GStorage.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GStrCase.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GStrCase.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GStrIO.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GStrIO.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GStrLib.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GStrLib.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GStringConvert.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GStringConvert.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GSysExceptions.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GSysStorage.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GSysStorage.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GTimeString.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GTimeString.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GUnixArgs.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Galists.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Galists.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gdecl.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gdecl.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gdtoa.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gerrno.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gkeyc.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gkeyc.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gldtoa.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Glibc.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Glibm.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Glists.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Glists.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcComment.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcComment.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcComp.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcComp.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcDebug.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcDebug.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcError.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcError.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcFileName.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcFileName.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcLexBuf.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcLexBuf.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcMetaError.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcMetaError.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcOptions.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcOptions.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcPreprocess.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcPreprocess.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcPretty.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcPretty.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcPrintf.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcPrintf.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcQuiet.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcQuiet.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcReserved.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcReserved.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcSearch.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcSearch.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcStack.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcStack.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcStream.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GmcStream.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gmcflex.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gmcp1.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gmcp1.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gmcp2.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gmcp2.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gmcp3.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gmcp3.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gmcp4.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gmcp4.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gmcp5.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gmcp5.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GnameKey.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GnameKey.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GsymbolKey.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/GsymbolKey.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gtermios.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gtop.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gvarargs.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gvarargs.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gwlists.cc (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gwlists.h (INCLUDE_MEMORY): Ditto. |
| * mc-boot/Gwrapc.h (INCLUDE_MEMORY): Ditto. |
| * pge-boot/GIndexing.h (INCLUDE_MEMORY): Ditto. |
| * pge-boot/GSEnvironment.h (INCLUDE_MEMORY): Ditto. |
| * pge-boot/GScan.h (INCLUDE_MEMORY): Ditto. |
| |
| 2025-01-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/118010 |
| * gm2-libs-log/FileSystem.mod (doModeChange): Replace |
| LONGINT with COFF_T. |
| (SetPos): Use COFF_T for the return value and offset type |
| when calling lseek. |
| * gm2-libs/FIO.mod (SetPositionFromBeginning): Convert pos |
| to COFF_T. |
| (SetPositionFromEnd): Ditto. |
| * mc-boot/GFIO.cc: Rebuild. |
| * mc-boot/Glibc.h: Ditto. |
| * pge-boot/GFIO.cc: Ditto. |
| * pge-boot/Glibc.h: Ditto. |
| |
| 2025-01-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/118010 |
| * gm2-compiler/P2SymBuild.mod (Debug): Comment out unused |
| procedure. |
| * gm2-libs/libc.def (lseek): Declare second parameter offset |
| as COFF_T. |
| |
| 2025-01-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/118589 |
| * gm2-compiler/M2MetaError.mod (symDesc): Add opaque type |
| description. |
| * gm2-compiler/M2Quads.mod (BuildDesignatorPointerError): New |
| procedure. |
| (BuildDesignatorPointer): Reimplement. |
| * gm2-compiler/P3Build.bnf (SubDesignator): Tidy up error message. |
| Use MetaErrorT2 rather than WriteForma1 and use the token pos from |
| the quad stack. |
| |
| 2025-01-13 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/116557 |
| * COPYING.FDL: Remove physical address and replace with a URL. |
| |
| 2025-01-13 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/118453 |
| * gm2-compiler/M2Check.mod (buildError4): Call MetaError1 |
| for the actual and formal parameter type. |
| * gm2-compiler/P2Build.bnf (SubrangeType): Construct a virtual |
| token containing the subrange type declaration. |
| (PrefixedSubrangeType): Ditto. |
| * gm2-compiler/P2SymBuild.def (BuildSubrange): Add tok parameter. |
| * gm2-compiler/P2SymBuild.mod (BuildSubrange): Use tok parameter, |
| rather than the token at the start of the subrange. |
| |
| 2025-01-07 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/118010 |
| PR modula2/118183 |
| * gm2-compiler/M2GCCDeclare.mod (Import): COffT, GetCOffTType. |
| (DeclareDefaultSimpleTypes): Declare COFF_T. |
| * gm2-compiler/M2GenGCC.mod (GetParamSize): Correct first |
| parameter to BuildSize to use location rather than a token position. |
| * gm2-compiler/M2Options.def (SetFileOffsetBits): New procedure. |
| (GetFileOffsetBits): New procedure function. |
| * gm2-compiler/M2Options.mod (SetFileOffsetBits): New procedure. |
| (GetFileOffsetBits): New procedure function. |
| (OffTBits): New variable. |
| * gm2-compiler/M2System.def (COffT): New variable. |
| * gm2-compiler/M2System.mod (MakeExtraSystemTypes): Declare |
| COffT. |
| * gm2-compiler/P1SymBuild.mod (EndBuildProcedure): Call |
| PutProcedureDefined. |
| * gm2-compiler/P2SymBuild.mod (Debug): Reimplement. |
| * gm2-compiler/SymbolTable.mod (InitProcedureDeclaration): |
| Initialize ProcedureTok. |
| * gm2-gcc/gcctypes.def (location_t): Declare as CARDINAL64. |
| * gm2-gcc/m2linemap.cc (m2linemap_GetLocationBinary): Add |
| call to linemap_add indication a LC_LEAVE. |
| * gm2-gcc/m2options.h (M2Options_SetFileOffsetBits): New procedure. |
| (M2Options_GetFileOffsetBits): New procedure function. |
| * gm2-gcc/m2type.cc (m2_offt_type_node): New variable. |
| (m2type_GetCSizeTType): Reword comment. |
| (m2type_GetCSSizeTType): Reword comment. |
| (m2type_GetCOffTType): New function. |
| (build_m2_offt_type_node): New function. |
| (m2type_InitSystemTypes): Initialize m2_offt_type_node. |
| * gm2-gcc/m2type.def (GetCSizeTType): Reword comment. |
| (GetCOffTType): New procedure function. |
| * gm2-gcc/m2type.h (m2type_GetCOffTType): New prototype. |
| * gm2-lang.cc (gm2_langhook_handle_option): New clause |
| OPT_fm2_file_offset_bits_. |
| * gm2-libs-coroutines/SYSTEM.def: Add COFF_T to export list. |
| * gm2-libs-iso/SYSTEM.def: Ditto. |
| * gm2-libs-min/SYSTEM.def: Ditto. |
| * gm2-libs/SYSTEM.def: Add COFF_T and CARDINAL64 to export list. |
| * gm2-libs/libc.def (lseek): Change return type to COFF_T. |
| * lang.opt (-fm2-file-offset-bits=): New option. |
| * mc-boot-ch/Glibc.c (libc_lseek): Change result to use off_t. |
| * mc-boot/GASCII.cc: Rebuilt. |
| * mc-boot/GASCII.h: Ditto. |
| * mc-boot/GArgs.cc: Ditto. |
| * mc-boot/GArgs.h: Ditto. |
| * mc-boot/GAssertion.cc: Ditto. |
| * mc-boot/GAssertion.h: Ditto. |
| * mc-boot/GBreak.cc: Ditto. |
| * mc-boot/GBreak.h: Ditto. |
| * mc-boot/GCOROUTINES.h: Ditto. |
| * mc-boot/GCmdArgs.cc: Ditto. |
| * mc-boot/GCmdArgs.h: Ditto. |
| * mc-boot/GDebug.cc: Ditto. |
| * mc-boot/GDebug.h: Ditto. |
| * mc-boot/GDynamicStrings.cc: Ditto. |
| * mc-boot/GDynamicStrings.h: Ditto. |
| * mc-boot/GEnvironment.cc: Ditto. |
| * mc-boot/GEnvironment.h: Ditto. |
| * mc-boot/GFIO.cc: Ditto. |
| * mc-boot/GFIO.h: Ditto. |
| * mc-boot/GFormatStrings.cc: Ditto. |
| * mc-boot/GFormatStrings.h: Ditto. |
| * mc-boot/GFpuIO.cc: Ditto. |
| * mc-boot/GFpuIO.h: Ditto. |
| * mc-boot/GIO.cc: Ditto. |
| * mc-boot/GIO.h: Ditto. |
| * mc-boot/GIndexing.cc: Ditto. |
| * mc-boot/GIndexing.h: Ditto. |
| * mc-boot/GM2Dependent.cc: Ditto. |
| * mc-boot/GM2Dependent.h: Ditto. |
| * mc-boot/GM2EXCEPTION.cc: Ditto. |
| * mc-boot/GM2EXCEPTION.h: Ditto. |
| * mc-boot/GM2RTS.cc: Ditto. |
| (M2RTS_Halt): Call libc_exit. |
| (M2RTS_HaltC): Ditto. |
| * mc-boot/GM2RTS.h: Rebuilt. |
| * mc-boot/GMemUtils.cc: Ditto. |
| * mc-boot/GMemUtils.h: Ditto. |
| * mc-boot/GNumberIO.cc: Ditto. |
| * mc-boot/GNumberIO.h: Ditto. |
| * mc-boot/GPushBackInput.cc: Ditto. |
| * mc-boot/GPushBackInput.h: Ditto. |
| * mc-boot/GRTExceptions.cc: Ditto. |
| * mc-boot/GRTExceptions.h: Ditto. |
| * mc-boot/GRTco.h: Ditto. |
| * mc-boot/GRTentity.h: Ditto. |
| * mc-boot/GRTint.cc: Ditto. |
| * mc-boot/GRTint.h: Ditto. |
| * mc-boot/GSArgs.cc: Ditto. |
| * mc-boot/GSArgs.h: Ditto. |
| * mc-boot/GSFIO.cc: Ditto. |
| * mc-boot/GSFIO.h: Ditto. |
| * mc-boot/GSYSTEM.h: Ditto. |
| * mc-boot/GSelective.h: Ditto. |
| * mc-boot/GStdIO.cc: Ditto. |
| * mc-boot/GStdIO.h: Ditto. |
| * mc-boot/GStorage.cc: Ditto. |
| * mc-boot/GStorage.h: Ditto. |
| * mc-boot/GStrCase.cc: Ditto. |
| * mc-boot/GStrCase.h: Ditto. |
| * mc-boot/GStrIO.cc: Ditto. |
| * mc-boot/GStrIO.h: Ditto. |
| * mc-boot/GStrLib.cc: Ditto. |
| * mc-boot/GStrLib.h: Ditto. |
| * mc-boot/GStringConvert.cc: Ditto. |
| * mc-boot/GStringConvert.h: Ditto. |
| * mc-boot/GSysExceptions.h: Ditto. |
| * mc-boot/GSysStorage.cc: Ditto. |
| * mc-boot/GSysStorage.h: Ditto. |
| * mc-boot/GTimeString.cc: Ditto. |
| * mc-boot/GTimeString.h: Ditto. |
| * mc-boot/GUnixArgs.h: Ditto. |
| * mc-boot/Galists.cc: Ditto. |
| * mc-boot/Galists.h: Ditto. |
| * mc-boot/Gdecl.cc: Ditto. |
| * mc-boot/Gdecl.h: Rebuilt. |
| * mc-boot/Gdtoa.h: Ditto. |
| * mc-boot/Gerrno.h: Ditto. |
| * mc-boot/Gkeyc.cc: Ditto. |
| * mc-boot/Gkeyc.h: Rebuilt. |
| * mc-boot/Gldtoa.h: Ditto. |
| * mc-boot/Glibc.h: Ditto. |
| * mc-boot/Glibm.h: Ditto. |
| * mc-boot/Glists.cc: Ditto. |
| * mc-boot/Glists.h: Ditto. |
| * mc-boot/GmcComment.cc: Ditto. |
| * mc-boot/GmcComment.h: Ditto. |
| * mc-boot/GmcComp.cc: Ditto. |
| * mc-boot/GmcComp.h: Ditto. |
| * mc-boot/GmcDebug.cc: Ditto. |
| * mc-boot/GmcDebug.h: Ditto. |
| * mc-boot/GmcError.cc: Ditto. |
| * mc-boot/GmcError.h: Ditto. |
| * mc-boot/GmcFileName.cc: Ditto. |
| * mc-boot/GmcFileName.h: Ditto. |
| * mc-boot/GmcLexBuf.cc: Ditto. |
| * mc-boot/GmcLexBuf.h: Ditto. |
| * mc-boot/GmcMetaError.cc: Ditto. |
| * mc-boot/GmcMetaError.h: Ditto. |
| * mc-boot/GmcOptions.cc: Ditto. |
| * mc-boot/GmcOptions.h: Ditto. |
| * mc-boot/GmcPreprocess.cc: Ditto. |
| * mc-boot/GmcPreprocess.h: Ditto. |
| * mc-boot/GmcPretty.cc: Ditto. |
| * mc-boot/GmcPretty.h: Ditto. |
| * mc-boot/GmcPrintf.cc: Ditto. |
| * mc-boot/GmcPrintf.h: Ditto. |
| * mc-boot/GmcQuiet.cc: Ditto. |
| * mc-boot/GmcQuiet.h: Ditto. |
| * mc-boot/GmcReserved.cc: Ditto. |
| * mc-boot/GmcReserved.h: Ditto. |
| * mc-boot/GmcSearch.cc: Ditto. |
| * mc-boot/GmcSearch.h: Ditto. |
| * mc-boot/GmcStack.cc: Ditto. |
| * mc-boot/GmcStack.h: Ditto. |
| * mc-boot/GmcStream.cc: Ditto. |
| * mc-boot/GmcStream.h: Ditto. |
| * mc-boot/Gmcflex.h: Ditto. |
| * mc-boot/Gmcp1.cc: Ditto. |
| * mc-boot/Gmcp1.h: Ditto. |
| * mc-boot/Gmcp2.cc: Ditto. |
| * mc-boot/Gmcp2.h: Ditto. |
| * mc-boot/Gmcp3.cc: Ditto. |
| * mc-boot/Gmcp3.h: Ditto. |
| * mc-boot/Gmcp4.cc: Ditto. |
| * mc-boot/Gmcp4.h: Ditto. |
| * mc-boot/Gmcp5.cc: Ditto. |
| * mc-boot/Gmcp5.h: Ditto. |
| * mc-boot/GnameKey.cc: Ditto. |
| * mc-boot/GnameKey.h: Ditto. |
| * mc-boot/GsymbolKey.cc: Ditto. |
| * mc-boot/GsymbolKey.h: Ditto. |
| * mc-boot/Gtermios.h: Ditto. |
| * mc-boot/Gtop.cc: Ditto. |
| * mc-boot/Gvarargs.cc: Ditto. |
| * mc-boot/Gvarargs.h: Ditto. |
| * mc-boot/Gwlists.cc: Ditto. |
| * mc-boot/Gwlists.h: Ditto. |
| * mc-boot/Gwrapc.h: Ditto. |
| * mc/decl.mod (cofft): New enum. |
| (cardinal64): Ditto. |
| (cofftN): New variable. |
| (cardinal64N): Ditto. |
| (isProcedure): Remove. |
| (getSymName): Add clause for cofft and cardinal64. |
| (makeBase): Ditto. |
| (isOrdinal): Ditto. |
| (getType): Ditto. |
| (doGetExprType): Ditto. |
| (getScope): Ditto. |
| (doExprC): Ditto. |
| (isSystem): Ditto. |
| (doSystemC): Ditto. |
| (doDependants): Ditto. |
| (visitDependants): Ditto. |
| (genKind): Ditto. |
| (doSystemM2): Ditto. |
| (doDupExpr): Ditto. |
| (makeSystem): Initialize cofftN and cardinal64N. |
| * mc/keyc.mod (useUIntMin): Remove. |
| (useUIntMax): Ditto. |
| * pge-boot/GIndexing.h: Rebuilt. |
| * pge-boot/GSEnvironment.h: Ditto. |
| * pge-boot/GScan.h: Ditto. |
| * pge-boot/Glibc.h: Ditto. |
| |
| 2024-12-23 Wilken Gottwalt <wilken.gottwalt@posteo.net> |
| |
| * gm2-libs-log/InOut.mod: Fix bad identifier warning. |
| |
| 2024-12-10 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/117120 |
| * gm2-compiler/M2CaseList.mod (CaseBoundsResolved): Rewrite. |
| (ConvertNulStr2NulChar): New procedure function. |
| (NulStr2NulChar): Ditto. |
| (GetCaseExpression): Ditto. |
| (OverlappingCaseBound): Rewrite. |
| * gm2-compiler/M2GCCDeclare.mod (CheckResolveSubrange): Allow |
| '' to be used as the subrange low limit. |
| * gm2-compiler/M2GenGCC.mod (FoldConvert): Rewrite. |
| (PopKindTree): Ditto. |
| (BuildHighFromString): Reformat. |
| * gm2-compiler/SymbolTable.mod (PushConstString): Add test for |
| length 0 and PushChar (nul). |
| |
| 2024-12-09 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/115328 |
| * gm2-compiler/M2Options.def (GetEnableForward): New procedure |
| function. |
| (SetEnableForward): New procedure. |
| * gm2-compiler/M2Options.mod (GetEnableForward): New procedure |
| function. |
| (SetEnableForward): New procedure. |
| (EnableForward): New boolean. |
| * gm2-compiler/P1SymBuild.mod (EndBuildForward): Check |
| GetEnableForward and generate an error message if false. |
| |
| 2024-12-07 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/117948 |
| * gm2-compiler/P1Build.bnf (ForwardDeclaration): Pass token |
| position of the FORWARD keyword to EndBuildForward. |
| * gm2-compiler/P1SymBuild.def (EndBuildForward): New parameter |
| forwardPos. |
| * gm2-compiler/P1SymBuild.mod (EndBuildForward): Issue an error at |
| forwardPos if the Iso boolean is false. |
| |
| 2024-12-05 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/117904 |
| * gm2-compiler/M2GenGCC.mod (PerformLastForIterator): Add call to |
| BuildConvert when increment is > 0. |
| |
| 2024-11-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/117777 |
| * gm2-compiler/P0SyntaxCheck.bnf (AsmOperands): Allow term after |
| ConstExpression to be optional. |
| * gm2-compiler/P1Build.bnf (AsmOperands): Ditto. |
| * gm2-compiler/P2Build.bnf (AsmOperands): Ditto. |
| * gm2-compiler/PCBuild.bnf (AsmOperands): Ditto. |
| * gm2-compiler/PHBuild.bnf (AsmOperands): Ditto. |
| |
| 2024-11-23 Maciej W. Rozycki <macro@orcam.me.uk> |
| |
| * Make-lang.in (m2 modula-2 modula2): Remove $(GCC_PARTS). |
| |
| 2024-11-22 Andrew Pinski <quic_apinski@quicinc.com> |
| |
| PR bootstrap/117737 |
| * gm2-gcc/gcc-consolidation.h (INCLUDE_MEMORY): Remove. |
| * gm2-gcc/m2configure.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GASCII.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GASCII.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GArgs.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GArgs.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GAssertion.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GAssertion.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GBreak.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GBreak.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GCOROUTINES.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GCmdArgs.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GCmdArgs.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GDebug.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GDebug.h (INCLUDE_MEMORY): Remove. Remove. |
| * mc-boot/GDynamicStrings.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GDynamicStrings.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GEnvironment.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GEnvironment.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GFIO.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GFIO.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GFormatStrings.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GFormatStrings.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GFpuIO.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GFpuIO.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GIO.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GIO.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GIndexing.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GIndexing.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GM2Dependent.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GM2Dependent.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GM2EXCEPTION.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GM2EXCEPTION.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GM2RTS.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GM2RTS.h (INCLUDE_MEMORY): Remove. Remove. |
| * mc-boot/GMemUtils.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GMemUtils.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GNumberIO.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GNumberIO.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GPushBackInput.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GPushBackInput.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GRTExceptions.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GRTExceptions.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GRTco.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GRTentity.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GRTint.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GRTint.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GSArgs.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GSArgs.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GSFIO.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GSFIO.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GSYSTEM.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GSelective.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GStdIO.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GStdIO.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GStorage.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GStorage.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GStrCase.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GStrCase.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GStrIO.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GStrIO.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GStrLib.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GStrLib.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GStringConvert.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GStringConvert.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GSysExceptions.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GSysStorage.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GSysStorage.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GTimeString.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GTimeString.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GUnixArgs.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Galists.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/Galists.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gdecl.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gdecl.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gdtoa.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gerrno.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gkeyc.cc (INCLUDE_MEMORY): Remove. |
| (checkGccConfigSystem): Remove printing out `#define INCLUDE_MEMORY`. |
| * mc-boot/Gkeyc.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gldtoa.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Glibc.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Glibm.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Glists.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/Glists.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcComment.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcComment.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcComp.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcComp.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcDebug.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcDebug.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcError.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcError.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcFileName.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcFileName.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcLexBuf.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcLexBuf.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcMetaError.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcMetaError.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcOptions.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcOptions.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcPreprocess.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcPreprocess.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcPretty.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcPretty.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcPrintf.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcPrintf.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcQuiet.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcQuiet.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcReserved.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcReserved.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcSearch.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcSearch.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcStack.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcStack.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcStream.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GmcStream.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gmcflex.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gmcp1.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gmcp1.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gmcp2.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gmcp2.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gmcp3.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gmcp3.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gmcp4.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gmcp4.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gmcp5.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gmcp5.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GnameKey.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GnameKey.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/GsymbolKey.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/GsymbolKey.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gtermios.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gtop.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gvarargs.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gvarargs.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gwlists.cc (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gwlists.h (INCLUDE_MEMORY): Remove. |
| * mc-boot/Gwrapc.h (INCLUDE_MEMORY): Remove. |
| * pge-boot/GIndexing.h (INCLUDE_MEMORY): Remove. |
| * pge-boot/GSEnvironment.h (INCLUDE_MEMORY): Remove. |
| * pge-boot/GScan.h (INCLUDE_MEMORY): Remove. |
| |
| 2024-11-18 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/117555 |
| * gm2-libs-iso/M2EXCEPTION.mod (M2Exception): Add missing |
| return statement. |
| * gm2-libs-iso/RealConv.mod (ValueReal): Ditto. |
| * gm2-libs-iso/RndFile.mod (StartPos): Ditto. |
| (EndPos): Ditto. |
| (NewPos): Ditto. |
| * gm2-libs-iso/ShortConv.mod (ValueReal): Ditto. |
| * gm2-libs-iso/WholeConv.mod (ValueInt): Ditto. |
| (ValueCard): Ditto. |
| |
| 2024-11-18 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/117660 |
| * gm2-compiler/P2Build.bnf (ArrayType): Update tok with the |
| composite token produced during array type declaration. |
| * gm2-compiler/P2SymBuild.mod (EndBuildArray): Create the |
| combinedtok and store it into the symbol table. |
| Also ensure combinedtok is pushed to the quad stack. |
| (BuildFieldArray): Preserve typetok. |
| * gm2-compiler/SymbolTable.def (PutArray): Rename parameters. |
| * gm2-compiler/SymbolTable.mod (PutArray): Rename parameters. |
| |
| 2024-11-18 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/117371 |
| * gm2-compiler/M2GenGCC.mod (PerformLastForIterator): |
| Add check for zero step value and issue an error message. |
| |
| 2024-11-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/117555 |
| * gm2-libs-iso/EXCEPTIONS.mod (CurrentNumber): Add return |
| statement. |
| * gm2-libs-iso/IOChan.mod (ReadResult): Ditto. |
| (CurrentFlags): Ditto. |
| (DeviceError): Ditto. |
| * gm2-libs-iso/IOLink.mod (DeviceTablePtrValue): Ditto. |
| * gm2-libs-iso/LongConv.mod (ValueReal): Ditto. |
| * gm2-libs/M2RTS.mod (Halt): Add noreturn attribute. |
| Add exit (1). |
| (HaltC): Add exit (1). |
| * pge-boot/GM2RTS.cc (M2RTS_Halt): Add exit (1). |
| (M2RTS_HaltC): Ditto. |
| |
| 2024-11-15 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/117371 |
| * gm2-compiler/M2Base.mod (MixMetaTypes): Add parameter TRUE to |
| MetaErrorDecl. |
| (IsUserType): Test against ZType. |
| (MixTypesDecl): Test for ZType. |
| * gm2-compiler/M2GenGCC.mod (ErrorMessageDecl): Add parameter TRUE to |
| MetaErrorDecl. |
| (CodeLastForIterator): New procedure. |
| (FoldLastForIterator): Ditto. |
| (PerformLastForIterator): Ditto. |
| (CodeStatement): Add case clause for LastForIteratorOp. |
| (ErrorMessageDecl): Add iserror parameter. |
| Call MetaErrorDecl with iserror parameter. |
| (checkIncorrectMeta): Call MetaErrorDecl with TRUE parameter. |
| (CheckBinaryExpressionTypes): Ditto. |
| (CheckElementSetTypes): Ditto. |
| * gm2-compiler/M2LexBuf.def (MakeVirtualTok): Update comment |
| detailing the fall back when UnknownTokenNo is encountered. |
| (MakeVirtual2Tok): Ditto. |
| * gm2-compiler/M2LexBuf.mod (MakeVirtualTok): Check against |
| UnknownTokenNo. |
| (MakeVirtual2Tok): Ditto. |
| * gm2-compiler/M2MetaError.def (MetaErrorDecl): Add error parameter. |
| * gm2-compiler/M2MetaError.mod (MetaErrorDecl): Add error |
| parameter. |
| Issue warning if error is FALSE. |
| * gm2-compiler/M2Quads.def (QuadOperator): Add LastForIteratorOp. |
| * gm2-compiler/M2Quads.mod (AddQuadInformation): New case clause |
| LastForIteratorOp. |
| (CheckAddTuple2Read): New procedure. |
| (BuildForLoopToRangeCheck): Remove. |
| (ForLoopLastIteratorVariable): Ditto. |
| (ForLoopLastIteratorConstant): Ditto. |
| (ForLoopLastIterator): Reimplement. |
| (BuildForToByDo): Remove ByType from call to ForLoopLastIterator. |
| (WriteQuad): New case clause LastForIteratorOp. |
| (WriteOperator): Ditto. |
| * gm2-compiler/M2Students.def |
| (CheckForVariableThatLooksLikeKeyword): Replace with ... |
| (CheckVariableAgainstKeyword): ... this. |
| * gm2-compiler/M2Students.mod |
| (CheckForVariableThatLooksLikeKeyword): Replace with ... |
| (CheckVariableAgainstKeyword): ... this. |
| * gm2-compiler/M2SymInit.mod (CheckLastForIterator): New |
| procedure. |
| (CheckReadBeforeInitQuad): New case clause to call |
| CheckLastForIterator. |
| * gm2-compiler/P2SymBuild.mod: Replace |
| CheckForVariableThatLooksLikeKeyword with CheckVariableAgainstKeyword. |
| |
| 2024-11-15 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (m2/gm2-compiler-boot/P0SyntaxCheck.c): |
| New rule. |
| (m2/gm2-compiler-boot/P0SyntaxCheck.o): Ditto. |
| (m2/gm2-compiler-boot/P1Build.c): Ditto. |
| (m2/gm2-compiler-boot/P1Build.o): Ditto. |
| (m2/gm2-compiler-boot/P2Build.c): Ditto. |
| (m2/gm2-compiler-boot/P2Build.o): Ditto. |
| (m2/gm2-compiler-boot/P3Build.c): Ditto. |
| (m2/gm2-compiler-boot/P3Build.o): Ditto. |
| (m2/gm2-compiler-boot/PCBuild.c): Ditto. |
| (m2/gm2-compiler-boot/PCBuild.o): Ditto. |
| (m2/gm2-compiler-boot/PHBuild.c): Ditto. |
| (m2/gm2-compiler-boot/PHBuild.o): Ditto. |
| |
| 2024-11-11 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Base.def (MixTypes): Rename parameters. |
| (MixTypesDecl): New procedure function. |
| * gm2-compiler/M2Base.mod (BuildOrdFunctions): Add |
| DefProcedure parameter to PutFunction. |
| (BuildTruncFunctions): Ditto. |
| (BuildFloatFunctions): Ditto. |
| (BuildIntFunctions): Ditto. |
| (InitBaseFunctions): Ditto. |
| (MixTypesDecl): New procedure function. |
| (MixTypes): Reimplement. |
| * gm2-compiler/M2Check.mod (checkProcType): Replace |
| NoOfParam with NoOfParamAny. |
| Replace IsVarParam with IsVarParamAny. |
| (checkProcedureProcType): Ditto. |
| * gm2-compiler/M2Error.def: Remove unnecessary export qualified list. |
| * gm2-compiler/M2GCCDeclare.mod: Replace NoOfParam with NoOfParamAny. |
| Replace IsVarParam with IsVarParamAny. |
| (DeclareProcedureToGccWholeProgram): Rename son to |
| Variable. |
| (DeclareProcedureToGccSeparateProgram): Ditto. |
| (PrintKind): New procedure. |
| (PrintProcedureParameters): Ditto. |
| (PrintProcedureReturnType): Ditto. |
| (PrintProcedure): Reimplement. |
| (PrintProcTypeParameters): New procedure. |
| (PrintProcType): Ditto. |
| (DeclareProcType): Rename Son to Parameter. |
| * gm2-compiler/M2GenGCC.mod: Replace NoOfParam with NoOfParamAny. |
| Replace IsVarParam with IsVarParamAny. |
| (ErrorMessageDecl): New procedure. |
| (checkIncorrectMeta): Replace call to MetaErrorT2 with |
| ErrorMessageDecl. |
| (ComparisonMixTypes): Add varleft and varright parameters. |
| Adjust all callers of ComparisonMixTypes. |
| * gm2-compiler/M2MetaError.def (MetaErrorDecl): New procedure. |
| * gm2-compiler/M2MetaError.mod (MetaErrorDecl): New procedure. |
| * gm2-compiler/M2Options.def (SetXCode): Add -fd flag description |
| to comment. |
| * gm2-compiler/M2Options.mod (SetXCode): Add -fd flag description |
| to comment. |
| * gm2-compiler/M2Quads.mod (CheckBreak): New procedure. |
| Replace NoOfParam with NoOfParamAny. |
| Replace IsVarParam with IsVarParamAny. |
| (FailParameter): Reimplement using GetVarDeclFullTok. |
| Generate message for formal parameter, actual parameter and |
| declaration of actual parameter. |
| (WarnParameter): Ditto. |
| (CheckBuildFunction): Reimplement error message using MetaErrorT1. |
| * gm2-compiler/M2Range.mod: Replace NoOfParam with NoOfParamAny. |
| Replace IsVarParam with IsVarParamAny. |
| * gm2-compiler/M2Scaffold.mod (DeclareScaffoldFunctions): Call |
| PutProcedureDefined after every procedure declaration. |
| (DeclareArgEnvParams): Add ProperProcedure parameter to PutParam. |
| * gm2-compiler/M2Size.mod (MakeSize): Add DefProcedure parameter |
| to PutFunction. |
| * gm2-compiler/M2Swig.mod: Replace NoOfParam with NoOfParamAny. |
| Replace IsVarParam with IsVarParamAny. |
| * gm2-compiler/M2SymInit.mod: Ditto. |
| * gm2-compiler/M2System.mod (InitSystem): Add DefProcedure |
| parameter to PutFunction. |
| * gm2-compiler/P1SymBuild.mod (StartBuildProcedure): Reimplement. |
| (EndBuildProcedure): Ditto. |
| (EndBuildForward): Ditto. |
| * gm2-compiler/P2Build.bnf (BuildProcedureDefinedByForward): |
| Remove. |
| (BuildProcedureDefinedByProper): Ditto. |
| (ForwardDeclaration): Remove BuildProcedureDefinedByForward. |
| (BuildNoReturnAttribute): Remove parameter. |
| * gm2-compiler/P2SymBuild.def (BuildNoReturnAttribute): Remove |
| parameter. |
| (BuildProcedureDefinedByForward): Remove. |
| (BuildProcedureDefinedByProper): Ditto. |
| * gm2-compiler/P2SymBuild.mod (Import): Remove |
| AreParametersDefinedInDefinition, |
| AreParametersDefinedInImplementation, |
| AreProcedureParametersDefined, |
| ParametersDefinedInDefinition, |
| ParametersDefinedInImplementation, |
| GetProcedureDeclaredDefinition, |
| GetProcedureDeclaredForward, |
| GetProcedureDeclaredProper, |
| GetParametersDefinedByForward, |
| GetParametersDefinedByProper and |
| PutProcedureNoReturn. |
| Add PutProcedureParametersDefined, |
| GetProcedureParametersDefined, |
| GetProcedureKindDesc, |
| GetProcedureDeclaredTok, |
| GetProcedureKind, |
| GetReturnTypeTok, |
| SetReturnOptional, |
| IsReturnOptional, |
| PutProcedureNoReturn and |
| PutProcedureDefined. |
| (Debug): New procedure. |
| (P2StartBuildDefModule): Space formatting. |
| (BuildVariable): Reimplement to record full declaration. |
| (StartBuildProcedure): Reimplement using token to determine |
| the kind of procedure. |
| (BuildProcedureHeading): Ditto. |
| (BuildFPSection): Ditto. |
| (BuildVarArgs): Ditto. |
| (BuildOptArg): Ditto. |
| (BuildProcedureDefinedByForward): Remove. |
| (BuildProcedureDefinedByProper): Ditto. |
| (BuildFormalParameterSection): Reimplement so that the |
| quad stack is unchanged. |
| (CheckFormalParameterSection): Ditto. |
| (RemoveFPParameters): New procedure. |
| (ParameterError): Reimplement. |
| (StartBuildFormalParameters): Add annotation. |
| (ParameterMismatch): Reimplement. |
| (EndBuildFormalParameters): Reimplement to check against |
| all procedure kinds. |
| (GetSourceDesc): Remove. |
| (GetCurSrcDesc): Ditto. |
| (GetDeclared): Ditto. |
| (ReturnTypeMismatch): Reimplement. |
| (BuildFunction): Ditto. |
| (BuildOptFunction): Ditto. |
| (CheckOptFunction): New procedure. |
| (BuildNoReturnAttribute): Remove parameter and obtain |
| procedure symbol from quad stack. |
| (CheckProcedureReturn): New procedure. |
| * gm2-compiler/P3SymBuild.mod (BuildOptArgInitializer): |
| Preserve ProcSym tok on the quad stack. |
| Add Assert. |
| * gm2-compiler/PCSymBuild.mod (fixupProcedureType): Replace |
| NoOfParam with NoOfParamAny. |
| * gm2-compiler/SymbolTable.def (GetNthParam): Add ProcedureKind |
| parameter. |
| (PutFunction): Ditto. |
| (PutOptFunction): Ditto. |
| (IsReturnOptional): Ditto. |
| (PutParam): Ditto. |
| (PutVarParam): Ditto. |
| (PutParamName): Ditto. |
| (PutProcedureNoReturn): Ditto. |
| (IsProcedureNoReturn): Ditto. |
| (IsVarParam): Ditto. |
| (IsUnboundedParam): Ditto. |
| (NoOfParam): Ditto. |
| (ForeachLocalSymDo): Ditto. |
| (GetProcedureKind): Ditto. |
| (GetProcedureDeclaredTok): Ditto. |
| (PutProcedureDeclaredTok): Ditto. |
| (GetReturnTypeTok): Ditto. |
| (PutReturnTypeTok): Ditto. |
| (PutParametersDefinedByForward): New procedure. |
| (PutProcedureParametersDefined): Ditto. |
| (PutProcedureDefined): Ditto. |
| (GetParametersDefinedByProper): Ditto. |
| (GetProcedureDeclaredForward): Ditto. |
| (GetProcedureDeclaredProper): Ditto. |
| (PutProcedureDeclaredProper): Ditto. |
| (GetProcedureDeclaredDefinition): Ditto. |
| (PutProcedureDeclaredDefinition): Ditto. |
| (GetProcedureDefined): Ditto. |
| (PutUseOptArg): Ditto. |
| (UsesOptArg): Ditto. |
| (PutOptArgInit): Ditto. |
| (SetReturnOptional): Ditto. |
| (UsesOptArgAny): Ditto. |
| (GetProcedureKindDesc): Ditto. |
| (IsReturnOptionalAny): New procedure function. |
| (GetNthParamAny): Ditto. |
| (NoOfParamAny): Ditto. |
| (IsProcedureAnyNoReturn): Ditto. |
| (AreParametersDefinedInImplementation): Remove. |
| (ParametersDefinedInImplementation): Ditto. |
| (AreParametersDefinedInDefinition): Ditto. |
| (AreProcedureParametersDefined): Ditto. |
| (ParametersDefinedInDefinition): Ditto. |
| (ProcedureParametersDefined): Ditto. |
| (PutParametersDefinedByProper): Ditto. |
| (PutProcedureDeclaredForward): Ditto. |
| (GetParametersDefinedByForward): Ditto. |
| (GetProcedureParametersDefined): Ditto. |
| (PushOffset): Ditto. |
| (PopSize): Ditto. |
| (PushParamSize): Ditto. |
| (PushSumOfLocalVarSize): Ditto. |
| (PushSumOfParamSize): Ditto. |
| (PopOffset): Ditto. |
| (PopSumOfParamSize): Ditto. |
| * gm2-compiler/SymbolTable.mod (MakeProcedure): Reimplement. |
| (PutProcedureNoReturn): Add ProcedureKind parameter. |
| (GetNthParam): Ditto. |
| (PutFunction): Ditto. |
| (PutOptFunction): Ditto. |
| (IsReturnOptional): Ditto. |
| (MakeVariableForParam): Ditto. |
| (PutParam): Ditto. |
| (PutVarParam): Ditto. |
| (PutParamName): Ditto. |
| (AddParameter): Ditto. |
| (IsVarParam): Ditto. |
| (IsVarParamAny): Ditto. |
| (NoOfParam): Ditto. |
| (HasVarParameters): Ditto. |
| (IsUnboundedParam): Ditto. |
| (PutUseVarArgs): Ditto. |
| (UsesVarArgs): Ditto. |
| (PutUseOptArg): Ditto. |
| (UsesOptArg): Ditto. |
| (UsesOptArgAny): Ditto. |
| (PutOptArgInit): Ditto. |
| (IsProcedure): Ditto. |
| (IsPointer): Ditto. |
| (IsRecord): Ditto. |
| (IsArray): Ditto. |
| (IsEnumeration): Ditto. |
| (IsUnbounded): Ditto. |
| (IsSet): Ditto. |
| (IsSetPacked): Ditto. |
| (CheckUnbounded): Ditto. |
| (IsOAFamily): Ditto. |
| (IsModuleWithinProcedure): Ditto. |
| (GetDeclaredDef): Ditto. |
| (GetDeclaredMod): Ditto. |
| (GetDeclaredFor): Ditto. |
| (GetProcedureDeclaredForward): Ditto. |
| (GetProcedureKind): Ditto. |
| (PutProcedureDeclaredForward): Ditto. |
| (GetProcedureDeclaredTok): Ditto. |
| (GetProcedureDeclaredProper): Ditto. |
| (PutProcedureDeclaredTok): Ditto. |
| (PutProcedureDeclaredProper): Ditto. |
| (GetReturnTypeTok): Ditto. |
| (GetProcedureDeclaredDefinition): Ditto. |
| (PutReturnTypeTok): Ditto. |
| (PutProcedureDeclaredDefinition): Ditto. |
| (GetProcedureKindDesc): Ditto. |
| (IsProcedureVariable): Ditto. |
| (IsAModula2Type): Ditto. |
| (GetParam): Ditto. |
| (ProcedureParametersDefined): Ditto. |
| (AreParametersDefinedInImplementation): Remove. |
| (AreParametersDefinedInDefinition): Ditto. |
| (AreProcedureParametersDefined): Ditto. |
| (IsSizeSolved): Ditto. |
| (IsOffsetSolved): Ditto. |
| (IsValueSolved): Ditto. |
| (IsSumOfParamSizeSolved): Ditto. |
| (PushSize): Ditto. |
| (PushOffset): Ditto. |
| (PopSize): Ditto. |
| (PushValue): Ditto. |
| (PushParamSize): Ditto. |
| (PushSumOfLocalVarSize): Ditto. |
| (PushSumOfParamSize): Ditto. |
| (PushVarSize): Ditto. |
| (PopValue): Ditto. |
| (PopSize): Ditto. |
| (PopOffset): Ditto. |
| (PopSumOfParamSize): Ditto. |
| (PutParametersDefinedByForward): New procedure. |
| (PutProcedureParametersDefined): Ditto. |
| (PutProcedureDefined): Ditto. |
| (GetParametersDefinedByProper): Ditto. |
| (GetProcedureDeclaredForward): Ditto. |
| (GetProcedureDeclaredProper): Ditto. |
| (PutProcedureDeclaredProper): Ditto. |
| (GetProcedureDeclaredDefinition): Ditto. |
| (PutProcedureDeclaredDefinition): Ditto. |
| (GetProcedureDefined): Ditto. |
| (PutUseOptArg): Ditto. |
| (UsesOptArg): Ditto. |
| (PutOptArgInit): Ditto. |
| (SetReturnOptional): Ditto. |
| (UsesOptArgAny): Ditto. |
| (GetProcedureKindDesc): Ditto. |
| (PutParametersDefinedByProper): Ditto. |
| (GetParametersDefinedByProper): Ditto. |
| (IsReturnOptionalAny): New procedure function. |
| (IsProcedureAnyDefaultBoolean): Ditto. |
| (IsProcedureAnyBoolean): Ditto. |
| (IsProcedureAnyNoReturn): Ditto. |
| (GetNthParamAny): Ditto. |
| (NoOfParamAny): Ditto. |
| (IsProcedureAnyNoReturn): Ditto. |
| (GetProcedureKind): Ditto. |
| (IsVarParamAny): Ditto. |
| (IsUnboundedParamAny): Ditto. |
| (ForeachParamSymDo): New comment. |
| * gm2-libs-coroutines/SYSTEM.mod: Reformat. |
| |
| 2024-11-09 Jakub Jelinek <jakub@redhat.com> |
| |
| * Make-lang.in (m2_OBJS): Add $(BUILD-LIBS-BOOT), |
| $(BUILD-COMPILER-BOOT) and $(MC_LIBS). |
| |
| 2024-10-25 Jakub Jelinek <jakub@redhat.com> |
| |
| * mc-boot/GFpuIO.cc: Remove trailing whitespace. |
| * mc-boot/GFIO.cc: Likewise. |
| * mc-boot/GFormatStrings.cc: Likewise. |
| * mc-boot/GCmdArgs.cc: Likewise. |
| * mc-boot/GDebug.h: Likewise. |
| * mc-boot/GM2Dependent.cc: Likewise. |
| * mc-boot/GRTint.cc: Likewise. |
| * mc-boot/GDebug.cc: Likewise. |
| * mc-boot/GmcError.cc: Likewise. |
| * mc-boot/Gmcp4.cc: Likewise. |
| * mc-boot/GM2RTS.cc: Likewise. |
| * mc-boot/GIO.cc: Likewise. |
| * mc-boot/Gmcp5.cc: Likewise. |
| * mc-boot/GDynamicStrings.cc: Likewise. |
| * mc-boot/Gmcp1.cc: Likewise. |
| * mc-boot/GFormatStrings.h: Likewise. |
| * mc-boot/Gmcp2.cc: Likewise. |
| * mc-boot/Gmcp3.cc: Likewise. |
| * pge-boot/GFIO.cc: Likewise. |
| * pge-boot/GDebug.h: Likewise. |
| * pge-boot/GM2Dependent.cc: Likewise. |
| * pge-boot/GDebug.cc: Likewise. |
| * pge-boot/GM2RTS.cc: Likewise. |
| * pge-boot/GSymbolKey.cc: Likewise. |
| * pge-boot/GIO.cc: Likewise. |
| * pge-boot/GIndexing.cc: Likewise. |
| * pge-boot/GDynamicStrings.cc: Likewise. |
| * pge-boot/GFormatStrings.h: Likewise. |
| |
| 2024-10-24 David Malcolm <dmalcolm@redhat.com> |
| Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR other/116613 |
| * gm2-gcc/gcc-consolidation.h: Add #define INCLUDE_MEMORY. |
| * gm2-gcc/m2configure.cc: Likewise. |
| * mc-boot/GASCII.cc: Regenerate. |
| * mc-boot/GASCII.h: Ditto. |
| * mc-boot/GArgs.cc: Ditto. |
| * mc-boot/GArgs.h: Ditto. |
| * mc-boot/GAssertion.cc: Ditto. |
| * mc-boot/GAssertion.h: Ditto. |
| * mc-boot/GBreak.cc: Ditto. |
| * mc-boot/GBreak.h: Ditto. |
| * mc-boot/GCOROUTINES.h: Ditto. |
| * mc-boot/GCmdArgs.cc: Ditto. |
| * mc-boot/GCmdArgs.h: Ditto. |
| * mc-boot/GDebug.cc: Ditto. |
| * mc-boot/GDebug.h: Ditto. |
| * mc-boot/GDynamicStrings.cc: Ditto. |
| * mc-boot/GDynamicStrings.h: Ditto. |
| * mc-boot/GEnvironment.cc: Ditto. |
| * mc-boot/GEnvironment.h: Ditto. |
| * mc-boot/GFIO.cc: Ditto. |
| * mc-boot/GFIO.h: Ditto. |
| * mc-boot/GFormatStrings.cc: Ditto. |
| * mc-boot/GFormatStrings.h: Ditto. |
| * mc-boot/GFpuIO.cc: Ditto. |
| * mc-boot/GFpuIO.h: Ditto. |
| * mc-boot/GIO.cc: Ditto. |
| * mc-boot/GIO.h: Ditto. |
| * mc-boot/GIndexing.cc: Ditto. |
| * mc-boot/GIndexing.h: Ditto. |
| * mc-boot/GM2Dependent.cc: Ditto. |
| * mc-boot/GM2Dependent.h: Ditto. |
| * mc-boot/GM2EXCEPTION.cc: Ditto. |
| * mc-boot/GM2EXCEPTION.h: Ditto. |
| * mc-boot/GM2RTS.cc: Ditto. |
| * mc-boot/GM2RTS.h: Ditto. |
| * mc-boot/GMemUtils.cc: Ditto. |
| * mc-boot/GMemUtils.h: Ditto. |
| * mc-boot/GNumberIO.cc: Ditto. |
| * mc-boot/GNumberIO.h: Ditto. |
| * mc-boot/GPushBackInput.cc: Ditto. |
| * mc-boot/GPushBackInput.h: Ditto. |
| * mc-boot/GRTExceptions.cc: Ditto. |
| * mc-boot/GRTExceptions.h: Ditto. |
| * mc-boot/GRTco.h: Ditto. |
| * mc-boot/GRTentity.h: Ditto. |
| * mc-boot/GRTint.cc: Ditto. |
| * mc-boot/GRTint.h: Ditto. |
| * mc-boot/GSArgs.cc: Ditto. |
| * mc-boot/GSArgs.h: Ditto. |
| * mc-boot/GSFIO.cc: Ditto. |
| * mc-boot/GSFIO.h: Ditto. |
| * mc-boot/GSYSTEM.h: Ditto. |
| * mc-boot/GSelective.h: Ditto. |
| * mc-boot/GStdIO.cc: Ditto. |
| * mc-boot/GStdIO.h: Ditto. |
| * mc-boot/GStorage.cc: Ditto. |
| * mc-boot/GStorage.h: Ditto. |
| * mc-boot/GStrCase.cc: Ditto. |
| * mc-boot/GStrCase.h: Ditto. |
| * mc-boot/GStrIO.cc: Ditto. |
| * mc-boot/GStrIO.h: Ditto. |
| * mc-boot/GStrLib.cc: Ditto. |
| * mc-boot/GStrLib.h: Ditto. |
| * mc-boot/GStringConvert.cc: Ditto. |
| * mc-boot/GStringConvert.h: Ditto. |
| * mc-boot/GSysExceptions.h: Ditto. |
| * mc-boot/GSysStorage.cc: Ditto. |
| * mc-boot/GSysStorage.h: Ditto. |
| * mc-boot/GTimeString.cc: Ditto. |
| * mc-boot/GTimeString.h: Ditto. |
| * mc-boot/GUnixArgs.h: Ditto. |
| * mc-boot/Galists.cc: Ditto. |
| * mc-boot/Galists.h: Ditto. |
| * mc-boot/Gdecl.cc: Ditto. |
| * mc-boot/Gdecl.h: Ditto. |
| * mc-boot/Gdtoa.h: Ditto. |
| * mc-boot/Gerrno.h: Ditto. |
| * mc-boot/Gkeyc.cc: Ditto. |
| * mc-boot/Gkeyc.h: Ditto. |
| * mc-boot/Gldtoa.h: Ditto. |
| * mc-boot/Glibc.h: Ditto. |
| * mc-boot/Glibm.h: Ditto. |
| * mc-boot/Glists.cc: Ditto. |
| * mc-boot/Glists.h: Ditto. |
| * mc-boot/GmcComment.cc: Ditto. |
| * mc-boot/GmcComment.h: Ditto. |
| * mc-boot/GmcComp.cc: Ditto. |
| * mc-boot/GmcComp.h: Ditto. |
| * mc-boot/GmcDebug.cc: Ditto. |
| * mc-boot/GmcDebug.h: Ditto. |
| * mc-boot/GmcError.cc: Ditto. |
| * mc-boot/GmcError.h: Ditto. |
| * mc-boot/GmcFileName.cc: Ditto. |
| * mc-boot/GmcFileName.h: Ditto. |
| * mc-boot/GmcLexBuf.cc: Ditto. |
| * mc-boot/GmcLexBuf.h: Ditto. |
| * mc-boot/GmcMetaError.cc: Ditto. |
| * mc-boot/GmcMetaError.h: Ditto. |
| * mc-boot/GmcOptions.cc: Ditto. |
| * mc-boot/GmcOptions.h: Ditto. |
| * mc-boot/GmcPreprocess.cc: Ditto. |
| * mc-boot/GmcPreprocess.h: Ditto. |
| * mc-boot/GmcPretty.cc: Ditto. |
| * mc-boot/GmcPretty.h: Ditto. |
| * mc-boot/GmcPrintf.cc: Ditto. |
| * mc-boot/GmcPrintf.h: Ditto. |
| * mc-boot/GmcQuiet.cc: Ditto. |
| * mc-boot/GmcQuiet.h: Ditto. |
| * mc-boot/GmcReserved.cc: Ditto. |
| * mc-boot/GmcReserved.h: Ditto. |
| * mc-boot/GmcSearch.cc: Ditto. |
| * mc-boot/GmcSearch.h: Ditto. |
| * mc-boot/GmcStack.cc: Ditto. |
| * mc-boot/GmcStack.h: Ditto. |
| * mc-boot/GmcStream.cc: Ditto. |
| * mc-boot/GmcStream.h: Ditto. |
| * mc-boot/Gmcflex.h: Ditto. |
| * mc-boot/Gmcp1.cc: Ditto. |
| * mc-boot/Gmcp1.h: Ditto. |
| * mc-boot/Gmcp2.cc: Ditto. |
| * mc-boot/Gmcp2.h: Ditto. |
| * mc-boot/Gmcp3.cc: Ditto. |
| * mc-boot/Gmcp3.h: Ditto. |
| * mc-boot/Gmcp4.cc: Ditto. |
| * mc-boot/Gmcp4.h: Ditto. |
| * mc-boot/Gmcp5.cc: Ditto. |
| * mc-boot/Gmcp5.h: Ditto. |
| * mc-boot/GnameKey.cc: Ditto. |
| * mc-boot/GnameKey.h: Ditto. |
| * mc-boot/GsymbolKey.cc: Ditto. |
| * mc-boot/GsymbolKey.h: Ditto. |
| * mc-boot/Gtermios.h: Ditto. |
| * mc-boot/Gtop.cc: Ditto. |
| * mc-boot/Gvarargs.cc: Ditto. |
| * mc-boot/Gvarargs.h: Ditto. |
| * mc-boot/Gwlists.cc: Ditto. |
| * mc-boot/Gwlists.h: Ditto. |
| * mc-boot/Gwrapc.h: Ditto. |
| * mc/keyc.mod (checkGccConfigSystem): Add |
| #define INCLUDE_MEMORY. |
| * pge-boot/GASCII.cc: Regenerate. |
| * pge-boot/GASCII.h: Ditto. |
| * pge-boot/GArgs.cc: Ditto. |
| * pge-boot/GArgs.h: Ditto. |
| * pge-boot/GAssertion.cc: Ditto. |
| * pge-boot/GAssertion.h: Ditto. |
| * pge-boot/GBreak.h: Ditto. |
| * pge-boot/GCmdArgs.h: Ditto. |
| * pge-boot/GDebug.cc: Ditto. |
| * pge-boot/GDebug.h: Ditto. |
| * pge-boot/GDynamicStrings.cc: Ditto. |
| * pge-boot/GDynamicStrings.h: Ditto. |
| * pge-boot/GEnvironment.h: Ditto. |
| * pge-boot/GFIO.cc: Ditto. |
| * pge-boot/GFIO.h: Ditto. |
| * pge-boot/GFormatStrings.h: Ditto. |
| * pge-boot/GFpuIO.h: Ditto. |
| * pge-boot/GIO.cc: Ditto. |
| * pge-boot/GIO.h: Ditto. |
| * pge-boot/GIndexing.cc: Ditto. |
| * pge-boot/GIndexing.h: Ditto. |
| * pge-boot/GLists.cc: Ditto. |
| * pge-boot/GLists.h: Ditto. |
| * pge-boot/GM2Dependent.cc: Ditto. |
| * pge-boot/GM2Dependent.h: Ditto. |
| * pge-boot/GM2EXCEPTION.cc: Ditto. |
| * pge-boot/GM2EXCEPTION.h: Ditto. |
| * pge-boot/GM2RTS.cc: Ditto. |
| * pge-boot/GM2RTS.h: Ditto. |
| * pge-boot/GNameKey.cc: Ditto. |
| * pge-boot/GNameKey.h: Ditto. |
| * pge-boot/GNumberIO.cc: Ditto. |
| * pge-boot/GNumberIO.h: Ditto. |
| * pge-boot/GOutput.cc: Ditto. |
| * pge-boot/GOutput.h: Ditto. |
| * pge-boot/GPushBackInput.cc: Ditto. |
| * pge-boot/GPushBackInput.h: Ditto. |
| * pge-boot/GRTExceptions.cc: Ditto. |
| * pge-boot/GRTExceptions.h: Ditto. |
| * pge-boot/GSArgs.h: Ditto. |
| * pge-boot/GSEnvironment.h: Ditto. |
| * pge-boot/GSFIO.cc: Ditto. |
| * pge-boot/GSFIO.h: Ditto. |
| * pge-boot/GSYSTEM.h: Ditto. |
| * pge-boot/GScan.h: Ditto. |
| * pge-boot/GStdIO.cc: Ditto. |
| * pge-boot/GStdIO.h: Ditto. |
| * pge-boot/GStorage.cc: Ditto. |
| * pge-boot/GStorage.h: Ditto. |
| * pge-boot/GStrCase.cc: Ditto. |
| * pge-boot/GStrCase.h: Ditto. |
| * pge-boot/GStrIO.cc: Ditto. |
| * pge-boot/GStrIO.h: Ditto. |
| * pge-boot/GStrLib.cc: Ditto. |
| * pge-boot/GStrLib.h: Ditto. |
| * pge-boot/GStringConvert.h: Ditto. |
| * pge-boot/GSymbolKey.cc: Ditto. |
| * pge-boot/GSymbolKey.h: Ditto. |
| * pge-boot/GSysExceptions.h: Ditto. |
| * pge-boot/GSysStorage.cc: Ditto. |
| * pge-boot/GSysStorage.h: Ditto. |
| * pge-boot/GTimeString.h: Ditto. |
| * pge-boot/GUnixArgs.h: Ditto. |
| * pge-boot/Gbnflex.cc: Ditto. |
| * pge-boot/Gbnflex.h: Ditto. |
| * pge-boot/Gdtoa.h: Ditto. |
| * pge-boot/Gerrno.h: Ditto. |
| * pge-boot/Gldtoa.h: Ditto. |
| * pge-boot/Glibc.h: Ditto. |
| * pge-boot/Glibm.h: Ditto. |
| * pge-boot/Gpge.cc: Ditto. |
| * pge-boot/Gtermios.h: Ditto. |
| * pge-boot/Gwrapc.h: Ditto. |
| |
| 2024-10-20 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2MetaError.mod (op): Corrected ordering. |
| * gm2-compiler/P2SymBuild.def: Remove comment. |
| * gm2-compiler/P2SymBuild.mod (GetComparison): Replace |
| the word less with fewer. |
| |
| 2024-10-19 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2MetaError.mod (op): Alphabetically order |
| each case label and comment. |
| |
| 2024-10-19 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/115328 |
| * gm2-compiler/M2MetaError.def: Extend comment documentating |
| new format specifiers. |
| * gm2-compiler/M2MetaError.mod (GetTokProcedure): New declaration. |
| (doErrorScopeModule): New procedure. |
| (doErrorScopeForward): Ditto. |
| (doErrorScopeMod): Reimplement. |
| (doErrorScopeFor): New procedure. |
| (declarationMod): Ditto. |
| (doErrorScopeDefinition): Ditto. |
| (doErrorScopeDef): Reimplement. |
| (declaredDef): New procedure. |
| (declaredFor): Ditto. |
| (doErrorScopeProc): Ditto. |
| (declaredVar): Ditto. |
| (declaredType): Ditto. |
| (declaredFull): Ditto. |
| * gm2-compiler/M2Options.mod (SetAutoInit): Add missing |
| return type. |
| (GetDumpGimple): Remove duplicate implementation. |
| * gm2-compiler/M2Quads.def (DupFrame): New procedure. |
| * gm2-compiler/M2Quads.mod (DupFrame): New procedure. |
| * gm2-compiler/M2Reserved.def (ForwardTok): New variable. |
| * gm2-compiler/M2Reserved.mod (ForwardTok): Initialize variable. |
| * gm2-compiler/M2Scaffold.mod (DeclareArgEnvParams): Add |
| tokno parameter for call to PutParam. |
| * gm2-compiler/P0SymBuild.def (EndForward): New procedure. |
| * gm2-compiler/P0SymBuild.mod (EndForward): New procedure. |
| * gm2-compiler/P0SyntaxCheck.bnf (BlockAssert): New procedure. |
| (ProcedureDeclaration): Reimplement rule. |
| (PostProcedureHeading): New rule. |
| (ForwardDeclaration): Ditto. |
| (ProperProcedure): Ditto. |
| * gm2-compiler/P1Build.bnf (ProcedureDeclaration): Reimplement rule. |
| (PostProcedureHeading): New rule. |
| (ForwardDeclaration): Ditto. |
| (ProperProcedure): Ditto. |
| * gm2-compiler/P1SymBuild.def (Export): Removed unnecessary |
| export. |
| (EndBuildForward): New procedure. |
| * gm2-compiler/P1SymBuild.mod (StartBuildProcedure): Reimplement. |
| (EndBuildProcedure): Ditto. |
| (EndBuildForward): Ditto. |
| * gm2-compiler/P2Build.bnf (ProcedureDeclaration): Reimplement rule. |
| (PostProcedureHeading): New rule. |
| (ForwardDeclaration): Ditto. |
| (ProperProcedure): Ditto. |
| * gm2-compiler/P2SymBuild.def (BuildProcedureDefinedByForward): |
| New procedure. |
| (BuildProcedureDefinedByProper): Ditto. |
| (CheckProcedure): Ditto. |
| (EndBuildForward): Ditto. |
| * gm2-compiler/P2SymBuild.mod (EndBuildProcedure): Reimplement. |
| (EndBuildForward): New procedure. |
| (BuildFPSection): Reimplement to allow forward declaration or |
| checking of parameters. |
| (BuildProcedureDefinedByProper): New procedure. |
| (BuildProcedureDefinedByForward): Ditto |
| (FailParameter): Remove. |
| (ParameterError): New procedure. |
| (ParameterMismatch): Ditto. |
| (EndBuildFormalParameters): Add parameter number check. |
| (GetComparison): New procedure function. |
| (GetSourceDesc): Ditto. |
| (GetCurSrcDesc): Ditto. |
| (GetDeclared): New procedure. |
| (ReturnTypeMismatch): Ditto. |
| (BuildFunction): Reimplement. |
| (CheckProcedure): New procedure. |
| (CheckFormalParameterSection): Reimplement using ParameterError. |
| * gm2-compiler/P3Build.bnf (ProcedureDeclaration): Reimplement rule. |
| (PostProcedureHeading): New rule. |
| (ForwardDeclaration): Ditto. |
| (ProperProcedure): Ditto. |
| * gm2-compiler/P3SymBuild.def (Export): Remove unnecessary export. |
| (EndBuildForward): New procedure. |
| * gm2-compiler/P3SymBuild.mod (EndBuildForward): New procedure. |
| * gm2-compiler/PCBuild.bnf (ProcedureDeclaration): Reimplement rule. |
| (PostProcedureHeading): New rule. |
| (ForwardDeclaration): Ditto. |
| (ProperProcedure): Ditto. |
| * gm2-compiler/PCSymBuild.def (EndBuildForward): New procedure. |
| * gm2-compiler/PCSymBuild.mod (EndBuildForward): Ditto. |
| * gm2-compiler/PHBuild.bnf (ProcedureDeclaration): Reimplement rule. |
| (PostProcedureHeading): New rule. |
| (ForwardDeclaration): Ditto. |
| (ProperProcedure): Ditto. |
| * gm2-compiler/SymbolTable.def (PutVarTok): New procedure. |
| (PutParam): Add typetok parameter. |
| (PutVarParam): Ditto. |
| (PutParamName): Ditto. |
| (GetDeclaredFor): New procedure function. |
| (AreParametersDefinedInDefinition): Ditto. |
| (PutParametersDefinedByForward): New procedure. |
| (GetParametersDefinedByForward): New procedure function. |
| (PutParametersDefinedByProper): New procedure. |
| (GetParametersDefinedByProper): New procedure function. |
| (GetProcedureDeclaredForward): Ditto. |
| (PutProcedureDeclaredForward): New procedure. |
| (GetProcedureDeclaredProper): New procedure function. |
| (PutProcedureDeclaredProper): New procedure. |
| (GetProcedureDeclaredDefinition): New procedure function. |
| (PutProcedureDeclaredDefinition): New procedure. |
| (GetVarDeclTypeTok): Ditto. |
| (PutVarDeclTypeTok): New procedure. |
| (GetVarDeclTok): Ditto. |
| (PutVarDeclTok): New procedure. |
| (GetVarDeclFullTok): Ditto. |
| * gm2-compiler/SymbolTable.mod (ProcedureDecl): New record type. |
| (VarDecl): Ditto. |
| (SymProcedure): Add new field Declared. |
| (SymVar): Add new field Declared. |
| (PutVarTok): New procedure. |
| (PutParam): Add typetok parameter. |
| (PutVarParam): Ditto. |
| (PutParamName): Ditto. |
| (GetDeclaredFor): New procedure function. |
| (AreParametersDefinedInDefinition): Ditto. |
| (PutParametersDefinedByForward): New procedure. |
| (GetParametersDefinedByForward): New procedure function. |
| (PutParametersDefinedByProper): New procedure. |
| (GetParametersDefinedByProper): New procedure function. |
| (GetProcedureDeclaredForward): Ditto. |
| (PutProcedureDeclaredForward): New procedure. |
| (GetProcedureDeclaredProper): New procedure function. |
| (PutProcedureDeclaredProper): New procedure. |
| (GetProcedureDeclaredDefinition): New procedure function. |
| (PutProcedureDeclaredDefinition): New procedure. |
| (GetVarDeclTypeTok): Ditto. |
| (PutVarDeclTypeTok): New procedure. |
| (GetVarDeclTok): Ditto. |
| (PutVarDeclTok): New procedure. |
| (GetVarDeclFullTok): Ditto. |
| (MakeProcedure): Initialize Declared field. |
| (MakeVar): Initialize Declared field. |
| * gm2-libs-log/FileSystem.def (FileNameChar): Add |
| missing return type. |
| * m2.flex: Add FORWARD keyword. |
| |
| 2024-10-04 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/116918 |
| * gm2-compiler/M2Swig.mod (DoCheckUnbounded): Escape |
| the % character used in array_functions with %%. |
| |
| 2024-10-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs/Indexing.def (FindIndice): New procedure |
| function. |
| * gm2-libs/Indexing.mod (FindIndice): Implement new |
| procedure function. |
| |
| 2024-10-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/116918 |
| * gm2-compiler/M2Swig.mod (AnnotateProcedure): Capitalize |
| the generated comment, split comment into multiple lines and |
| terminate the comment with ". */". |
| (DoCheckUnbounded): Escape the % character with %%. |
| (DoWriteFile): Ditto. |
| |
| 2024-09-25 Mikael Morin <mikael@gcc.gnu.org> |
| |
| PR other/116801 |
| * lang.opt.urls: Regenerate. |
| |
| 2024-09-23 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (m2/gm2-libs-boot/M2RTS.o): Remove |
| --suppress-noreturn. |
| * gm2-libs/M2RTS.mod (HaltC): Add noreturn attribute. |
| * gm2-libs-min/M2RTS.mod (HALT): Add LOOP END. |
| |
| 2024-09-21 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Comp.mod (GenerateDependencies): Remove |
| unused parameter. |
| (WriteDep): Remove parameter dep. |
| (WritePhoneDep): Ditto. |
| |
| 2024-09-20 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Check.mod (checkUnboundedArray): New |
| procedure function. |
| (checkUnboundedUnbounded): Ditto. |
| (checkUnbounded): Rewrite to check the unbounded data |
| type. |
| (checkPair): Add comment. |
| (doCheckPair): Add comment. |
| Remove tinfo parameter from the call to checkTypeKindViolation. |
| (checkTypeKindViolation): Remove ununsed parameter tinfo. |
| * gm2-libs-ch/UnixArgs.cc (GM2RTS.h): Remove include. |
| * gm2-libs-ch/m2rts.h (M2RTS_INIT): New define. |
| (M2RTS_DEP): Ditto. |
| (M2RTS_RegisterModule): New prototype. |
| (GM2RTS.h): Add include to the MC_M2 block. |
| |
| 2024-09-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (GM2_BOOT_INCLUDES): New variable. |
| (m2/gm2-compiler-boot/M2GCCDeclare.o): Rewrite to use |
| GM2_BOOT_INCLUDES. |
| (m2/gm2-compiler-boot/M2Error.o): Ditto. |
| (m2/gm2-compiler-boot/%.o): Ditto. |
| |
| 2024-09-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/116181 |
| * Make-lang.in (GM2-GCC-DEFS): Add gcctypes.def and |
| CDataTypes.def. |
| (MC-LIB-DEFS): Add CDataTypes.def. |
| * Make-maintainer.in (m2/gm2-pge-boot/$(SRC_PREFIX)M2RTS.o): |
| Change include path to pge-boot. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)SymbolKey.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)NameKey.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)Lists.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)Output.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)bnflex.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)RTentity.h): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)RTentity.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Ditto. |
| (GM2PATH): Add -I$(srcdir)/m2/gm2-gcc. |
| (m2/mc-boot-gen/$(SRC_PREFIX)%.h): Add -I$(srcdir)/m2/gm2-gcc. |
| (m2/mc-boot-gen/$(SRC_PREFIX)%.cc): Ditto. |
| * gm2-compiler/M2ALU.def (PushIntegerTree): Replace Tree with tree. |
| (PopIntegerTree): Ditto. |
| (PushRealTree): Ditto. |
| (PopRealTree): Ditto. |
| (PushComplexTree): Ditto. |
| (PopComplexTree): Ditto. |
| (PushSetTree): Ditto. |
| (PopSetTree): Ditto. |
| (PopConstructorTree): Ditto. |
| (ConstructSetConstant): Ditto. |
| (BuildRange): Ditto. |
| (CheckOrResetOverflow): Ditto. |
| (PushTypeOfTree): Ditto. |
| * gm2-compiler/M2ALU.mod (Tree): Replace with ... |
| (tree): ... this. |
| (gcctypes): Import location_t and tree. |
| (m2linemap): Remove import of location_t. |
| * gm2-compiler/M2Base.def (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| * gm2-compiler/M2Base.mod (gcctypes): Import of location_t. |
| (m2linemap): Remove import of location_t. |
| * gm2-compiler/M2Bitset.mod (m2tree): Remove import of Tree. |
| * gm2-compiler/M2CaseList.mod (gcctypes): Import tree. |
| (m2tree): Remove import of Tree. |
| (Tree): Replace with ... |
| (tree): ... this. |
| * gm2-compiler/M2Emit.def (gcctypes): Import location_t. |
| * gm2-compiler/M2GCCDeclare.def (gcctypes): Import tree. |
| (PromoteToString): Replace Tree with tree. |
| (PromoteToCString): Ditto. |
| (ConstantKnownAndUsed): Ditto. |
| * gm2-compiler/M2GCCDeclare.mod (gcctypes): Import tree. |
| (m2tree): Remove import of Tree. |
| (Tree): Replace with ... |
| (tree): ... this. |
| * gm2-compiler/M2GenGCC.def (gcctypes): Import tree. |
| (m2tree): Remove import of Tree. |
| (Tree): Replace with ... |
| (tree): ... this. |
| (GetHighFromUnbounded): Replace Tree with tree. |
| (StringToChar): Ditto. |
| (LValueToGenericPtr): Ditto. |
| (ZConstToTypedConst): Ditto. |
| (PrepareCopyString): Ditto. |
| * gm2-compiler/M2GenGCC.mod (gcctypes): Import tree. |
| (m2tree): Remove import of Tree. |
| (Tree): Replace with ... |
| (tree): ... this. |
| * gm2-compiler/M2LangDump.def (gcctypes): Import tree. |
| (m2tree): Remove import of Tree. |
| (Tree): Replace with ... |
| (tree): ... this. |
| * gm2-compiler/M2LangDump.mod (Tree): Replace with ... |
| (tree): ... this. |
| * gm2-compiler/M2LexBuf.def (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| * gm2-compiler/M2LexBuf.mod (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| * gm2-compiler/M2Options.def (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| * gm2-compiler/M2Options.mod (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| * gm2-compiler/M2Range.def (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| (CDataTypes): Import ConstCharStar. |
| (CodeErrorCheck): Replace Tree with tree. |
| (OverlapsRange): Ditto. |
| (IsEqual): Ditto. |
| (IsGreaterOrEqual): Ditto. |
| (IsGreater): Ditto. |
| (BuildIfCallWholeHandlerLoc): Replace Tree with tree. |
| Replace ADDRESS with ConstCharStar. |
| (BuildIfCallRealHandlerLoc): Ditto. |
| (GetMinMax): Ditto. |
| * gm2-compiler/M2Range.mod (m2tree): Remove Tree. |
| (CodeErrorCheck): Replace Tree with tree. |
| (OverlapsRange): Ditto. |
| (IsEqual): Ditto. |
| (IsGreaterOrEqual): Ditto. |
| (IsGreater): Ditto. |
| (GetMinMax): Ditto. |
| (BuildIfCallWholeHandlerLoc): Replace Tree with tree. |
| Replace ADDRESS with ConstCharStar. |
| (BuildIfCallRealHandlerLoc): Ditto. |
| * gm2-compiler/M2System.def (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| * gm2-compiler/M2System.mod (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| (CreateMinMaxFor): Replace Tree with tree. |
| (CreateType): Ditto. |
| (AttemptToCreateType): Ditto. |
| (CreateSetType): Ditto. |
| (AttemptToCreateSetType): Ditto. |
| * gm2-compiler/P2SymBuild.mod (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| * gm2-compiler/SymbolConversion.def (m2tree): Replace with ... |
| (gcctypes): ... this. |
| (Mod2Gcc): Replace Tree with tree. |
| (Gcc2Mod): Ditto. |
| (AddModGcc): Ditto. |
| * gm2-compiler/SymbolConversion.mod (m2tree): Replace with ... |
| (gcctypes): ... this. |
| (Mod2Gcc): Replace Tree with tree. |
| (Gcc2Mod): Ditto. |
| (AddModGcc): Ditto. |
| (Mod2GccWithoutGCCPoison): Ditto. |
| * gm2-compiler/SymbolTable.def (m2tree): Replace with ... |
| (gcctypes): ... this. |
| (PutModuleFinallyFunction): Replace Tree with tree. |
| (GetModuleFinallyFunction): Ditto. |
| * gm2-compiler/SymbolTable.mod (m2tree): Replace with ... |
| (gcctypes): ... this. |
| (PutModuleFinallyFunction): Replace Tree with tree. |
| (GetModuleFinallyFunction): Ditto. |
| * gm2-compiler/m2flex.def (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| * gm2-gcc/init.def (PerCompilationInit): Replace ADDRESS with ConstCharStar. |
| (CDataTypes): Import ConstCharStar. |
| * gm2-gcc/m2block.def (SYSTEM): Remove import. |
| (CDataTypes): Import ConstCharStar. |
| (m2linemap): Remove import. |
| (m2tree): Remove import. |
| (gcctypes): Import tree. |
| (global_constant): Replace Tree with tree. |
| (RememberInitModuleFunction): Ditto. |
| (DumpGlobalConstants): Ditto. |
| (RememberConstant): Ditto. |
| (RememberType): Ditto. |
| (pushDecl): Ditto. |
| (popFunctionScope): Ditto. |
| (pushFunctionScope): Ditto. |
| (finishFunctionCode): Ditto. |
| (finishFunctionDecl): Ditto. |
| (GetErrorNode): Ditto. |
| (includeDecl): Ditto. |
| (GetGlobals): Ditto. |
| (GetGlobalContext): Ditto. |
| (begin_statement_list): Ditto. |
| (push_statement_list): Ditto. |
| (pop_statement_list): Ditto. |
| (getLabel): Replace Tree with tree. |
| Replace ADDRESS with ConstCharStar. |
| * gm2-gcc/m2builtins.def (CDataTypes): Import ConstCharStar. |
| (GetBuiltinConst): Replace Tree with tree. |
| (GetBuiltinConstType): Ditto. |
| (GetBuiltinTypeInfoType): Ditto. |
| (GetBuiltinTypeInfo): Ditto. |
| (BuiltinExists): Ditto. |
| (BuildBuiltinTree): Ditto. |
| (BuiltinMemCopy): Ditto. |
| (BuiltinMemSet): Ditto. |
| (BuiltInAlloca): Ditto. |
| (BuiltInIsfinite): Ditto. |
| * gm2-gcc/m2convert.def (CDataTypes): Import ConstCharStar. |
| (ToWord): Ditto. |
| (ToCardinal): Ditto. |
| (ToInteger): Ditto. |
| (ToBitset): Ditto. |
| (ConvertToPtr): Ditto. |
| (BuildConvert): Ditto. |
| (ConvertConstantAndCheck): Ditto. |
| (ConvertString): Ditto. |
| (GenericToType): Ditto. |
| * gm2-gcc/m2decl.cc (m2decl_BuildParameterDeclaration): Add |
| const attribute. |
| * gm2-gcc/m2decl.def (CDataTypes): Import ConstCharStar. |
| (BuildModuleCtor): Ditto. |
| (DeclareModuleCtor): Ditto. |
| (DeclareM2linkForcedModuleInitOrder): Ditto. |
| (DeclareM2linkStaticInitialization): Ditto. |
| (BuildPtrToTypeString): Ditto. |
| (BuildIntegerConstant): Ditto. |
| (BuildStringConstantType): Ditto. |
| (DeclareKnownVariable): Ditto. |
| (DeclareKnownConstant): Ditto. |
| (BuildParameterDeclaration): Ditto. |
| (BuildEndFunctionDeclaration): Ditto. |
| (RememberVariables): Ditto. |
| (BuildConstLiteralNumber): Ditto. |
| (BuildStringConstant): Ditto. |
| (BuildCStringConstant): Ditto. |
| (GetDeclContext): Ditto. |
| * gm2-gcc/m2decl.h (m2decl_BuildParameterDeclaration): Add |
| const attribute. |
| * gm2-gcc/m2except.def (CDataTypes): Import ConstCharStar. |
| (BuildThrow): Ditto. |
| (BuildTryBegin): Ditto. |
| (BuildTryEnd): Ditto. |
| (BuildCatchBegin): Ditto. |
| (BuildCatchEnd): Ditto. |
| * gm2-gcc/m2expr.def (CDataTypes): Import ConstCharStar. |
| (CSTIntToString): Ditto. |
| (CSTIntToChar): Ditto. |
| (CheckConstStrZtypeRange): Ditto. |
| (CompareTrees): Ditto. |
| (GetPointerOne): Ditto. |
| (GetPointerZero): Ditto. |
| (GetWordOne): Ditto. |
| (GetWordZero): Ditto. |
| (GetIntegerOne): Ditto. |
| (GetIntegerZero): Ditto. |
| (GetCardinalOne): Ditto. |
| (GetCardinalZero): Ditto. |
| (GetSizeOfInBits): Ditto. |
| (GetSizeOf): Ditto. |
| (BuildLogicalRotate): Ditto. |
| (BuildLRRn): Ditto. |
| (BuildLRLn): Ditto. |
| (BuildMask): Ditto. |
| (BuildMult): Ditto. |
| (BuildMultCheck): Ditto. |
| (BuildLRR): Ditto. |
| (BuildLRL): Ditto. |
| (BuildLogicalShift): Ditto. |
| (BuildLSR): Ditto. |
| (BuildLSL): Ditto. |
| (BuildDivM2): Ditto. |
| (BuildDivM2Check): Ditto. |
| (BuildModM2): Ditto. |
| (BuildModM2Check): Ditto. |
| (BuildModFloor): Ditto. |
| (BuildDivCeil): Ditto. |
| (BuildModCeil): Ditto. |
| (BuildDivFloor): Ditto. |
| (BuildModTrunc): Ditto. |
| (BuildDivTrunc): Ditto. |
| (BuildDivTruncCheck): Ditto. |
| (BuildRDiv): Ditto. |
| (BuildSubCheck): Ditto. |
| (BuildAddCheck): Ditto. |
| (BuildSub): Ditto. |
| (BuildAdd): Ditto. |
| (FoldAndStrip): Ditto. |
| (StringLength): Ditto. |
| (TreeOverflow): Ditto. |
| (RemoveOverflow): Ditto. |
| (BuildCoerce): Ditto. |
| (BuildTrunc): Ditto. |
| (BuildNegate): Ditto. |
| (BuildNegateCheck): Ditto. |
| (BuildSetNegate): Ditto. |
| (BuildTBitSize): Ditto. |
| (BuildSize): Ditto. |
| (BuildAddr): Ditto. |
| (BuildOffset1): Ditto. |
| (BuildOffset): Ditto. |
| (BuildLogicalOrAddress): Ditto. |
| (BuildLogicalOr): Ditto. |
| (BuildLogicalAnd): Ditto. |
| (BuildSymmetricDifference): Ditto. |
| (BuildLogicalDifference): Ditto. |
| (BuildLessThan): Ditto. |
| (BuildGreaterThan): Ditto. |
| (BuildLessThanOrEqual): Ditto. |
| (BuildGreaterThanOrEqual): Ditto. |
| (BuildEqualTo): Ditto. |
| (BuildNotEqualTo): Ditto. |
| (BuildIsSuperset): Ditto. |
| (BuildIsNotSuperset): Ditto. |
| (BuildIsSubset): Ditto. |
| (BuildIsNotSubset): Ditto. |
| (BuildIfConstInVar): Ditto. |
| (BuildIfNotConstInVar): Ditto. |
| (BuildIfVarInVar): Ditto. |
| (BuildIfNotVarInVar): Ditto. |
| (BuildForeachWordInSetDoIfExpr): Ditto. |
| (BuildIfInRangeGoto): Ditto. |
| (BuildIfNotInRangeGoto): Ditto. |
| (BuildArray): Ditto. |
| (BuildComponentRef): Ditto. |
| (BuildIndirect): Ditto. |
| (IsTrue): Ditto. |
| (IsFalse): Ditto. |
| (GetCstInteger): Ditto. |
| (AreConstantsEqual): Ditto. |
| (AreRealOrComplexConstantsEqual): Ditto. |
| (DetermineSign): Ditto. |
| (BuildCap): Ditto. |
| (BuildAbs): Ditto. |
| (BuildRe): Ditto. |
| (BuildIm): Ditto. |
| (BuildCmplx): Ditto. |
| (BuildBinaryForeachWordDo): Ditto. |
| (BuildBinarySetDo): Ditto. |
| (ConstantExpressionWarning): Ditto. |
| (BuildAddAddress): Ditto. |
| (calcNbits): Ditto. |
| (OverflowZType): Ditto. |
| (BuildCondIfExpression): Ditto. |
| * gm2-gcc/m2linemap.def (CDataTypes): Import ConstCharStar. |
| * gm2-gcc/m2misc.def (m2tree): Replace with ... |
| (gcctypes): ... this. |
| (DebugTree): Replace Tree with tree. |
| * gm2-gcc/m2pp.def (m2tree): Replace with ... |
| (gcctypes): ... this. |
| (DumpGimpleFd): Replace Tree with tree. |
| * gm2-gcc/m2statement.cc (m2statement_BuildBuiltinCallTree): |
| Remove unused location parameter. |
| * gm2-gcc/m2statement.def (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| (CDataTypes): Import CharStar. |
| (DoJump): Replace Tree with tree. |
| Replace ADDRESS with CharStar. |
| (BuildStartFunctionCode): Replace Tree with tree. |
| (BuildEndFunctionCode): Ditto. |
| (BuildReturnValueCode): Ditto. |
| (BuildAssignmentTree): Ditto. |
| (BuildAssignmentStatement): Ditto. |
| (BuildGoto): Ditto. |
| (DeclareLabel): Ditto. |
| (BuildIfThenDoEnd): Ditto. |
| (BuildIfThenElseEnd): Ditto. |
| (BuildParam): Ditto. |
| (BuildFunctionCallTree): Ditto. |
| (BuildProcedureCallTree): Ditto. |
| (BuildIndirectProcedureCallTree): Ditto. |
| (BuildFunctValue): Ditto. |
| (BuildCall2): Ditto. |
| (BuildCall3): Ditto. |
| (SetLastFunction): Ditto. |
| (GetLastFunction): Ditto. |
| (GetParamTree): Ditto. |
| (BuildTryFinally): Ditto. |
| (BuildCleanUp): Ditto. |
| (BuildAsm): Ditto. |
| (BuildUnaryForeachWordDo): Ditto. |
| (BuildExcludeVarConst): Ditto. |
| (BuildExcludeVarVar): Ditto. |
| (BuildIncludeVarConst): Ditto. |
| (BuildIncludeVarVar): Ditto. |
| (BuildStart): Ditto. |
| (BuildEnd): Ditto. |
| (BuildCallInner): Ditto. |
| (BuildBuiltinCallTree): Remove unused location parameter. |
| * gm2-gcc/m2statement.h (m2statement_BuildBuiltinCallTree): Remove |
| unused location parameter. |
| * gm2-gcc/m2tree.def (gcctypes): Import tree. |
| (IsAConstant): Replace Tree with tree. |
| (IsOrdinal): Ditto. |
| (IsTreeOverflow): Ditto. |
| (skip_const_decl): Ditto. |
| (skip_type_decl): Ditto. |
| (is_type): Ditto. |
| (is_array): Ditto. |
| (is_var): Ditto. |
| (debug_tree): Ditto. |
| (IstreeOverflow): Ditto. |
| * gm2-gcc/m2treelib.def (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| (get_set_address_if_var): Ditto. |
| (get_set_field_rhs): Ditto. |
| (get_set_field_lhs): Ditto. |
| (get_set_address): Ditto. |
| (get_set_value): Ditto. |
| (get_field_no): Ditto. |
| (get_rvalue): Ditto. |
| (DoCall): Ditto. |
| (build_modify_expr): Ditto. |
| (do_jump_if_bit): Ditto. |
| * gm2-gcc/m2type.def (m2linemap): Replace with ... |
| (gcctypes): ... this. |
| (m2tree): Remove. |
| (CDataTypes): Import ConstCharStar and charStar. |
| (ValueInTypeRange): Replace Tree with tree. |
| (ValueOutOfTypeRange): Ditto. |
| (ExceedsTypeRange): Ditto. |
| (WithinTypeRange): Ditto. |
| (BuildSubrangeType): Ditto. |
| (BuildCharConstant): Ditto. |
| (BuildCharConstantChar): Ditto. |
| (BuildArrayConstructorElement): Ditto. |
| (BuildEndArrayConstructor): Ditto. |
| (BuildStartArrayConstructor): Ditto. |
| (BuildRecordConstructorElement): Ditto. |
| (BuildEndRecordConstructor): Ditto. |
| (BuildStartRecordConstructor): Ditto. |
| (BuildEndSetConstructor): Ditto. |
| (BuildSetConstructorElement): Ditto. |
| (BuildStartSetConstructor): Ditto. |
| (BuildSetType): Ditto. |
| (BuildConstPointerType): Ditto. |
| (BuildPointerType): Ditto. |
| (BuildEnumerator): Ditto. |
| (BuildEndEnumeration): Ditto. |
| (BuildStartEnumeration): Ditto. |
| (BuildTypeDeclaration): Ditto. |
| (GetMaxFrom): Ditto. |
| (GetMinFrom): Ditto. |
| (GetDefaultType): Ditto. |
| (BuildEndType): Ditto. |
| (BuildStartType): Ditto. |
| (BuildVariableArrayAndDeclare): Ditto. |
| (BuildProcTypeParameterDeclaration): Ditto. |
| (BuildStartFunctionType): Ditto. |
| (BuildEndFunctionType): Ditto. |
| (GetTreeType): Ditto. |
| (DeclareKnownType): Ditto. |
| (GetM2ZType): Ditto. |
| (GetM2RType): Ditto. |
| (BuildSetTypeFromSubrange): Ditto. |
| (BuildSmallestTypeRange): Ditto. |
| (GetBooleanType): Ditto. |
| (GetBooleanFalse): Ditto. |
| (GetBooleanTrue): Ditto. |
| (GetPackedBooleanType): Ditto. |
| (GetCharType): Ditto. |
| (GetByteType): Ditto. |
| (GetVoidType): Ditto. |
| (GetBitnumType): Ditto. |
| (GetRealType): Ditto. |
| (GetLongRealType): Ditto. |
| (GetShortRealType): Ditto. |
| (GetLongIntType): Ditto. |
| (GetPointerType): Ditto. |
| (GetCardinalType): Ditto. |
| (GetIntegerType): Ditto. |
| (GetWordType): Ditto. |
| (GetM2CardinalType): Ditto. |
| (GetBitsetType): Ditto. |
| (GetM2CType): Ditto. |
| (GetProcType): Ditto. |
| (GetM2ComplexType): Ditto. |
| (GetM2LongComplexType): Ditto. |
| (GetM2ShortComplexType): Ditto. |
| (GetM2Complex128): Ditto. |
| (GetM2Complex96): Ditto. |
| (GetM2Complex64): Ditto. |
| (GetM2Complex32): Ditto. |
| (GetM2Real128): Ditto. |
| (GetM2Real96): Ditto. |
| (GetM2Real64): Ditto. |
| (GetM2Real32): Ditto. |
| (GetM2Bitset32): Ditto. |
| (GetM2Bitset16): Ditto. |
| (GetM2Bitset8): Ditto. |
| (GetM2Word64): Ditto. |
| (GetM2Word32): Ditto. |
| (GetM2Word16): Ditto. |
| (GetM2Cardinal64): Ditto. |
| (GetM2Cardinal32): Ditto. |
| (GetM2Cardinal16): Ditto. |
| (GetM2Cardinal8): Ditto. |
| (GetM2Integer64): Ditto. |
| (GetM2Integer32): Ditto. |
| (GetM2Integer16): Ditto. |
| (GetM2Integer8): Ditto. |
| (GetISOLocType): Ditto. |
| (GetISOByteType): Ditto. |
| (GetISOWordType): Ditto. |
| (GetShortCardType): Ditto. |
| (GetM2ShortCardType): Ditto. |
| (GetShortIntType): Ditto. |
| (GetM2ShortIntType): Ditto. |
| (GetM2LongCardType): Ditto. |
| (GetM2LongIntType): Ditto. |
| (GetM2LongRealType): Ditto. |
| (GetM2RealType): Ditto. |
| (GetM2ShortRealType): Ditto. |
| (GetM2IntegerType): Ditto. |
| (GetM2CharType): Ditto. |
| (GetCSizeTType): Ditto. |
| (GetCSSizeTType): Ditto. |
| (BuildArrayStringConstructor): Ditto. |
| (RealToTree): Ditto. |
| (BuildStartRecord): Ditto. |
| (BuildStartUnion): Ditto. |
| (BuildStartVarient): Ditto. |
| (BuildEndVarient): Ditto. |
| (BuildStartFieldVarient): Ditto. |
| (BuildEndFieldVarient): Ditto. |
| (BuildStartFieldRecord): Ditto. |
| (BuildFieldRecord): Ditto. |
| (ChainOn): Ditto. |
| (ChainOnParamValue): Ditto. |
| (AddStringToTreeList): Ditto. |
| (BuildEndRecord): Ditto. |
| (SetAlignment): Ditto. |
| (SetDeclPacked): Ditto. |
| (SetTypePacked): Ditto. |
| (SetRecordFieldOffset): Ditto. |
| (BuildPackedFieldRecord): Ditto. |
| (BuildNumberOfArrayElements): Ditto. |
| (AddStatement): Ditto. |
| (MarkFunctionReferenced): Ditto. |
| (BuildArrayIndexType): Ditto. |
| (GetArrayNoOfElements): Ditto. |
| (BuildEndArrayType): Ditto. |
| (PutArrayType): Ditto. |
| (BuildStartArrayType): Ditto. |
| (IsAddress): Ditto. |
| (SameRealType): Ditto. |
| * m2.flex (Gm2linemap.h): Include. |
| * mc-boot/GDynamicStrings.cc: Rebuild. |
| * mc-boot/GFIO.cc: Ditto. |
| * mc-boot/GIndexing.cc: Ditto. |
| * mc-boot/GM2Dependent.cc: Ditto. |
| * mc-boot/GSArgs.cc: Ditto. |
| * mc-boot/GStringConvert.cc: Ditto. |
| * mc-boot/Gdecl.cc: Ditto. |
| * mc-boot/Gdecl.h: Ditto. |
| * mc-boot/Gdtoa.h: Ditto. |
| * mc-boot/Gkeyc.cc: Ditto. |
| * mc-boot/Gkeyc.h: Ditto. |
| * mc-boot/Glibc.h: Ditto. |
| * mc-boot/GmcComp.cc: Ditto. |
| * mc-boot/GmcLexBuf.cc: Ditto. |
| * mc-boot/GmcPreprocess.cc: Ditto. |
| * mc-boot/GmcStream.cc: Ditto. |
| * mc-boot/Gmcp1.cc: Ditto. |
| * mc-boot/Gmcp3.cc: Ditto. |
| * mc-boot/Gmcp4.cc: Ditto. |
| * mc-boot/Gmcp5.cc: Ditto. |
| * mc-boot/GnameKey.cc: Ditto. |
| * mc-boot/Gvarargs.cc: Ditto. |
| * mc/decl.def (putDefUnqualified): New procedure function. |
| (isDefUnqualified): Ditto. |
| * mc/decl.mod (defT): Add unqualified field. |
| (charStarN): New variable. |
| (constCharStarN): Ditto. |
| (checkGccType): New procedure. |
| (checkCDataTypes): Ditto. |
| (import): Call checkGccType and checkCDataTypes. |
| (putDefUnqualified): New procedure function. |
| (isDefUnqualified): Ditto. |
| * mc/keyc.def (useGccTree): New procedure. |
| (useGccLocation): Ditto. |
| * mc/keyc.mod (checkGccConfigSystem): Call checkGccConfigSystem. |
| (useGccTree): New procedure. |
| (useGccLocation): Ditto. |
| * mc/mcp1.bnf (decl): Import putDefUnqualified. |
| (Export): Call putDefUnqualified. |
| * gm2-gcc/CDataTypes.def: New file. |
| * gm2-gcc/gcctypes.def: New file. |
| |
| 2024-09-02 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/116557 |
| * gm2-lang.cc: Replace physical address with URL in GPL header. |
| * gm2-lang.h: Ditto. |
| * images/LICENSE.IMG: Ditto. |
| * m2-tree.def: Ditto. |
| * mc-boot/GIndexing.cc: Ditto. |
| * mc-boot/Gkeyc.cc: Ditto. |
| * mc-boot/Glists.cc: Ditto. |
| * mc-boot/GmcComp.cc: Ditto. |
| * mc-boot/GmcDebug.cc: Ditto. |
| * mc-boot/GmcFileName.cc: Ditto. |
| * mc-boot/GmcMetaError.cc: Ditto. |
| * mc-boot/GmcOptions.cc: Ditto. |
| * mc-boot/GmcPreprocess.cc: Ditto. |
| * mc-boot/GmcPretty.cc: Ditto. |
| * mc-boot/GmcPrintf.cc: Ditto. |
| * mc-boot/GmcQuiet.cc: Ditto. |
| * mc-boot/GmcReserved.cc: Ditto. |
| * mc-boot/GmcSearch.cc: Ditto. |
| * mc-boot/GmcStack.cc: Ditto. |
| * mc/Indexing.mod: Ditto. |
| * mc/keyc.mod: Ditto. |
| * mc/lists.mod: Ditto. |
| * mc/mcComp.mod: Ditto. |
| * mc/mcDebug.mod: Ditto. |
| * mc/mcFileName.mod: Ditto. |
| * mc/mcMetaError.mod: Ditto. |
| * mc/mcOptions.mod: Ditto. |
| * mc/mcPreprocess.mod: Ditto. |
| * mc/mcPretty.mod: Ditto. |
| * mc/mcPrintf.mod: Ditto. |
| * mc/mcQuiet.mod: Ditto. |
| * mc/mcReserved.mod: Ditto. |
| * mc/mcSearch.mod: Ditto. |
| * mc/mcStack.mod: Ditto. |
| * tools-src/buildpg: Ditto. |
| * tools-src/calcpath: Ditto. |
| * tools-src/checkmeta.py: Ditto. |
| * tools-src/def2doc.py: Ditto. |
| * tools-src/makeSystem: Ditto. |
| * tools-src/tidydates.py: Ditto. |
| |
| 2024-09-02 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * gm2-gcc/m2block.cc (flush_pending_note): Rename ASM_INPUT_P |
| to ASM_BASIC_P. |
| * gm2-gcc/m2statement.cc (m2statement_BuildAsm): Likewise. |
| |
| 2024-08-30 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/116181 |
| * pge-boot/GM2RTS.h: Regenerate. |
| * pge-boot/m2rts.h: Ditto. |
| |
| 2024-08-28 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/116181 |
| * Make-lang.in (MC_SRC_FLAGS): New macro. |
| (m2/mc-boot/$(SRC_PREFIX)%.o): Use MC_SRC_FLAGS. |
| (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto. |
| (m2/gm2-libs-boot/M2RTS.o): Ditto. |
| (m2/gm2-libs-boot/%.o): Ditto. |
| (GM2-LIBS-BOOT-H): New macro. |
| (m2/gm2-libs-boot/RTcodummy.o): Use MC_SRC_FLAGS. |
| Remove gm2-libs-host.h from the dependancy. |
| (m2/gm2-libs-boot/wrapc.o): Use MC_SRC_FLAGS. |
| Add dependancy GM2-LIBS-BOOT-H. |
| (m2/gm2-libs-boot/UnixArgs.o): Ditto. |
| (m2/gm2-libs-boot/choosetemp.o): Ditto. |
| (m2/gm2-libs-boot/errno.o): Ditto. |
| (m2/gm2-libs-boot/dtoa.o): Ditto. |
| (m2/gm2-libs-boot/ldtoa.o): Ditto. |
| (m2/gm2-libs-boot/termios.o): Ditto. |
| (m2/gm2-libs-boot/SysExceptions.o): Ditto. |
| (m2/gm2-compiler-boot/M2GCCDeclare.o): Add gm2-libs-ch to the |
| search path. |
| (m2/gm2-compiler-boot/M2Error.o): Ditto. |
| (m2/gm2-compiler-boot/%.o): Ditto. |
| (m2/pge-boot/%.o): Ditto. |
| * gm2-gcc/m2color.cc (m2color_colorize_start): Replace parameter |
| type char to void and recast to char * when calling colorize_start. |
| * gm2-gcc/m2color.h (m2color_colorize_start): Replace parameter |
| type char to void. |
| * gm2-gcc/m2type.h: Remove #if 0 block. |
| * gm2-libs-ch/SysExceptions.c (DECL_PROC_T): Provide alternative |
| defines for MC an gm2. |
| (PROC_FUNC): Ditto. |
| (EXTERN): Force undefine and redefine. |
| (SysExceptions_InitExceptionHandlers): Rewrite function |
| declaration using defined macros. |
| (_M2_SysExceptions_init): Use EXTERN. |
| (_M2_SysExceptions_finish): Replace with ... |
| (_M2_SysExceptions_fini): ... this and add parameters. |
| * gm2-libs-ch/UnixArgs.cc (gm2-libs-host.h): Include. |
| (GUnixArgs.h): Include. |
| (GM2RTS.h): Include. |
| (UnixArgs_GetArgV): Change return type to void *. |
| (UnixArgs_GetEnvV): Ditto. |
| * gm2-libs-ch/m2rts.h (M2RTS_RegisterModule_Cstr): Add new |
| conditional macro. |
| (M2RTS_RequestDependant): Remove. |
| (M2RTS_RegisterModule): Ditto. |
| (M2RTS_Terminate): Ditto. |
| (M2RTS_DeconstructModules): Ditto. |
| (M2RTS_Halt): Ditto. |
| (_M2_M2RTS_init): Ditto. |
| (M2RTS_ConstructModules): Ditto. |
| * gm2-libs-ch/termios.c (_termios_C): Define. |
| (EXTERN): Add conditional definition. |
| (doSetUnset): New function. |
| (_M2_termios_init): Add correct parameters. |
| (_M2_termios_finish): Ditto. |
| (_M2_termios_fini): Ditto. |
| * mc-boot-ch/GSysExceptions.c (DECL_PROC_T): New define. |
| (PROC_FUNC): Ditto. |
| (EXTERN): Force undef. |
| (SysExceptions_InitExceptionHandlers): Rewrite. |
| * mc-boot-ch/Glibc.c (libc_open): Rename parameter |
| oflag to flags. |
| * mc-boot-ch/Gtermios.cc (_termios_C): New define. |
| (KillTermios): Change parameter type from |
| struct termios * to termios_TERMIOS. |
| (tcsnow): Rewrite. |
| (tcsnow): Rewrite. |
| (tcsdrain): Rewrite. |
| (tcsflush): Rewrite. |
| (cfgetospeed): Rewrite. |
| (cfgetispeed): Rewrite. |
| (cfsetospeed): Rewrite. |
| (cfsetispeed): Rewrite. |
| (cfsetspeed): Rewrite. |
| (cfsetspeed): Rewrite. |
| (tcgetattr): Rewrite. |
| (tcsetattr): Rewrite. |
| (cfmakeraw): Rewrite. |
| (tcsendbreak): Rewrite. |
| (tcdrain): Rewrite. |
| (tcflushi): Rewrite. |
| (tcflusho): Rewrite. |
| (tcflushio): Rewrite. |
| (tcflowoni): Rewrite. |
| (tcflowoffi): Rewrite. |
| (tcflowono): Rewrite. |
| (tcflowoffo): Rewrite. |
| (GetFlag): Rewrite. |
| (SetFlag): Rewrite. |
| (GetChar): Rewrite. |
| (SetChar): Rewrite. |
| (InitTermios): Rewrite. |
| * pge-boot/GM2RTS.cc: Regenerate. |
| * pge-boot/GSysExceptions.cc: Ditto. |
| * pge-boot/Gtermios.cc: Ditto. |
| * pge-boot/m2rts.h: Rewrite. |
| * mc-boot-ch/GSYSTEM.h: New file. |
| * mc-boot-ch/GSysExceptions.h: New file. |
| * mc-boot-ch/Gtermios.h: New file. |
| |
| 2024-08-24 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs/libc.def (atof): Export unqualified. |
| (atoi): Ditto. |
| (atol): Ditto. |
| (atoll): Ditto. |
| (strtod): Ditto. |
| (strtof): Ditto. |
| (strtold): Ditto. |
| (strtol): Ditto. |
| (strtoll): Ditto. |
| (strtoul): Ditto. |
| (strtoull): Ditto. |
| |
| 2024-08-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs-iso/StdChans.mod (in): Rename to ... |
| (inch): ... this. |
| (out): Rename to ... |
| (outch): ... this. |
| (err): Rename to ... |
| (errch): ... this. |
| |
| 2024-08-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs/DynamicStrings.mod (Slice): Rename end to stop. |
| |
| 2024-08-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/116378 |
| * gm2-libs-iso/TermFile.mod (termOpen): Add third argument |
| for open. |
| * gm2-libs/libc.def (open): Remove vararg and use INTEGER for |
| mode parameter three. |
| * mc-boot-ch/Glibc.c (tracedb_open): Replace mode_t with int. |
| (libc_open): Rewrite without varargs. |
| * mc-boot/Glibc.h (libc_open): Replace varargs with int mode. |
| * pge-boot/Glibc.cc (libc_open): Rewrite. |
| * pge-boot/Glibc.h (libc_open): Replace varargs with int mode. |
| |
| 2024-08-12 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/116181 |
| * gm2-compiler/ppg.mod (FindStr): Initialize j. |
| * gm2-libs-ch/UnixArgs.cc (_M2_UnixArgs_ctor): Replace |
| M2RTS_RegisterModule with M2RTS_RegisterModule_Cstr. |
| * gm2-libs-ch/dtoa.cc (_M2_dtoa_ctor): Ditto. |
| * gm2-libs-ch/ldtoa.cc (ldtoa_strtold): Cast parameter s |
| for strtod. |
| (_M2_ldtoa_ctor): Replace M2RTS_RegisterModule with |
| M2RTS_RegisterModule_Cstr. |
| * gm2-libs-ch/m2rts.h (M2RTS_RegisterModule_Cstr): New |
| define. |
| (M2RTS_RegisterModule): Remove const. |
| * mc-boot-ch/GSelective.c (Selective_FdIsSet): Return bool |
| rather than int. |
| * mc-boot-ch/Gldtoa.cc (ldtoa_strtold): Change const char to |
| void. |
| Cast s before passing as a parameter to strtod. |
| * mc-boot-ch/Glibc.c (tracedb_open): Replace const char with const |
| void. |
| (libc_perror): Replace char with const char. |
| (libc_printf): Replace char with void. |
| (libc_snprintf): Replace char with void. |
| Add const_cast for parameter to index. |
| Add reinterpret_cast for parameter to vsnprintf. |
| (libc_open): Replace first paramter type char with void. |
| Add vararg for the third parameter. |
| * mc-boot-ch/Gm2rtsdummy.cc (M2RTS_RequestDependant): Remove #if 0 code. |
| (m2pim_M2RTS_RegisterModule): Change const char parameters to void |
| (M2RTS_RegisterModule): Ditto. |
| (_M2_M2RTS_init): Remove #if 0 code. |
| (M2RTS_ConstructModules): Ditto. |
| (M2RTS_Terminate): Ditto. |
| (M2RTS_DeconstructModules): Ditto. |
| (M2RTS_Halt): Ditto. |
| * mc-boot-ch/Gtermios.cc (SetFlag): Return bool. |
| * mc-boot-ch/m2rts.h (M2RTS_RegisterModule_Cstr): New define. |
| (M2RTS_RegisterModule): Change const char parameters to void. |
| * mc-boot/Gdecl.cc: Regenerate. |
| * mc/decl.mod (getNextConstExp): Reimplement. |
| * pge-boot/GDynamicStrings.cc: Regenerate. |
| * pge-boot/GDynamicStrings.h: Ditto. |
| * pge-boot/GM2RTS.h (M2RTS_RegisterModule_Cstr): New function. |
| (M2RTS_RegisterModule): Reformat. |
| * pge-boot/GSymbolKey.cc: Regenerate. |
| * pge-boot/GSysExceptions.cc (_M2_SysExceptions_init): Add correct parameters. |
| (_M2_SysExceptions_fini): Ditto. |
| * pge-boot/GUnixArgs.cc (_M2_UnixArgs_ctor::_M2_UnixArgs_ctor): |
| Replace call to M2RTS_RegisterModule with M2RTS_RegisterModuleCstr. |
| * pge-boot/Gerrno.cc (_M2_errno_init): Add correct parameters. |
| (_M2_errno_fini): Ditto. |
| * pge-boot/Gldtoa.cc (ldtoa_strtold): Replace const char with |
| void. |
| Use reinterpret_cast when passing s to strtod. |
| Replace true with TRUE. |
| * pge-boot/Gldtoa.h (ldtoa_strtold): Tidy up. |
| * pge-boot/Glibc.cc (libc_read): Use size_t as the return type. |
| (libc_write): Ditto. |
| (libc_strlen): Ditto. |
| (libc_perror): Replace char with const char. |
| (libc_printf): Replace char to const char. |
| Cast parameter to index using const_cast. |
| (libc_snprintf): Replace char with void. |
| Cast parameter to index using const_cast. |
| (libc_malloc): Replace parameter type with size_t. |
| (libc_memcpy): Replace third parameter type with size_t. |
| (libc_open): Use varargs. |
| * pge-boot/Glibc.h (libc_perror): Add _string_high parameter. |
| * pge-boot/Gpge.cc: Regenerate. |
| * pge-boot/Gtermios.cc (SetFlag): Replace return type with bool. |
| (_M2_termios_init): Add correct parameters. |
| (_M2_termios_fini): Ditto. |
| * pge-boot/m2rts.h (M2RTS_RegisterModule_Cstr): New define. |
| (M2RTS_RegisterModule): Replace const char with void. |
| |
| 2024-08-10 Wilken Gottwalt <wilken.gottwalt@posteo.net> |
| |
| * gm2-libs-iso/MemStream.mod: Guard debug output. |
| |
| 2024-07-28 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/115823 |
| * gm2-gcc/m2builtins.cc (define_builtin): Build |
| the function decl using the libname. |
| |
| 2024-07-24 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2StateCheck.mod (GenerateError): Add |
| symbol name to the error message. |
| |
| 2024-07-23 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/116048 |
| * Make-lang.in (GM2-COMP-BOOT-DEFS): Add M2StateCheck.def. |
| (GM2-COMP-BOOT-MODS): Add M2StateCheck.mod. |
| (GM2-COMP-DEFS): Add M2StateCheck.def. |
| (GM2-COMP-MODS): Add M2StateCheck.mod. |
| * gm2-compiler/M2Quads.mod (StartBuildWith): Generate |
| unrecoverable error is the qualident type is NulSym. |
| Replace MetaError1 with MetaErrorT1 and position the error |
| to the qualident. |
| * gm2-compiler/P3Build.bnf (M2StateCheck): Import procedures. |
| (seenError): New variable. |
| (WasNoError): Remove variable. |
| (BlockState): New variable. |
| (ErrorString): Rewrite using seenError. |
| (CompilationUnit): Ditto. |
| (QualidentCheck): New rule. |
| (ConstantDeclaration): Bookend with InclConst and ExclConst. |
| (Constructor): Add InclConstructor, ExclConstructor and call |
| CheckQualident. |
| (ConstActualParameters): Call PushState, PopState, InclConstFunc |
| and CheckQualident. |
| (TypeDeclaration): Bookend with InclType and ExclType. |
| (SimpleType): Call QualidentCheck. |
| (CaseTag): Ditto. |
| (OptReturnType): Ditto. |
| (VariableDeclaration): Bookend with InclVar and ExclVar. |
| (Designator): Call QualidentCheck. |
| (Formal;Type): Ditto. |
| * gm2-compiler/PCBuild.bnf (M2StateCheck): Import procedures. |
| (ConstantDeclaration): Rewrite using InclConst and ExclConst. |
| (Constructor): Bookend with InclConstructor and ExclConstructor. |
| Call CheckQualident. |
| (ConstructorOrConstActualParameters): Rewrite and cal |
| l CheckQualident. |
| (ConstActualParameters): Bookend with PushState PopState. |
| Call InclConstFunc and CheckQualident. |
| * gm2-gcc/init.cc (_M2_M2StateCheck_init): New declaration. |
| (_M2_P3Build_init): New declaration. |
| (init_PerCompilationInit): Call _M2_M2StateCheck_init and |
| _M2_P3Build_init. |
| * gm2-compiler/M2StateCheck.def: New file. |
| * gm2-compiler/M2StateCheck.mod: New file. |
| |
| 2024-07-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/115957 |
| * gm2-compiler/M2StackAddress.mod (PopAddress): Detect tail=NIL |
| and generate an internal error. |
| * gm2-compiler/PCBuild.bnf (InConstParameter): New variable. |
| (InConstBlock): New variable. |
| (ErrorString): Rewrite using MetaErrorStringT0. |
| (ErrorArrayAt): Rewrite using MetaErrorStringT0. |
| (WarnMissingToken): Use MetaErrorStringT0. |
| (CompilationUnit): Set seenError FALSE. |
| (init): Initialize InConstParameter and InConstBlock. |
| (ConstantDeclaration): Set InConstBlock. |
| (ConstSetOrQualidentOrFunction): Call CheckNotVar if not |
| InConstParameter and InConstBlock. |
| (ConstActualParameters): Set InConstParameter TRUE and restore |
| value at the end. |
| * gm2-compiler/PCSymBuild.def (CheckNotVar): New procedure. |
| Remove all unnecessary export qualified list. |
| * gm2-compiler/PCSymBuild.mod (CheckNotVar): New procedure. |
| |
| 2024-07-12 FX Coudert <fxcoudert@gmail.com> |
| |
| * gm2-gcc/m2linemap.cc (INCLUDE_STRING): Define before |
| include of gcc-consolidation.h. |
| * gm2spec.cc (INCLUDE_STRING): Define before include of |
| system.h. |
| (INCLUDE_VECTOR): Ditto. |
| |
| 2024-07-10 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/115823 |
| * gm2-gcc/m2builtins.cc (struct builtin_macro_definition): New |
| field builtinname. |
| (builtin_function_match): New function. |
| (builtin_macro_match): Ditto. |
| (m2builtins_BuiltinExists): Use builtin_function_match and |
| builtin_macro_match. |
| (lookup_builtin_macro): Use builtin_macro_match. |
| (lookup_builtin_function): Use builtin_function_match. |
| (define_builtin): Assign builtinname field. |
| |
| 2024-07-07 Gaius Mulley <gaiusmod2@gmail.com> |
| Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> |
| Andrew Pinski <quic_apinski@quicinc.com> |
| |
| PR modula2/115804 |
| * gm2-gcc/m2builtins.cc (builtin_function_entry): Add GTY. |
| (DoBuiltinMemCopy): Add rettype and use rettype in the call. |
| (DoBuiltinAlloca): Ditto. |
| (DoBuiltinIsfinite): Ditto. |
| (DoBuiltinIsnan): Ditto. |
| (m2builtins_BuiltInHugeVal): Ditto. |
| (m2builtins_BuiltInHugeValShort): Ditto. |
| (m2builtins_BuiltInHugeValLong): Ditto. |
| |
| 2024-06-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2GenGCC.mod (QuadCondition): Remove. |
| (FoldIfEqu): Remove WalkAction parameter. |
| (FoldIfNotEqu): Ditto. |
| (FoldIfGreEqu): Ditto. |
| (FoldIfLessEqu): Ditto. |
| (FoldIfGre): Ditto. |
| (FoldIfLess): Ditto. |
| (FoldIfIn): Ditto. |
| (FoldIfNotIn): Ditto. |
| * gm2-compiler/M2Quads.mod (GenQuadOTypeUniquetok): Remove. |
| |
| 2024-06-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/115540 |
| * gm2-libs-ch/termios.c (cfmakeraw): Remove return. |
| * mc-boot-ch/Gtermios.cc (cfmakeraw): Remove return. |
| * pge-boot/Gtermios.cc (cfmakeraw): Remove return. |
| |
| 2024-06-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/115536 |
| * gm2-compiler/M2BasicBlock.def (GetBasicBlockScope): New procedure. |
| (GetBasicBlockStart): Ditto. |
| (GetBasicBlockEnd): Ditto. |
| (IsBasicBlockFirst): New procedure function. |
| * gm2-compiler/M2BasicBlock.mod (ConvertQuads2BasicBlock): Allow |
| conditional boolean quads to be removed. |
| (GetBasicBlockScope): Implement new procedure. |
| (GetBasicBlockStart): Ditto. |
| (GetBasicBlockEnd): Ditto. |
| (IsBasicBlockFirst): Implement new procedure function. |
| * gm2-compiler/M2GCCDeclare.def (FoldConstants): New parameter |
| declaration. |
| * gm2-compiler/M2GCCDeclare.mod (FoldConstants): New parameter |
| declaration. |
| (DeclareTypesConstantsProceduresInRange): Recreate basic blocks |
| after resolving constant expressions. |
| (CodeBecomes): Guard IsVariableSSA with IsVar. |
| * gm2-compiler/M2GenGCC.def (ResolveConstantExpressions): New |
| parameter declaration. |
| * gm2-compiler/M2GenGCC.mod (FoldIfLess): Remove relop pattern |
| detection. |
| (FoldIfGre): Ditto. |
| (FoldIfLessEqu): Ditto. |
| (FoldIfGreEqu): Ditto. |
| (FoldIfIn): Ditto. |
| (FoldIfNotIn): Ditto. |
| (FoldIfEqu): Ditto. |
| (FoldIfNotEqu): Ditto. |
| (FoldBecomes): Add BasicBlock parameter and allow conditional |
| boolean becomes to be folded in the first basic block. |
| (ResolveConstantExpressions): Reimplement. |
| * gm2-compiler/M2Quads.def (IsConstQuad): New procedure function. |
| (IsConditionalBooleanQuad): Ditto. |
| * gm2-compiler/M2Quads.mod (IsConstQuad): Implement new procedure function. |
| (IsConditionalBooleanQuad): Ditto. |
| (MoveWithMode): Use GenQuadOTypetok. |
| (IsInitialisingConst): Rewrite using OpUsesOp1. |
| (OpUsesOp1): New procedure function. |
| (doBuildAssignment): Mark des as a VarConditional. |
| (ConvertBooleanToVariable): Call PutVarConditional. |
| (DumpQuadSummary): New procedure. |
| (BuildRelOpFromBoolean): Updated debugging and improved comments. |
| (BuildRelOp): Only call BuildRelOpFromBoolean if we are in a const |
| expression and both operands are boolean relops. |
| (GenQuadOTypeUniquetok): New procedure. |
| (BackPatch): Correct comment. |
| * gm2-compiler/SymbolTable.def (PutVarConditional): New procedure. |
| (IsVarConditional): New procedure function. |
| * gm2-compiler/SymbolTable.mod (PutVarConditional): Implement new |
| procedure. |
| (IsVarConditional): Implement new procedure function. |
| (SymConstVar): New field IsConditional. |
| (SymVar): New field IsConditional. |
| (MakeVar): Initialize IsConditional field. |
| (MakeConstVar): Initialize IsConditional field. |
| * gm2-compiler/M2Swig.mod (DoBasicBlock): Change parameters to |
| use BasicBlock. |
| * gm2-compiler/M2Code.mod (SecondDeclareAndOptimize): Use iterator |
| to FoldConstants over basic block list. |
| * gm2-compiler/M2SymInit.mod (AppendEntry): Replace parameters |
| with BasicBlock. |
| * gm2-compiler/P3Build.bnf (Relation): Call RecordOp for #, <> and =. |
| |
| 2024-06-17 Kewen Lin <linkw@linux.ibm.com> |
| |
| * gm2-gcc/m2type.cc (build_m2_short_real_node): Adjust assertion with |
| TYPE_SIZE check. |
| (build_m2_real_node): Likewise. |
| (build_m2_long_real_node): Add assertion with TYPE_SIZE check. |
| |
| 2024-06-11 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114529 |
| * Make-lang.in (MC_EXTENDED_OPAQUE): Assign to nothing. |
| * Make-maintainer.in (mc-basetest): New rule. |
| (mc-devel-basetest): New rule. |
| (mc-clean): Remove mc. |
| (m2/mc-boot-gen/$(SRC_PREFIX)decl.cc): Replace --extended-opaque |
| with $(EXTENDED_OPAQUE). |
| (PG-SRC): Move define before generic rules. |
| (PGE-DEF): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)%.h): New rule. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)libc.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)mcrts.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)UnixArgs.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)Selective.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)termios.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)SysExceptions.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)ldtoa.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)wrapc.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)SYSTEM.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)errno.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)M2RTS.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)SymbolKey.h): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)SymbolKey.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)NameKey.h): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)NameKey.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)Lists.h): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)Lists.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)Output.h): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)bnflex.h): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)bnflex.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)RTco.h): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)RTentity.h): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)RTco.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)RTentity.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)%.o): Ditto. |
| (m2/ppg$(exeext)): Ditto. |
| (m2/gm2-ppg-boot/main.o): Ditto. |
| (m2/gm2-auto): Ditto. |
| (c-family/m2pp.o): Ditto. |
| (BUILD-BOOT-PG-H): Correct macro definition. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)%.h): New rule. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)NameKey.h): Ditto. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)NameKey.o): Ditto. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)Lists.h): Ditto. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)Lists.o): Ditto. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)Output.h): Ditto. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)Output.o): Ditto. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)bnflex.h): Ditto. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)bnflex.o): Ditto. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)RTco.h): Ditto. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)RTentity.h): Ditto. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)RTco.o): Ditto. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)RTentity.o): Ditto. |
| (BUILD-BOOT-PGE-H): Correct macro definition. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)SymbolKey.h): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)SymbolKey.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)NameKey.h): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)NameKey.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)Lists.h): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)Lists.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)Output.h): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)Output.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)bnflex.h): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)bnflex.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)RTco.h): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)RTentity.h): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)RTco.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)RTentity.o): Ditto. |
| (mc-basetest): Ditto. |
| (mc-devel-basetest): Ditto. |
| * gm2-compiler/M2Options.def (SetM2Dump): Add BOOLEAN return. |
| * gm2-compiler/M2Quads.def (BuildAlignment): Add tokno parameter. |
| (BuildBitLength): Ditto. |
| * gm2-compiler/P3Build.bnf (ByteAlignment): Move tokpos assignment |
| to the start of the block. |
| * gm2-compiler/PCBuild.bnf (ConstSetOrQualidentOrFunction): Ditto. |
| (SetOrDesignatorOrFunction): Ditto. |
| * gm2-compiler/PHBuild.bnf (ConstSetOrQualidentOrFunction): Ditto. |
| (SetOrDesignatorOrFunction): Ditto. |
| (ByteAlignment): Ditto. |
| * gm2-libs/dtoa.def (dtoa): Change mode to INTEGER. |
| * gm2-libs/ldtoa.def (ldtoa): Ditto. |
| * mc-boot-ch/GSYSTEM.c (_M2_SYSTEM_init): Correct parameter list. |
| (_M2_SYSTEM_fini): Ditto. |
| * mc-boot-ch/Gdtoa.cc (dtoa_calcsign): Return bool. |
| (dtoa_dtoa): Return void * and use bool in the fifth parameter. |
| (_M2_dtoa_init): Correct parameter list. |
| (_M2_dtoa_fini): Ditto. |
| * mc-boot-ch/Gerrno.cc (_M2_errno_init): Ditto. |
| (_M2_errno_fini): Ditto. |
| * mc-boot-ch/Gldtoa.cc (dtoa_calcsign): Return bool. |
| (ldtoa_ldtoa): Return void * and use bool in the fifth parameter. |
| (_M2_ldtoa_init): Correct parameter list. |
| (_M2_ldtoa_fini): Ditto. |
| * mc-boot-ch/Glibc.c (tracedb_zresult): New function. |
| (libc_read): Return size_t and use size_t in parameter three. |
| (libc_write): Return size_t and use size_t in parameter three. |
| (libc_printf): Add const to the format specifier. |
| Change declaration of c to use const. |
| (libc_snprintf): Add const to the format specifier. |
| Change declaration of c to use const. |
| (libc_malloc): Use size_t. |
| (libc_memcpy): Ditto. |
| * mc-boot/GASCII.cc: Regenerate. |
| * mc-boot/GArgs.cc: Ditto. |
| * mc-boot/GAssertion.cc: Ditto. |
| * mc-boot/GBreak.cc: Ditto. |
| * mc-boot/GCmdArgs.cc: Ditto. |
| * mc-boot/GDebug.cc: Ditto. |
| * mc-boot/GDynamicStrings.cc: Ditto. |
| * mc-boot/GEnvironment.cc: Ditto. |
| * mc-boot/GFIO.cc: Ditto. |
| * mc-boot/GFormatStrings.cc: Ditto. |
| * mc-boot/GFpuIO.cc: Ditto. |
| * mc-boot/GIO.cc: Ditto. |
| * mc-boot/GIndexing.cc: Ditto. |
| * mc-boot/GM2Dependent.cc: Ditto. |
| * mc-boot/GM2EXCEPTION.cc: Ditto. |
| * mc-boot/GM2RTS.cc: Ditto. |
| * mc-boot/GMemUtils.cc: Ditto. |
| * mc-boot/GNumberIO.cc: Ditto. |
| * mc-boot/GPushBackInput.cc: Ditto. |
| * mc-boot/GRTExceptions.cc: Ditto. |
| * mc-boot/GRTint.cc: Ditto. |
| * mc-boot/GSArgs.cc: Ditto. |
| * mc-boot/GSFIO.cc: Ditto. |
| * mc-boot/GStdIO.cc: Ditto. |
| * mc-boot/GStorage.cc: Ditto. |
| * mc-boot/GStrCase.cc: Ditto. |
| * mc-boot/GStrIO.cc: Ditto. |
| * mc-boot/GStrLib.cc: Ditto. |
| * mc-boot/GStringConvert.cc: Ditto. |
| * mc-boot/GSysStorage.cc: Ditto. |
| * mc-boot/GTimeString.cc: Ditto. |
| * mc-boot/Galists.cc: Ditto. |
| * mc-boot/Gdecl.cc: Ditto. |
| * mc-boot/Gkeyc.cc: Ditto. |
| * mc-boot/Glists.cc: Ditto. |
| * mc-boot/GmcComment.cc: Ditto. |
| * mc-boot/GmcComp.cc: Ditto. |
| * mc-boot/GmcDebug.cc: Ditto. |
| * mc-boot/GmcError.cc: Ditto. |
| * mc-boot/GmcFileName.cc: Ditto. |
| * mc-boot/GmcLexBuf.cc: Ditto. |
| * mc-boot/GmcMetaError.cc: Ditto. |
| * mc-boot/GmcOptions.cc: Ditto. |
| * mc-boot/GmcPreprocess.cc: Ditto. |
| * mc-boot/GmcPretty.cc: Ditto. |
| * mc-boot/GmcPrintf.cc: Ditto. |
| * mc-boot/GmcQuiet.cc: Ditto. |
| * mc-boot/GmcReserved.cc: Ditto. |
| * mc-boot/GmcSearch.cc: Ditto. |
| * mc-boot/GmcStack.cc: Ditto. |
| * mc-boot/GmcStream.cc: Ditto. |
| * mc-boot/Gmcp1.cc: Ditto. |
| * mc-boot/Gmcp2.cc: Ditto. |
| * mc-boot/Gmcp3.cc: Ditto. |
| * mc-boot/Gmcp4.cc: Ditto. |
| * mc-boot/Gmcp5.cc: Ditto. |
| * mc-boot/GnameKey.cc: Ditto. |
| * mc-boot/GsymbolKey.cc: Ditto. |
| * mc-boot/Gvarargs.cc: Ditto. |
| * mc-boot/Gwlists.cc: Ditto. |
| * mc-boot/Gdecl.h: Ditto. |
| * mc-boot/Gldtoa.h: Ditto. |
| * mc-boot/Glibc.h: Ditto. |
| * mc/decl.def (putTypeOpaque): New procedure. |
| (isTypeOpaque): New procedure function. |
| * mc/decl.mod (debugOpaque): New constant. |
| (nodeT): New enumeration field opaquecast. |
| (node): New record field opaquecastF. |
| (opaqueCastState): New record. |
| (opaquecastT): New record. |
| (typeT): New field isOpaque. |
| (varT): New field opaqueState. |
| (arrayT): Ditto. |
| (varparamT): Ditto. |
| (paramT): Ditto. |
| (pointerT): Ditto. |
| (recordfieldT): Ditto. |
| (componentrefT): Ditto. |
| (pointerrefT): Ditto. |
| (arrayrefT): Ditto. |
| (procedureT): Ditto. |
| (proctypeT): Ditto. |
| (makeType): Initialize field isOpaque. |
| (makeTypeImp): Initialize field isOpaque. |
| (putVar): Call initNodeOpaqueCastState. |
| (putReturnType): Ditto. |
| (makeProcType): Ditto. |
| (putProcTypeReturn): Ditto. |
| (makeVarParameter): Ditto. |
| (makeNonVarParameter): Ditto. |
| (makeFuncCall): Ditto. |
| (putTypeOpaque): New procedure. |
| (isTypeOpaque): New procedure function. |
| (doMakeComponentRef): Call initNodeOpaqueCastState. |
| (makePointerRef): Call initNodeOpaqueCastState. |
| (doGetFuncType): Call initNodeOpaqueCastState. |
| (doBinary): Add FALSE parameter to doExprCup. |
| (doDeRefC): Rewrite. |
| (doComponentRefC): Call flushOpaque. |
| (doPointerRefC): Call flushOpaque. |
| (doArrayRefC): Add const_cast for unbounded array. |
| (doExprCup): Rewrite. |
| (doTypeAliasC): Remove. |
| (isDeclType): New procedure function. |
| (doEnumerationC): New procedure function. |
| (doParamTypeEmit): Ditto. |
| (doParamTypeNameModifier): Ditto. |
| (initOpaqueCastState): Ditto. |
| (initNodeOpaqueCastState): Ditto. |
| (setOpaqueCastState): Ditto. |
| (setNodeOpaqueVoidStar): Ditto. |
| (nodeUsesOpaque): Ditto. |
| (getNodeOpaqueVoidStar): Ditto. |
| (getOpaqueFlushNecessary): Ditto. |
| (makeOpaqueCast): Ditto. |
| (flushOpaque): Ditto. |
| (castOpaque): Ditto. |
| (isTypeOpaqueDefImp): Ditto. |
| (isParamVoidStar): Ditto. |
| (isRefVoidStar): Ditto. |
| (isReturnVoidStar): Ditto. |
| (isVarVoidStar): Ditto. |
| (initNodeOpaqueState): Ditto. |
| (assignNodeOpaqueCastState): Ditto. |
| (assignNodeOpaqueCastFalse): Ditto. |
| (dumpOpaqueState): Ditto. |
| (doProcTypeC): Rewrite. |
| (isDeclInImp): New procedure function. |
| (doTypeNameModifier): Ditto. |
| (doTypeC): Emit typedef if enum is declared in this module. |
| (doCompletePartialProcType): Rewrite. |
| (outputCompletePartialProcType): New procedure. |
| (doOpaqueModifier): Ditto. |
| (doVarC): Ditto. |
| (doProcedureHeadingC): Add opaque modifier to return type if |
| necessary. |
| (doReturnC): Cast opaque type for return if necessary. |
| (forceCastOpaque): New procedure. |
| (forceReintCastOpaque): New procedure. |
| (doUnConstCastUnbounded): New procedure. |
| (doAssignmentC): Cast opaque for both des and expr if necessary. |
| (doAdrExprC): Use static_cast for void * casting. |
| (doFuncVarParam): New procedure. |
| (doFuncParamC): Rewrite. |
| (doAdrArgC): Rewrite. |
| (getFunction): New procedure function. |
| (stop): Rename to ... |
| (localstop): ... this. |
| (dupFunccall): Call assignNodeOpaqueCastState. |
| (dbg): Rewrite. |
| (addDone): Rewrite. |
| (addDoneDef): Do not add opaque types to the doneQ when declared in |
| the definition module. |
| * mc/mc.flex (openSource): Return bool. |
| (_M2_mcflex_init): Correct parameter list. |
| (_M2_mcflex_fini): Ditto. |
| * mc/mcComment.h (stdbool.h): Include. |
| (mcComment_initComment): Change unsigned int to bool. |
| * mc/mcOptions.mod (handleOption): Disable --extended-opaque |
| and issue warning. |
| * mc/mcp1.bnf (DefTypeDeclaration): Call putTypeOpaque. |
| |
| 2024-06-06 Gaius Mulley <gaiusmod2@gmail.com> |
| Kewen.Lin <linkw@linux.ibm.com> |
| |
| * gm2-gcc/m2type.cc (build_m2_short_real_node): Rewrite |
| to use the default float_type_node. |
| (build_m2_real_node): Rewrite to use the default |
| double_type_node. |
| (build_m2_long_real_node): Rewrite to use the default |
| long_double_type_node or float128_type_node. |
| |
| 2024-05-21 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (MC_EXTENDED_OPAQUE): New definition. |
| * mc-boot/GDynamicStrings.cc: Rebuild. |
| * mc-boot/GDynamicStrings.h: Rebuild. |
| * mc-boot/Galists.cc: Rebuild. |
| * mc-boot/Galists.h: Rebuild. |
| * mc-boot/Gdecl.cc: Rebuild. |
| * mc/alists.def (equalList): New procedure. |
| * mc/alists.mod (equalList): New procedure implementation. |
| * mc/decl.mod (group): New type. |
| (freeGroup): New variable. |
| (globalGroup): Ditto. |
| (todoQ): Remove declaration and prefix all occurances with globalGroup^. |
| (partialQ): Ditto. |
| (doneQ): Ditto. |
| (newGroup): New procedure. |
| (initGroup): Ditto. |
| (killGroup): Ditto. |
| (dupGroup): Ditto. |
| (equalGroup): Ditto. |
| (topologicallyOut): Rewrite. |
| |
| 2024-05-21 Sam James <sam@gentoo.org> |
| |
| * Make-lang.in (m2.install-info): Pass --destdir for dir index. |
| |
| 2024-05-15 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/115057 |
| * gm2-libs-iso/TextIO.mod (ReadRestLine): Use ReadChar to |
| skip unwanted characters as this calls IOChan.Look and updates |
| the cid result status. A Skip without a Look does not update |
| the status. Skip always sets read result to allRight. |
| * gm2-libs-iso/TextUtil.def (SkipSpaces): Improve comments. |
| (CharAvailable): Improve comments. |
| * gm2-libs-iso/TextUtil.mod (SkipSpaces): Improve comments. |
| (CharAvailable): Improve comments. |
| |
| 2024-05-09 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/115003 |
| * gm2-compiler/SymbolTable.mod (GetScope): Add UndefinedSym |
| case clause and return NulSym. |
| |
| 2024-05-03 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114929 |
| * gm2-compiler/M2LangDump.mod (GenQualidentSymString): Add |
| missing return result into identstr. |
| * gm2-compiler/M2Quads.mod (ForLoopLastIteratorVariable): New |
| procedure. |
| (ForLoopLastIteratorConstant): Ditto. |
| (ForLoopLastIterator): Ditto. |
| (BuildForToByDo): Remove LastIterator calculation and call |
| ForLoopLastIterator instead. |
| (FinalValue): Replace with ... |
| (LastIterator): ... this. |
| |
| 2024-05-02 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/113836 |
| * gm2-compiler/M2AsmUtil.def: Remove export qualified and |
| unused import. |
| * gm2-compiler/M2LangDump.mod (AddRuleTextDump): New procedure. |
| (AddRuleScopeQualidentDump): Add warning check against unmatched |
| rule. |
| (GenQualidentSymString): New procedure function. |
| (IdentQualidentMatch): New procedure function. |
| (IsRuleFilenameMatch): New procedure function. |
| (CheckRuleMatch): New procedure function. |
| (AddRuleFilenameDump): New procedure function. |
| * gm2-gcc/m2misc.cc (m2misc_warning_m2_dump_filter): New function. |
| * gm2-gcc/m2misc.def (warning_m2_dump_filter): New procedure. |
| * gm2-gcc/m2misc.h (m2misc_warning_m2_dump_filter): New prototype. |
| * gm2-gcc/m2pp.cc (VERBOSE_TYPE_DESC): New define. |
| (m2pp_identifier): Define out verbose type info. |
| (m2pp_constructor): Define out verbose type info. |
| (m2pp_assignment): Define out verbose type info. |
| * gm2-lang.cc (ENABLE_M2DUMP_ALL): Remove. |
| * lang.opt (fm2-dump): Add. |
| (fm2-dump-decl=): Add. |
| (fm2-dump-gimple=): Add. |
| (fm2-dump-quad=): Add. |
| (fm2-dump-filter=): Add. |
| |
| 2024-04-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114836 |
| * gm2-compiler/M2Range.mod (FoldTypeAssign): Avoid error |
| string concatenation. |
| |
| 2024-04-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2FileName.def (CalculateFileName): Remove |
| quoted string in comment. |
| * gm2-compiler/M2Range.mod (FoldTypeParam): Generate dialect |
| specific parameter incompatibility error message. |
| |
| 2024-04-23 Jakub Jelinek <jakub@redhat.com> |
| |
| * lang.opt (fdef=, fmod=): Spelling fix: recognise -> recognize. |
| |
| 2024-04-23 Jakub Jelinek <jakub@redhat.com> |
| |
| * lang.opt (fuse-list=): Spelling fix: finalializations -> |
| finalizations. |
| |
| 2024-04-22 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114811 |
| * gm2-compiler/M2GenGCC.mod (FoldBinarySet): Add condition |
| checking to ensure op2 and op3 are fully resolved before |
| type checking is performed. |
| |
| 2024-04-22 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114807 |
| * gm2-compiler/M2Check.mod (checkUnbounded): Remove unused |
| local variables. |
| (constCheckMeta): Include check for IsReallyPointer in the |
| failure case. |
| * gm2-compiler/M2Quads.mod (MoveWithMode): Remove CopyConstString. |
| * gm2-compiler/SymbolTable.def (IsHiddenReallyPointer): Export. |
| * gm2-compiler/SymbolTable.mod (SkipHiddenType): Remove. |
| (IsReallyPointer): Include IsHiddenReallyPointer test. |
| |
| 2024-04-20 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/112893 |
| * gm2-compiler/M2Check.mod (GetProcedureProcType): Import. |
| (getType): Return value using GetProcedureProcType if sym is a |
| procedure. |
| * gm2-compiler/M2Range.mod (FoldTypeExpr): Remove quad if |
| expression is type compatible. |
| * gm2-compiler/SymbolTable.def (GetProcedureProcType): New |
| procedure function. |
| * gm2-compiler/SymbolTable.mod (Procedure): Add ProcedureType. |
| (MakeProcedure): Initialize ProcedureType. |
| (PutParam): Call AddProcedureProcTypeParam. |
| (PutVarParam): Call AddProcedureProcTypeParam. |
| (AddProcedureProcTypeParam): New procedure. |
| (GetProcedureProcType): New procedure function. |
| |
| 2024-04-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114745 |
| * gm2-compiler/M2Code.mod (DumpLangDecl): Replace with ... |
| (GetDumpDecl): ... this. |
| (DumpLangGimple): Replace with ... |
| (GetDumpGimple): ... this. |
| * gm2-compiler/M2GenGCC.mod: |
| * gm2-compiler/M2LangDump.mod (GetDumpLangQuadFilename): Replace with ... |
| (GetDumpQuadFilename): ... this. |
| (GetDumpLangDeclFilename): Replace with ... |
| (GetDumpDeclFilename): ... this. |
| (GetDumpLangGimpleFilename): Replace with ... |
| (GetDumpGimpleFilename): ... this. |
| * gm2-compiler/M2Options.def (GetDumpLangDeclFilename): New |
| procedure function. |
| (GetDumpDeclFilename): Ditto. |
| (SetDumpLangDeclFilename): New procedure. |
| (SetDumpDeclFilename): Ditto. |
| (GetDumpLangQuadFilename): New procedure function. |
| (GetDumpQuadFilename): Ditto |
| (SetDumpLangQuadFilename): New procedure. |
| (SetDumpQuadFilename): Ditto. |
| (GetDumpLangGimpleFilename): New procedure function. |
| (GetDumpGimpleFilename): Ditto. |
| (SetDumpLangGimpleFilename): New procedure. |
| (SetDumpGimpleFilename): Ditto. |
| (GetDumpLangGimple): New procedure function. |
| (SetM2Dump): New procedure. |
| (GetDumpGimple): New procedure function. |
| (GetDumpQuad): Ditto. |
| (GetDumpDecl): Ditto. |
| * gm2-compiler/M2Options.mod (DumpLangDeclFilename): Remove. |
| (DumpLangQuadFilename): Ditto. |
| (DumpLangGimpleFilename): Ditto. |
| (DumpDeclFilename): New variable. |
| (DumpQuadFilename): Ditto. |
| (DumpGimpleFilename): Ditto. |
| (DebugTraceTree): New variable. |
| (SetQuadDebugging): Rewrite. |
| (GetDumpLangDeclFilename): Replace with ... |
| (GetDumpDeclFilename): ... this. |
| (SetDumpLangQuadFilename): Replace with ... |
| (SetDumpQuadFilename): ... this. |
| (GetDumpLangGimpleFilename): Replace with ... |
| (GetDumpGimpleFilename): ... this. |
| (SetDumpLangGimpleFilename): Replace with ... |
| (SetDumpGimpleFilename): ... this. |
| (GetDumpLangGimple): Remove. |
| (MatchDump): New procedure function. |
| (SetM2Dump): New procedure. |
| (GetDumpGimple): New procedure function. |
| (GetDumpQuad): Ditto. |
| (GetDumpDecl): Ditto. |
| (GetDumpLangGimple): Ditto. |
| * gm2-compiler/M2Quads.mod (BreakAtQuad): Assigned to 140. |
| (BuildTypeCoercion): Add ConstExpr parameter. |
| Check for const parameter in a const expression. |
| Create a constant temporary if in a const expression. |
| (BuildCastFunction): Pass ConstExpr to BuildTypeCoercion. |
| (BuildFunctionCall): Pass ConstExpr to BuildTypeCoercion. |
| * gm2-compiler/PCSymBuild.mod (buildConstFunction): Test for Cast |
| and call InitConvert. |
| (ErrorConstFunction): Add CAST to the error message. |
| * gm2-compiler/SymbolTable.mod (GetConstStringContent): Remove |
| unused procedure. |
| * gm2-gcc/m2decl.cc (m2decl_DeclareKnownConstant): Copy value |
| and change type of value. |
| * gm2-gcc/m2options.h (M2Options_GetDumpLangDeclFilename): Remove. |
| (M2Options_SetDumpLangDeclFilename): Ditto. |
| (M2Options_GetDumpLangQuadFilename): Ditto. |
| (M2Options_SetDumpLangQuadFilename): Ditto. |
| (M2Options_GetDumpLangGimpleFilename): Ditto. |
| (M2Options_SetDumpLangGimpleFilename): Ditto. |
| (M2Options_GetDumpLangGimple): Ditto. |
| (M2Options_GetDumpDeclFilename): New function. |
| (M2Options_SetDumpDeclFilename): Ditto. |
| (M2Options_GetDumpQuadFilename): Ditto. |
| (M2Options_SetDumpQuadFilename): Ditto. |
| (M2Options_GetDumpGimpleFilename): Ditto. |
| (M2Options_SetDumpGimpleFilename): Ditto. |
| (M2Options_SetM2Dump): Ditto. |
| (M2Options_GetDumpGimple): Ditto. |
| * gm2-gcc/m2pp.cc (GM2): New define. |
| (m2pp_type_lowlevel): Remove linefeed. |
| (m2pp_identifier): Add type description for const. |
| (m2pp_assignment): Display lhs/rhs types. |
| (m2pp_dump_gimple): Replace GetDumpLangGimple with GetDumpGimple. |
| * gm2-lang.cc (ENABLE_QUAD_DUMP_ALL): Remove. |
| (ENABLE_M2DUMP_ALL): New define. |
| (gm2_langhook_handle_option): Remove commented options |
| OPT_fdump_lang_all, OPT_fdump_lang_decl_, OPT_fdump_lang_gimple, |
| OPT_fdump_lang_gimple_, OPT_fdump_lang_quad and |
| OPT_fdump_lang_quad_. |
| Add commented options OPT_fm2_dump_, OPT_fm2_dump_decl_, |
| OPT_fm2_dump_gimple_ and OPT_fm2_dump_quad_. |
| |
| 2024-04-09 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * tools-src/makeSystem: Invoke ${COMPILER} once and adjust |
| the echo string to expand the shell variables with -wrapper |
| gdb, --args. |
| |
| 2024-04-09 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114648 |
| * gm2-compiler/M2Options.mod (LineDirectives): Initially |
| set to true. |
| |
| 2024-04-06 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114617 |
| * gm2-compiler/M2GenGCC.mod (CodeStatememt): Add quad trace. |
| (ResolveConstantExpressions): Add parameter p to FoldIfLess, |
| FoldIfGre, FoldIfLessEqu, FoldIfGreEqu, FoldIfEqu, FoldIfNotEqu, |
| FoldIfIn and FoldIfNotIn. |
| (CodeInline): Add constExpr variable and pass it to GetQuadOtok. |
| (CodeReturnValue): Ditto. |
| (CodeParam): Ditto. |
| (FoldStringLength): Ditto. |
| (FoldStringConvertM2nul): Ditto. |
| (FoldStringConvertCnul): Ditto. |
| (DeclaredOperandsBecomes): Ditto. |
| (TypeCheckBecomes): Ditto. |
| (PerformFoldBecomes): Ditto. |
| (CodeBecomes): Ditto. |
| (CheckElementSetTypes): Ditto. |
| (CodeBinarySet): Ditto. |
| (PerformCodeIfLess): Ditto. |
| (PerformCodeIfGre): Ditto. |
| (PerformCodeIfLessEqu): Ditto. |
| (PerformCodeIfGreEqu): Ditto. |
| (PerformCodeIfEqu): Ditto. |
| (PerformCodeIfNotEqu): Ditto. |
| (IsValidExpressionRelOp): Ditto. |
| (PerformCodeIfIn): Ditto. |
| (PerformCodeIfNotIn): Ditto. |
| (CodeXIndr): Ditto. |
| (QuadCondition): New procedure function. |
| (IsBooleanRelOpPattern): Ditto. |
| (FoldBooleanRelopPattern): Ditto. |
| (FoldIfGre): Check for boolean relop constant expression and |
| add parameter p. |
| (FoldIfLessEqu): Ditto. |
| (FoldIfIn): Ditto. |
| (FoldIfEqu): Ditto. |
| (FoldIfNotIn): Ditto. |
| (FoldIfGreEqu): New procedure. |
| (FoldIfNotEqu): Ditto. |
| * gm2-compiler/M2Optimize.mod (ReduceBranch): Add constExpr |
| variable and pass it to GetQuadOtok. |
| * gm2-compiler/M2Quads.def (IsBecomes): New procedure function. |
| (IsDummy): Ditto. |
| (IsQuadConstExpr): Ditto. |
| (SetQuadConstExpr): Ditto. |
| (GetQuadDest): New procedure. |
| (GetQuadOp1): New procedure. |
| (GetQuadOp2): New procedure. |
| (GetQuadOp3): New procedure. |
| (GetQuadOtok): New procedure. |
| (GetQuadOTypetok): New procedure. |
| (PutQuadOtok): New procedure. |
| (IsInConstParameters): New procedure function. |
| * gm2-compiler/M2Quads.mod (IsBecomes): New procedure function. |
| (IsDummy): Ditto. |
| (IsQuadConstExpr): Ditto. |
| (SetQuadConstExpr): Ditto. |
| (GetQuadDest): New procedure. |
| (GetQuadOp1): New procedure. |
| (GetQuadOp2): New procedure. |
| (GetQuadOp3): New procedure. |
| (GetQuadOtok): New procedure. |
| (GetQuadOTypetok): New procedure. |
| (PutQuadOtok): New procedure. |
| (IsInConstParameters): New procedure function. |
| (ConstStack): Remove to ... |
| (ConstExprStack): ... this. |
| (ConstParamStack): New variable and initialize. |
| (QuadFrame): New field ConstExpr. |
| (GetQuadOtok): Add parameter constExpr and assign. |
| (PutQuadOtok): Add constExpr parameter and assign. |
| (PutQuadOType): Ditto. |
| (GetQuadOTypetok): Ditto. |
| (EraseQuad): Assign ConstExpr to FALSE. |
| (FoldSubrange): Set ConstExpr to FALSE in BecomesOp. |
| (PushInConstParameters): New procedure. |
| (PopInConstParameters): New procedure. |
| (IsInConstParameters): New procedure function. |
| * gm2-compiler/M2SymInit.mod (IssueConditional): Add |
| constExpr boolean variable. |
| (CheckReadBeforeInitQuad): Ditto. |
| (trashParam): Ditto. |
| * gm2-compiler/P3Build.bnf (ConstExpression): Call |
| PushInConstExpression and PopInConstExpression. |
| (ConstSetOrQualidentOrFunction): Call |
| PushInConstParameters and PopInConstParameters. |
| * gm2-compiler/PCBuild.bnf (ConstExpression): Call |
| PushInConstExpression and PopInConstExpression. |
| * gm2-compiler/PHBuild.bnf: Ditto |
| * gm2-gcc/m2expr.cc (m2expr_BuildCondIfExpression): New |
| function. |
| * gm2-gcc/m2expr.def (BuildCondIfExpression): New prototype. |
| * gm2-gcc/m2expr.h (m2expr_BuildCondIfExpression): New function. |
| |
| 2024-04-05 Christophe Lyon <christophe.lyon@linaro.org> |
| |
| * Make-lang.in (m2.install-dvi): New rule. |
| |
| 2024-04-02 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114565 |
| * gm2-compiler/M2GenGCC.mod (CodeStatement): Test |
| GetDebugTraceQuad before calling DisplayQuad. |
| * gm2-compiler/M2LexBuf.mod (NumberIO): Import CardToStr. |
| (GetToken): Test GetDebugTraceToken before writing the |
| token number or token line. |
| * gm2-compiler/M2Options.def (SetDebugTraceQuad): Rename to |
| (SetM2DebugTraceFilter): ...this. |
| (SetDebugTraceAPI): Remove. |
| (GetDebugTraceQuad): New procedure function. |
| (GetDebugTraceTree): Ditto. |
| (GetDebugTraceToken): Ditto. |
| (GetDebugTraceLine): Ditto. |
| (GetDebugFunctionLineNumbers): Ditto. |
| * gm2-compiler/M2Options.mod (DebugFunctionLineNumbers): New |
| boolean variable. |
| (DebugTraceQuad): Ditto. |
| (DebugTraceTree): Ditto. |
| (DebugTraceLine): Ditto. |
| (DebugTraceToken): Ditto. |
| (errors1): New procedure. |
| (SetDebugTraceQuad): Remove. |
| (SetM2DebugTraceFilter): New procedure implemented. |
| (SetM2DebugTrace): Ditto. |
| (GetDebugTraceQuad): Ditto. |
| (GetDebugTraceToken ): Ditto. |
| (GetDebugTraceLine): Ditto. |
| (SetDebugTraceLine): Remove. |
| * gm2-compiler/M2Quads.mod (GenQuadOTrash): Test |
| GetDebugTraceQuad and call DisplayQuad. |
| (GenQuadOTypetok): Ditto. |
| * gm2-compiler/SymbolTable.mod: Replace |
| DebugFunctionLineNumbers with GetDebugFunctionLineNumbers. |
| * gm2-gcc/init.cc (_M2_M2LangDump_init): Add prototype. |
| (init_PerCompilationInit): Add call. |
| * gm2-gcc/m2misc.cc (m2misc_cerror): New function. |
| (m2misc_error): Ditto. |
| * gm2-gcc/m2misc.def (error): New procedure. |
| (cerror): Ditto. |
| * gm2-gcc/m2misc.h (m2misc_cerror): New prototype. |
| (m2misc_error): Ditto. |
| * gm2-gcc/m2options.h (M2Options_SetDebugTraceQuad): New |
| prototype. |
| (M2Options_SetDebugTraceAPI): Remove. |
| (M2Options_GetDebugTraceToken): New prototype. |
| (M2Options_GetDebugTraceLine): Ditto. |
| (M2Options_SetDebugFunctionLineNumbers): Ditto. |
| (M2Options_GetDebugFunctionLineNumbers): Ditto. |
| (M2Options_SetM2DebugTraceFilter): Ditto. |
| * gm2-lang.cc (gm2_langhook_init_options): Remove |
| OPT_fdebug_trace_quad case. |
| Remove OPT_fdebug_trace_api case. |
| Add OPT_fm2_debug_trace_ case. |
| * lang.opt (fm2-debug-trace): New option. |
| (fdebug-trace-api): Remove. |
| (fdebug-trace-quad): Remove. |
| * m2.flex (m2flex_M2Error): Check s for NULL. |
| (skipnewline): New function. |
| (consumeLine): Call traceline. |
| |
| 2024-04-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114548 |
| * gm2-compiler/M2Quads.mod (ConvertToAddress): Pass |
| procedure, false parameters to BuildConvertFunction. |
| (PushOne): Pass procedure, true parameters to |
| BuildConvertFunction. |
| Remove usused parameter internal. |
| (BuildPseudoBy): Remove parameter to PushOne. |
| (BuildIncProcedure): Ditto. |
| (BuildDecProcedure): Ditto. |
| (BuildFunctionCall): Add ConstExpr parameter to |
| BuildPseudoFunctionCall. |
| (BuildConstFunctionCall): Add procedure and true to |
| BuildConvertFunction. |
| (BuildPseudoFunctionCall): Add ConstExpr parameter. |
| Pass ProcSym and ConstExpr to BuildLengthFunction, |
| BuildConvertFunction, BuildOddFunction, BuildAbsFunction, |
| BuildCapFunction, BuildValFunction, BuildChrFunction, |
| BuildOrdFunction, BuildIntFunction, BuildTruncFunction, |
| BuildFloatFunction, BuildAddAdrFunction, BuildSubAdrFunction, |
| BuildDifAdrFunction, BuildCastFunction, BuildReFunction, |
| BuildImFunction and BuildCmplxFunction. |
| (BuildAddAdrFunction): Add ProcSym, ConstExpr parameters and |
| check for constant parameters. |
| (BuildSubAdrFunction): Ditto. |
| (BuildDifAdrFunction): Ditto. |
| (ConstExprError): Ditto. |
| (BuildLengthFunction): Ditto. |
| (BuildOddFunction): Ditto. |
| (BuildAbsFunction): Ditto. |
| (BuildCapFunction): Ditto. |
| (BuildChrFunction): Ditto. |
| (BuildOrdFunction): Ditto. |
| (BuildIntFunction): Ditto. |
| (BuildValFunction): Ditto. |
| (BuildCastFunction): Ditto. |
| (BuildConvertFunction): Ditto. |
| (BuildTruncFunction): Ditto. |
| (BuildFloatFunction): Ditto. |
| (BuildReFunction): Ditto. |
| (BuildImFunction): Ditto. |
| (BuildCmplxFunction): Ditto. |
| |
| 2024-03-31 Christophe Lyon <christophe.lyon@linaro.org> |
| |
| * Make-lang.in (m2.install-info): Fix rule. |
| |
| 2024-03-31 Christophe Lyon <christophe.lyon@linaro.org> |
| |
| * Make-lang.in (install-html): New rule. |
| |
| 2024-03-28 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114520 |
| * gm2-compiler/P0SyntaxCheck.bnf (DetectImport): New |
| procedure. |
| (EnableImportCheck): New boolean. |
| (Expect): Call DetectImport. |
| (Export): Set EnableImportCheck TRUE before ';' and FALSE |
| afterwards. |
| |
| 2024-03-28 Gaius Mulley <(no_default)> |
| |
| PR modula2/114517 |
| * gm2-compiler/M2Options.def (SetCpp): Add comment. |
| (GetCpp): Move after SetCpp. |
| (GetLineDirectives): New procedure function. |
| * gm2-compiler/M2Options.mod (GetLineDirectives): New |
| procedure function. |
| * gm2-gcc/m2options.h (M2Options_GetLineDirectives): New |
| prototype. |
| * gm2-lang.cc (gm2_langhook_init_options): OPT_fcpp only |
| assert if !value. |
| * m2.flex: Test GetLineDirectives before changing to LINE0 |
| state. |
| |
| 2024-03-28 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * target-independent/m2/Builtins.texi: Rebuilt. |
| * target-independent/m2/gm2-libs.texi: Rebuilt. |
| |
| 2024-03-26 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114478 |
| * gm2-gcc/m2builtins.cc (struct builtin_macro_definition): New struct. |
| (lookup_builtin_macro): New function. |
| (m2builtins_BuildBuiltinTree): Rewrite to lookup builtin function |
| and builtin macro. |
| (lookup_builtin_function): New function. |
| (define_builtin): Rename parameter type to prototype push macro |
| definition to builtin_macros vector. |
| (define_builtin_ext): New function. |
| (define_builtin_math): New function. |
| (m2builtins_init): Add isgreater, isless, isgreaterequal, |
| islessequal, islessgreater, isunordered, isnormal to macro definitions. |
| * gm2-libs/Builtins.def (isgreater): New procedure function. |
| (isgreaterf): Ditto. |
| (isgreaterl): Ditto. |
| (isgreaterequal): Ditto. |
| (isgreaterequalf): Ditto. |
| (isgreaterequall): Ditto. |
| (isless): Ditto. |
| (islessf): Ditto. |
| (islessl): Ditto. |
| (islessequal): Ditto. |
| (islessequalf): Ditto. |
| (islessequall): Ditto. |
| (islessgreater): Ditto. |
| (islessgreaterf): Ditto. |
| (islessgreaterl): Ditto. |
| (isunordered): Ditto. |
| (isunorderedf): Ditto. |
| (isunorderedl): Ditto. |
| (iseqsig): Ditto. |
| (iseqsigf): Ditto. |
| (iseqsigl): Ditto. |
| (isnormal): Ditto. |
| (isnormalf): Ditto. |
| (isnormall): Ditto. |
| (isinf_sign): Ditto. |
| (isinf_signf): Ditto. |
| (isinf_signl): Ditto. |
| * gm2-libs/Builtins.mod (isgreater): New procedure function. |
| (isgreaterf): Ditto. |
| (isgreaterl): Ditto. |
| (isgreaterequal): Ditto. |
| (isgreaterequalf): Ditto. |
| (isgreaterequall): Ditto. |
| (isless): Ditto. |
| (islessf): Ditto. |
| (islessl): Ditto. |
| (islessequal): Ditto. |
| (islessequalf): Ditto. |
| (islessequall): Ditto. |
| (islessgreater): Ditto. |
| (islessgreaterf): Ditto. |
| (islessgreaterl): Ditto. |
| (isunordered): Ditto. |
| (isunorderedf): Ditto. |
| (isunorderedl): Ditto. |
| (iseqsig): Ditto. |
| (iseqsigf): Ditto. |
| (iseqsigl): Ditto. |
| (isnormal): Ditto. |
| (isnormalf): Ditto. |
| (isnormall): Ditto. |
| (isinf_sign): Ditto. |
| (isinf_signf): Ditto. |
| (isinf_signl): Ditto. |
| |
| 2024-03-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (doc/m2.pdf): Add line break. |
| * target-independent/m2/Builtins.texi: Rebuilt. |
| * target-independent/m2/gm2-libs.texi: Rebuilt. |
| |
| 2024-03-23 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114444 |
| * gm2-compiler/M2Quads.mod (BuildTruncFunction): Correct |
| error format specifier. |
| (BuildFloatFunction): Correct error format specifier. |
| |
| 2024-03-23 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114443 |
| * m2.flex: Call AddTokCharStar with a stringtok if |
| end of line is reached without a closing quote. |
| |
| 2024-03-22 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114422 |
| * gm2-compiler/M2Quads.mod (BuildConstructor): Add escape |
| character. |
| |
| 2024-03-21 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/113836 |
| * Make-lang.in (GM2_C_OBJS): Add m2/gm2-gcc/m2pp.o. |
| (m2/m2pp.o): Remove rule. |
| (GM2-COMP-BOOT-DEFS): Add M2LangDump.def. |
| (GM2-COMP-BOOT-MODS): Add M2LangDump.mod. |
| (GM2-GCC-DEFS): Add M2LangDump.def. |
| (GM2-GCC-MODS): Add M2LangDump.mod. |
| * gm2-compiler/M2CaseList.mod (WriteCase): Rewrite. |
| * gm2-compiler/M2Code.mod (DoModuleDeclare): Call |
| DumpFilteredResolver depending upon DumpLangDecl. |
| (DoCodeBlock): Call CreateDumpGimple depending upon |
| DumpLangGimple. |
| (Code): Replace DisplayQuadList blocks with DumpQuadruples. |
| (DisplayQuadsInScope): Remove. |
| (DisplayQuadNumbers): Remove. |
| (CodeBlock): Rewrite. |
| * gm2-compiler/M2GCCDeclare.def (IncludeDumpSymbol): New procedure. |
| (DumpFilteredResolver): New procedure. |
| (DumpFilteredDefinitive): New procedure. |
| * gm2-compiler/M2GCCDeclare.mod (IncludeDumpSymbol): New procedure. |
| (DumpFilteredResolver): New procedure. |
| (DumpFilteredDefinitive): New procedure. |
| (doInclude): Rewrite to use GetDumpFile. |
| (WatchIncludeList): Remove fixed debugging value. |
| (doExclude): Rewrite to use GetDumpFile. |
| (DeclareTypesConstantsProceduresInRange): Remove fixed debugging |
| values. |
| (PreAddModGcc): Rename parameter t as tree. |
| (IncludeGetNth): Rewrite to use GetDumpFile. |
| (IncludeType): Ditto. |
| (IncludeSubscript): Ditto. |
| (PrintLocalSymbol): Ditto. |
| (PrintLocalSymbols): Ditto. |
| (IncludeGetVarient): Ditto. |
| (PrintDeclared): Ditto. |
| (PrintAlignment): Ditto. |
| (PrintDecl): Ditto. |
| (PrintScope): Ditto. |
| (PrintProcedure): Ditto. |
| (PrintSym): Ditto. |
| (PrintSymbol): Ditto. |
| (PrintTerse): Ditto. |
| * gm2-compiler/M2Options.def (GetDumpLangDeclFilename): New |
| procedure function. |
| (SetDumpLangDeclFilename): New procedure. |
| (GetDumpLangQuadFilename): New procedure function. |
| (SetDumpLangQuadFilename): New procedure. |
| (GetDumpLangGimpleFilename): New procedure function. |
| (SetDumpLangGimpleFilename): New procedure. |
| (SetM2DumpFilter): New procedure. |
| (GetM2DumpFilter): New procedure function. |
| (GetDumpLangGimple): New procedure function. |
| * gm2-compiler/M2Options.mod (GetDumpLangDeclFilename): New |
| procedure function. |
| (SetDumpLangDeclFilename): New procedure. |
| (GetDumpLangQuadFilename): New procedure function. |
| (SetDumpLangQuadFilename): New procedure. |
| (GetDumpLangGimpleFilename): New procedure function. |
| (SetDumpLangGimpleFilename): New procedure. |
| (SetM2DumpFilter): New procedure. |
| (GetM2DumpFilter): New procedure function. |
| (GetDumpLangGimple): New procedure function. |
| * gm2-compiler/M2Quads.def (DumpQuadruples): New procedure. |
| * gm2-compiler/M2Quads.mod (DumpUntil): New procedure. |
| (GetCtorInit): New procedure function. |
| (GetCtorFini): New procedure function. |
| (DumpQuadrupleFilter): New procedure function. |
| (DumpQuadrupleAll): New procedure. |
| (DisplayQuadList): Remove procedure. |
| (DumpQuadruples): New procedure. |
| (DisplayQuadRange): Rewrite. |
| (DisplayQuad): Ditto. |
| (DisplayProcedureAttributes): Ditto. |
| (WriteOperator): Ditto. |
| (WriteMode): Ditto. |
| * gm2-compiler/M2Scope.mod (ForeachScopeBlockDo2): Replace |
| DisplayQuadruples with TraceQuadruples. |
| (ForeachScopeBlockDo3): Replace DisplayQuadruples with |
| TraceQuadruples. |
| * gm2-compiler/SymbolConversion.def (Gcc2Mod): New procedure function. |
| * gm2-compiler/SymbolConversion.mod: New procedure function. |
| * gm2-gcc/m2misc.cc (m2misc_DebugTree): New function. |
| (m2misc_DebugTreeChain): New function. |
| * gm2-gcc/m2options.h (M2Options_GetDumpLangDeclFilename): New |
| prototype. |
| (M2Options_SetDumpLangDeclFilename): New prototype. |
| (M2Options_GetDumpLangQuadFilename): New prototype. |
| (M2Options_SetDumpLangQuadFilename): New prototype. |
| (M2Options_GetDumpLangGimpleFilename): New prototype. |
| (M2Options_SetDumpLangGimpleFilename): New prototype. |
| (M2Options_GetDumpLangGimple): New prototype. |
| (M2Options_SetM2DumpFilter): New prototype. |
| (M2Options_GetM2DumpFilter): New prototype. |
| * m2pp.cc: Move to... |
| * gm2-gcc/m2pp.cc: ...here. |
| * m2pp.h: Move to... |
| * gm2-gcc/m2pp.h: ...here. |
| * gm2-gcc/m2statement.cc (m2statement_BuildEndFunctionCode): Call |
| m2pp_dump_gimple. |
| * gm2-lang.cc (ENABLE_QUAD_DUMP_ALL): New define. |
| (gm2_langhook_init_options): Add switch cases for proposed new |
| command line options. |
| * gm2-libs/DynamicStrings.def (ReverseIndex): New procedure |
| function. |
| * gm2-libs/DynamicStrings.mod: New procedure function. |
| * gm2-compiler/M2LangDump.def: New file. |
| * gm2-compiler/M2LangDump.mod: New file. |
| * gm2-gcc/m2langdump.h: New file. |
| * gm2-gcc/m2pp.def: New file. |
| |
| 2024-03-21 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114418 |
| * gm2-compiler/PCSymBuild.mod (PushConstFunctionType): Check |
| func against NulSym and issue an error. |
| |
| 2024-03-18 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114380 |
| * gm2-compiler/SymbolTable.mod (GetLowestType): Do not |
| skip over a set type, but return sym. |
| |
| 2024-03-17 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114296 |
| * gm2-compiler/M2ALU.mod (ElementsSolved): Add tokenno parameter. |
| Add constant checks and generate error messages. |
| (EvalSetValues): Pass tokenno parameter to ElementsSolved. |
| * gm2-compiler/M2LexBuf.mod (stop): New procedure. |
| (MakeVirtualTok): Call stop if caret = BadTokenNo. |
| * gm2-compiler/M2Quads.def (BuildNulExpression): Add tokpos |
| parameter. |
| (BuildSetStart): Ditto. |
| (BuildEmptySet): Ditto. |
| (BuildConstructorEnd): Add startpos parameter. |
| (BuildTypeForConstructor): Add tokpos parameter. |
| * gm2-compiler/M2Quads.mod (BuildNulExpression): Add tokpos |
| parameter and push tokpos to the quad stack. |
| (BuildSetStart): Add tokpos parameter and push tokpos. |
| (BuildSetEnd): Rewrite. |
| (BuildEmptySet): Add tokpos parameter and push tokpos with |
| the set type. |
| (BuildConstructorStart): Pop typepos. |
| (BuildConstructorEnd): Add startpos parameter. |
| Create valtok from startpos and cbratokpos. |
| (BuildTypeForConstructor): Add tokpos parameter. |
| * gm2-compiler/M2Range.def (InitAssignmentRangeCheck): Rename |
| d to des and e to expr. |
| Add destok and exprtok parameters. |
| * gm2-compiler/M2Range.mod (InitAssignmentRangeCheck): Rename |
| d to des and e to expr. |
| Add destok and exprtok parameters. |
| Save destok and exprtok into range record. |
| (FoldAssignment): Pass exprtok to TryDeclareConstant. |
| * gm2-compiler/P3Build.bnf (ComponentValue): Rewrite. |
| (Constructor): Rewrite. |
| (ConstSetOrQualidentOrFunction): Rewrite. |
| (SetOrQualidentOrFunction): Rewrite. |
| * gm2-compiler/PCBuild.bnf (ConstSetOrQualidentOrFunction): Rewrite. |
| (SetOrQualidentOrFunction): Rewrite. |
| * gm2-compiler/PHBuild.bnf (Constructor): Rewrite. |
| (ConstSetOrQualidentOrFunction): Rewrite. |
| |
| 2024-03-14 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114294 |
| * gm2-compiler/M2Quads.mod (BuildConstHighFromSym): |
| Call PutConst to assign the type Cardinal in the result |
| constant. |
| |
| 2024-03-14 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114333 |
| * gm2-compiler/M2GenGCC.mod (CodeStatement): Remove op1, op2 and |
| op3 parameters to CodeIfLess, CodeIfLessEqu, CodeIfGreEqu, CodeIfGre, |
| CodeIfIn, CodeIfNotIn. |
| (CodeIfLess): Rewrite. |
| (PerformCodeIfLess): New procedure. |
| (CodeIfLess): Rewrite. |
| (PerformCodeIfLess): New procedure. |
| (CodeIfLessEqu): Rewrite. |
| (PerformCodeIfLessEqu): New procedure. |
| (CodeIfGreEqu): Rewrite. |
| (PerformCodeIfGreEqu): New procedure. |
| (CodeIfGre): Rewrite. |
| (PerformCodeIfGre): New procedure. |
| (CodeIfIn): Rewrite. |
| (PerformCodeIfIn): New procedure. |
| (CodeIfNotIn): Rewrite. |
| (PerformCodeIfNotIn): New procedure. |
| |
| 2024-03-14 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114333 |
| * gm2-compiler/M2Check.mod (checkUnbounded): New procedure |
| function. |
| (checkArrayTypeEquivalence): Extend checking to cover unbounded |
| arrays, arrays and constants. |
| (IsTyped): Simplified the expression and corrected a test for |
| IsConstructor. |
| (checkTypeKindViolation): New procedure function. |
| (doCheckPair): Call checkTypeKindViolation. |
| * gm2-compiler/M2GenGCC.mod (CodeStatement): Remove parameters |
| to CodeEqu and CodeNotEqu. |
| (PerformCodeIfEqu): New procedure. |
| (CodeIfEqu): Rewrite. |
| (PerformCodeIfNotEqu): New procedure. |
| (CodeIfNotEqu): Rewrite. |
| * gm2-compiler/M2Quads.mod (BuildRelOpFromBoolean): Correct |
| comment. |
| |
| 2024-03-11 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114295 |
| * gm2-compiler/M2Batch.mod (MakeProgramSource): Call PutDeclared |
| if the module is known. |
| (MakeDefinitionSource): Ditto. |
| (MakeImplementationSource): Ditto. |
| * gm2-compiler/M2Comp.mod (ExamineHeader): New procedure. |
| (ExamineCompilationUnit): Rewrite. |
| (PeepInto): Rewrite. |
| * gm2-compiler/M2Error.mod (NewError): Remove default call to |
| GetTokenNo. |
| * gm2-compiler/M2Quads.mod (callRequestDependant): Push tokno with |
| Adr. |
| (BuildStringAdrParam): Ditto. |
| (doBuildBinaryOp): Push OperatorPos on the bool stack. |
| (BuildRelOp): Ditto. |
| * gm2-compiler/P2Build.bnf (SetType): Pass set token pos to |
| BuildSetType. |
| (PointerType): Pass pointer token pos to BuildPointerType. |
| * gm2-compiler/P2SymBuild.def (BuildPointerType): Add parameter |
| pointerpos. |
| (BuildSetType): Add parameter setpos. |
| * gm2-compiler/P2SymBuild.mod (BuildPointerType): Add parameter |
| pointerpos. Build combined token and use it when creating a |
| pointer type. |
| (BuildSetType): Add parameter setpos. Build combined token and |
| use it when creating a set type. |
| * gm2-compiler/SymbolTable.mod (DebugUnknownToken): New constant. |
| (CheckTok): New procedure function. |
| (MakeProcedure): Call CheckTok. |
| (MakeRecord): Ditto. |
| (MakeVarient): Ditto. |
| (MakeEnumeration): Ditto. |
| (MakeHiddenType): Ditto. |
| (MakeConstant): Ditto. |
| (MakeConstStringCnul): Ditto. |
| (MakeSubrange): Ditto. |
| (MakeTemporary): Ditto. |
| (MakeVariableForParam): Ditto. |
| (MakeParameterHeapVar): Ditto. |
| (MakePointer): Ditto. |
| (MakeSet): Ditto. |
| (MakeUnbounded): Ditto. |
| (MakeProcType): Ditto. |
| |
| 2024-03-08 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Quads.mod (Init): Use InitIndexTuned with |
| default size 65K. |
| * gm2-compiler/SymbolConversion.mod (Init): Ditto. |
| * gm2-compiler/SymbolTable.mod (BEGIN): Ditto. |
| * mc-boot/GM2Dependent.cc: Rebuild. |
| * mc-boot/GM2Dependent.h: Rebuild. |
| * mc-boot/GM2RTS.cc: Rebuild. |
| * pge-boot/GIndexing.cc: Rebuild. |
| * pge-boot/GIndexing.h: Rebuild. |
| * pge-boot/GM2Dependent.cc: Rebuild. |
| * pge-boot/GM2Dependent.h: Rebuild. |
| * pge-boot/GM2RTS.cc: Rebuild. |
| |
| 2024-03-07 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109969 |
| * gm2-compiler/M2LexBuf.def (TokenToLineNo): Rename parameter. |
| (TokenToColumnNo): Rename parameter. |
| (TokenToLocation): Rename parameter. |
| (FindFileNameFromToken): Rename parameter. |
| (DumpTokens): Rewrite comment. |
| * gm2-compiler/M2LexBuf.mod: Rewrite. |
| * gm2-compiler/P0SyntaxCheck.bnf (CheckInsertCandidate): |
| DumpTokens before and after inserting recovery token. |
| * gm2-gcc/m2builtins.cc (do_target_support_exists): Add |
| bf_c99_compl case. |
| * gm2-libs/Indexing.def (InitIndexTuned): New procedure |
| function. |
| (IsEmpty): New procedure function. |
| * gm2-libs/Indexing.mod (InitIndexTuned): New procedure |
| function. |
| (IsEmpty): New procedure function. |
| (Index): New field GrowFactor. |
| (PutIndice): Use GrowFactor to extend dynamic array. |
| |
| 2024-03-04 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114227 |
| * gm2-libs-iso/M2RTS.mod (ProcedureChain): Remove. |
| (ProcedureList): Remove. |
| (ExecuteReverse): Remove. |
| (ExecuteTerminationProcedures): Rewrite. |
| (ExecuteInitialProcedures): Rewrite. |
| (AppendProc): Remove. |
| (InstallTerminationProcedure): Rewrite. |
| (InstallInitialProcedure): Rewrite. |
| (InitProcList): Remove. |
| * gm2-libs/M2Dependent.def (InstallTerminationProcedure): |
| New procedure. |
| (ExecuteTerminationProcedures): New procedure. |
| (InstallInitialProcedure): New procedure. |
| (ExecuteInitialProcedures): New procedure. |
| * gm2-libs/M2Dependent.mod (ProcedureChain): New type. |
| (ProcedureList): New type. |
| (ExecuteReverse): New procedure. |
| (ExecuteTerminationProcedures): New procedure. |
| (ExecuteInitialProcedures): New procedure. |
| (AppendProc): New procedure. |
| (InstallTerminationProcedure): New procedure. |
| (InstallInitialProcedure): New procedure. |
| (InitProcList): New procedure. |
| * gm2-libs/M2RTS.mod (ProcedureChain): Remove. |
| (ProcedureList): Remove. |
| (ExecuteReverse): Remove. |
| (ExecuteTerminationProcedures): Rewrite. |
| (ExecuteInitialProcedures): Rewrite. |
| (AppendProc): Remove. |
| (InstallTerminationProcedure): Rewrite. |
| (InstallInitialProcedure): Rewrite. |
| (InitProcList): Remove. |
| |
| 2024-02-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/113749 |
| * Make-lang.in (BUILD-PGE-O): Add m2/pge-boot/Gwrapc.o. |
| * gm2-libs-ch/wrapc.c (wrapc_SeekSet): New function. |
| (wrapc_SeekEnd): Ditto. |
| (wrapc_ReadOnly): Ditto. |
| (wrapc_WriteOnly): Ditto. |
| * gm2-libs/FIO.mod (SEEK_SET): Remove. |
| (SEEK_END): Remove. |
| (UNIXREADONLY): Remove. |
| (UNIXWRITEONLY): Remove. |
| (ConnectToUnix): Replace UNIXWRITEONLY with a call to WriteOnly. |
| Replace UNIXREADONLY with a call to ReadOnly. |
| (SetPositionFromBeginning): Replace SEEK_SET with a call to |
| SeekSet. |
| (SetPositionFromEnd): Replace SEEK_END with a call to |
| SeekEnd. |
| * gm2-libs/wrapc.def (SeekSet): New procedure function. |
| (SeekEnd): New procedure function. |
| (ReadOnly): New procedure function. |
| (WriteOnly): New procedure function. |
| * mc-boot-ch/Glibc.c (BUILD_MC_LIBC_TRACE): Undef. |
| (check_init): New function. |
| (tracedb): Ditto. |
| (tracedb_open): Ditto. |
| (tracedb_result): Ditto. |
| (libc_read): Ditto. |
| (libc_write): Ditto. |
| (libc_close): Ditto. |
| (libc_creat): Ditto. |
| (libc_open): Ditto. |
| (libc_lseek): Ditto. |
| * mc-boot-ch/Gwrapc.c (wrapc_SeekSet): New function. |
| (wrapc_SeekEnd): Ditto. |
| (wrapc_ReadOnly): Ditto. |
| (wrapc_WriteOnly): Ditto. |
| * mc-boot/GDynamicStrings.cc: Rebuilt. |
| * mc-boot/GFIO.cc: Ditto. |
| * mc-boot/GIndexing.cc: Ditto. |
| * mc-boot/GM2Dependent.cc: Ditto. |
| * mc-boot/GM2EXCEPTION.cc: Ditto. |
| * mc-boot/GPushBackInput.cc: Ditto. |
| * mc-boot/GRTExceptions.cc: Ditto. |
| * mc-boot/GRTint.cc: Ditto. |
| * mc-boot/GSArgs.cc: Ditto. |
| * mc-boot/GStdIO.cc: Ditto. |
| * mc-boot/GStringConvert.cc: Ditto. |
| * mc-boot/GSysStorage.cc: Ditto. |
| * mc-boot/Gdecl.cc: Ditto. |
| * mc-boot/Gkeyc.cc: Ditto. |
| * mc-boot/Glibc.h: Ditto. |
| * mc-boot/GmcComment.cc: Ditto. |
| * mc-boot/GmcComp.cc: Ditto. |
| * mc-boot/GmcDebug.cc: Ditto. |
| * mc-boot/GmcMetaError.cc: Ditto. |
| * mc-boot/GmcStack.cc: Ditto. |
| * mc-boot/GmcStream.cc: Ditto. |
| * mc-boot/GnameKey.cc: Ditto. |
| * mc-boot/GsymbolKey.cc: Ditto. |
| * mc-boot/Gvarargs.cc: Ditto. |
| * mc-boot/Gwrapc.h: Ditto. |
| * mc/decl.mod (getSymName): Add pointerref clause. |
| * mc/mcStream.mod (copy): Check for an error after every read. |
| * mc/varargs.mod (copy): Rewrite pointer arithmetic using INC to |
| avoid type incompatibility. |
| * pge-boot/GDynamicStrings.cc: Rebuilt. |
| * pge-boot/GDynamicStrings.h: Ditto. |
| * pge-boot/GFIO.cc: Ditto. |
| * pge-boot/GFIO.h: Ditto. |
| * pge-boot/GIO.cc: Ditto. |
| * pge-boot/GIndexing.cc: Ditto. |
| * pge-boot/GM2Dependent.cc: Ditto. |
| * pge-boot/GM2EXCEPTION.cc: Ditto. |
| * pge-boot/GNameKey.cc: Ditto. |
| * pge-boot/GPushBackInput.cc: Ditto. |
| * pge-boot/GRTExceptions.cc: Ditto. |
| * pge-boot/GStdIO.cc: Ditto. |
| * pge-boot/GSymbolKey.cc: Ditto. |
| * pge-boot/GSysStorage.cc: Ditto. |
| * pge-boot/Glibc.h: Ditto. |
| * pge-boot/Gwrapc.cc: Ditto. |
| * pge-boot/Gwrapc.h: Ditto. |
| |
| 2024-02-22 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114055 |
| * gm2-compiler/M2Check.mod (Import): IsConstLitInternal and |
| IsConstLit. |
| (isInternal): New procedure function. |
| (doCheck): Test for isInternal in either operand and early |
| return true. |
| * gm2-compiler/M2Quads.mod (PushOne): Rewrite with extra |
| parameter internal. |
| (BuildPseudoBy): Add TRUE parameter to PushOne call. |
| (BuildIncProcedure): Add FALSE parameter to PushOne call. |
| (BuildDecProcedure): Add FALSE parameter to PushOne call. |
| * gm2-compiler/M2Range.mod (ForLoopBeginTypeCompatible): |
| Uncomment code and tidy up error string. |
| * gm2-compiler/SymbolTable.def (PutConstLitInternal): |
| New procedure. |
| (IsConstLitInternal): New procedure function. |
| * gm2-compiler/SymbolTable.mod (PutConstLitInternal): |
| New procedure. |
| (IsConstLitInternal): New procedure function. |
| (SymConstLit): New field IsInternal. |
| (CreateConstLit): Initialize IsInternal to FALSE. |
| |
| 2024-02-21 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/114026 |
| * gm2-compiler/M2GenGCC.mod (Import): Remove DisplayQuadruples. |
| Remove DisplayQuadList. |
| (MixTypesBinary): Replace check with overflowCheck. |
| New variable typeChecking. |
| Use GenQuadOTypetok to retrieve typeChecking. |
| Use typeChecking to suppress error message. |
| * gm2-compiler/M2LexBuf.def (MakeVirtual2Tok): New procedure |
| function. |
| * gm2-compiler/M2LexBuf.mod (MakeVirtualTok): Improve comment. |
| (MakeVirtual2Tok): New procedure function. |
| * gm2-compiler/M2Quads.def (GetQuadOTypetok): New procedure. |
| * gm2-compiler/M2Quads.mod (QuadFrame): New field CheckType. |
| (PutQuadO): Rewrite using PutQuadOType. |
| (PutQuadOType): New procedure. |
| (GetQuadOTypetok): New procedure. |
| (BuildPseudoBy): Rewrite. |
| (BuildForToByDo): Remove type checking. |
| Add parameters e2, e2tok, BySym, bytok to |
| InitForLoopBeginRange. |
| Push the RangeId. |
| (BuildEndFor): Pop the RangeId. |
| Use GenQuadOTypetok to generate AddOp without type checking. |
| Call PutRangeForIncrement with the RangeId and IncQuad. |
| (GenQuadOtok): Rewrite using GenQuadOTypetok. |
| (GenQuadOTypetok): New procedure. |
| * gm2-compiler/M2Range.def (InitForLoopBeginRangeCheck): |
| Rename d as des, e as expr. |
| Add expr1, expr1tok, expr2, expr2tok, byconst, byconsttok |
| parameters. |
| (PutRangeForIncrement): New procedure. |
| * gm2-compiler/M2Range.mod (Import): MakeVirtual2Tok. |
| (Range): Add expr2, byconst, destok, exprtok, expr2tok, |
| incrementquad. |
| (InitRange): Initialize expr2 to NulSym. |
| Initialize byconst to NulSym. |
| Initialize tokenNo, destok, exprtok, expr2tok, byconst to |
| UnknownTokenNo. |
| Initialize incrementquad to 0. |
| (PutRangeForIncrement): New procedure. |
| (PutRangeDesExpr2): New procedure. |
| (InitForLoopBeginRangeCheck): Rewrite. |
| (ForLoopBeginTypeCompatible): New procedure function. |
| (CodeForLoopBegin): Call ForLoopBeginTypeCompatible and |
| only code the for loop assignment if all the type checks |
| succeed. |
| |
| 2024-02-19 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/113889 |
| * gm2-compiler/M2ALU.mod (StringFitsArray): Add tokeno parameter |
| to GetStringLength. |
| (InitialiseArrayOfCharWithString): Add tokeno parameter to |
| GetStringLength. |
| (CheckGetCharFromString): Add tokeno parameter to GetStringLength. |
| * gm2-compiler/M2Const.mod (constResolveViaMeta): Replace |
| PutConstString with PutConstStringKnown. |
| * gm2-compiler/M2GCCDeclare.mod (DeclareCharConstant): Add tokenno |
| parameter and add assert. Use tokenno to generate location. |
| (DeclareStringConstant): Add tokenno and add asserts. |
| Add tokenno parameter to calls to GetStringLength. |
| (PromoteToString): Add assert and add tokenno parameter to |
| GetStringLength. |
| (PromoteToCString): Add assert and add tokenno parameter to |
| GetStringLength. |
| (DeclareConstString): New procedure function. |
| (TryDeclareConst): Remove size local variable. |
| Check IsConstStringKnown. |
| Call DeclareConstString. |
| (PrintString): New procedure. |
| (PrintVerboseFromList): Call PrintString. |
| (CheckResolveSubrange): Check IsConstStringKnown before creating |
| subrange for char or issuing an error. |
| * gm2-compiler/M2GenGCC.mod (ResolveConstantExpressions): Add |
| StringLengthOp, StringConvertM2nulOp, StringConvertCnulOp case |
| clauses. |
| (FindSize): Add assert IsConstStringKnown. |
| (StringToChar): New variable tokenno. |
| Add tokenno parameter to GetStringLength. |
| (FoldStringLength): New procedure. |
| (FoldStringConvertM2nul): New procedure. |
| (FoldStringConvertCnul): New procedure. |
| (CodeAddr): Add tokenno parameter. |
| Replace CurrentQuadToken with tokenno. |
| Add tokenno parameter to GetStringLength. |
| (PrepareCopyString): Rewrite. |
| (IsConstStrKnown): New procedure function. |
| (FoldAdd): Detect conststring op2 and op3 which are known and |
| concat. Place result into op1. |
| (FoldStandardFunction): Pass tokenno as a parameter to |
| GetStringLength. |
| (CodeXIndr): Rewrite comment. |
| Rename op1 to left, op3 to right. |
| Pass rightpos to GetStringLength. |
| * gm2-compiler/M2Quads.def (QuadrupleOp): Add |
| StringConvertCnulOp, StringConvertM2nulOp and StringLengthOp. |
| * gm2-compiler/M2Quads.mod (import): Remove MakeConstLitString. |
| Add CopyConstString and PutConstStringKnown. |
| (IsInitialisingConst): Add StringConvertCnulOp, |
| StringConvertM2nulOp and StringLengthOp. |
| (callRequestDependant): Replace MakeConstLitString with |
| MakeConstString. |
| (DeferMakeConstStringCnul): New procedure function. |
| (DeferMakeConstStringM2nul): New procedure function. |
| (CheckParameter): Add early return if the string const is unknown. |
| (DescribeType): Add token parameter to GetStringLength. |
| Check for IsConstStringKnown. |
| (ManipulateParameters): Use DeferMakeConstStringCnul and |
| DeferMakeConstStringM2nul. |
| (MakeLengthConst): Remove and replace with... |
| (DeferMakeLengthConst): ... this. |
| (doBuildBinaryOp): Create ConstString and set it to contents |
| unknown. |
| Check IsConstStringKnown before generating error message. |
| (WriteQuad): Add StringConvertCnulOp, StringConvertM2nulOp and |
| StringLengthOp. |
| (WriteOperator): Add StringConvertCnulOp, StringConvertM2nulOp and |
| StringLengthOp. |
| * gm2-compiler/M2SymInit.mod (CheckReadBeforeInitQuad): Add |
| StringConvertCnulOp, StringConvertM2nulOp and StringLengthOp. |
| * gm2-compiler/NameKey.mod (LengthKey): Allow NulName to return 0. |
| * gm2-compiler/P2SymBuild.mod (BuildString): Replace |
| MakeConstLitString with MakeConstString. |
| (DetermineType): Replace PutConstString with PutConstStringKnown. |
| * gm2-compiler/SymbolTable.def (MakeConstVar): Tidy up comment. |
| (MakeConstLitString): Remove. |
| (MakeConstString): New procedure function. |
| (MakeConstStringCnul): New procedure function. |
| (MakeConstStringM2nul): New procedure function. |
| (PutConstStringKnown): New procedure. |
| (CopyConstString): New procedure. |
| (IsConstStringKnown): New procedure function. |
| (IsConstStringM2): New procedure function. |
| (IsConstStringC): New procedure function. |
| (IsConstStringM2nul): New procedure function. |
| (IsConstStringCnul): New procedure function. |
| (GetStringLength): Add token parameter. |
| (PutConstString): Remove. |
| (GetConstStringM2): Remove. |
| (GetConstStringC): Remove. |
| (GetConstStringM2nul): Remove. |
| (GetConstStringCnul): Remove. |
| (MakeConstStringC): Remove. |
| * gm2-compiler/SymbolTable.mod (SymConstString): Remove |
| M2Variant, NulM2Variant, CVariant, NulCVariant. |
| Add Known. |
| (CheckAnonymous): Replace $$ with __anon. |
| (IsNameAnonymous): Replace $$ with __anon. |
| (MakeConstVar): Detect whether the name is nul and treat as |
| a temporary constant. |
| (MakeConstLitString): Remove. |
| (BackFillString): Remove. |
| (InitConstString): Rewrite. |
| (GetConstStringM2): Remove. |
| (GetConstStringC): Remove. |
| (GetConstStringContent): New procedure function. |
| (GetConstStringM2nul): Remove. |
| (GetConstStringCnul): Remove. |
| (MakeConstStringCnul): Rewrite. |
| (MakeConstStringM2nul): Rewrite. |
| (MakeConstStringC): Remove. |
| (MakeConstString): Rewrite. |
| (PutConstStringKnown): New procedure. |
| (CopyConstString): New procedure. |
| (PutConstString): Remove. |
| (IsConstStringKnown): New procedure function. |
| (IsConstStringM2): New procedure function. |
| (IsConstStringC): Rewrite. |
| (IsConstStringM2nul): Rewrite. |
| (IsConstStringCnul): Rewrite. |
| (GetConstStringKind): New procedure function. |
| (GetString): Check Known. |
| (GetStringLength): Add token parameter and check Known. |
| |
| 2024-02-10 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/113848 |
| * gm2-libs/SArgs.mod (GetArg): Re-write address arithmetic |
| to avoid (void *) computation. |
| |
| 2024-02-03 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/113730 |
| * gm2-compiler/M2Base.mod (IsUserType): New procedure function. |
| (MixTypes): Use IsUserType instead of IsType before calling MixTypes. |
| * gm2-compiler/M2GenGCC.mod (GetTypeMode): Remove and import from |
| SymbolTable. |
| (CodeBinaryCheck): Replace call to MixTypes with MixTypesBinary. |
| (CodeBinary): Replace call to MixTypes with MixTypesBinary. |
| (CodeIfLess): Replace MixTypes with ComparisonMixTypes. |
| (CodeIfGre): Replace MixTypes with ComparisonMixTypes. |
| (CodeIfLessEqu): Replace MixTypes with ComparisonMixTypes. |
| (CodeIfGreEqu): Replace MixTypes with ComparisonMixTypes. |
| (CodeIfEqu): Replace MixTypes with ComparisonMixTypes. |
| (CodeIfNotEqu): Replace MixTypes with ComparisonMixTypes. |
| (ComparisonMixTypes): New procedure function. |
| * gm2-compiler/M2Quads.mod (BuildEndFor): Replace GenQuadO |
| with GenQuadOtok and pass tokenpos for the operands to the AddOp |
| and XIndrOp. |
| (CheckRangeIncDec): Check etype against NulSym and dtype for a |
| pointer and set etype to Address. |
| (BuildAddAdrFunction): New variable opa. Convert operand to an |
| address and save result in opa. Replace GenQuad with GenQuadOtok. |
| (BuildSubAdrFunction): New variable opa. Convert operand to an |
| address and save result in opa. Replace GenQuad with GenQuadOtok. |
| (BuildDiffAdrFunction): New variable opa. Convert operand to an |
| address and save result in opa. Replace GenQuad with GenQuadOtok. |
| (calculateMultipicand): Replace GenQuadO with GenQuadOtok. |
| (ConvertToAddress): New procedure function. |
| (BuildDynamicArray): Convert index to address before adding to |
| the base. |
| * gm2-compiler/SymbolTable.def (GetTypeMode): New procedure function. |
| * gm2-compiler/SymbolTable.mod (GetTypeMode): New procedure |
| function implemented (moved from M2GenGCC.mod). |
| * gm2-libs/SArgs.mod (GetArg): Replace cast to PtrToChar with ADDRESS. |
| |
| 2024-02-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/111627 |
| PR modula2/112506 |
| * gm2-compiler/M2Comp.mod (Pass0CheckMod): Test IsDefImp before |
| checking IsDefinitionForC. |
| |
| 2024-01-31 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Comp.mod (Pass0CheckMod): Tidy up comment. |
| * gm2-compiler/P1Build.bnf (PossiblyExportIdent): Replace |
| PushTF with PushTFtok. |
| |
| 2024-01-26 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Check.mod (dumpIndice): New procedure. |
| (dumpIndex): New procedure. |
| (dumptInfo): New procedure. |
| (buildError4): Add comment and pass formal and actual to |
| MetaError4. Improve text describing error. |
| (buildError2): Generate different error descriptions for |
| the three error kinds. |
| (checkConstMeta): Add block comment. Add more meta checks |
| and call doCheckPair to complete string const checking. |
| Add tinfo parameter. |
| (checkConstEquivalence): Add tinfo parameter. |
| * gm2-compiler/M2GCCDeclare.mod (PrintVerboseFromList): |
| Print the length of a const string. |
| * gm2-compiler/M2GenGCC.mod (CodeParam): Remove parameters |
| op1, op2 and op3. |
| (doParam): Add paramtok parameter. Use paramtok instead rather |
| than CurrentQuadToken. |
| (CodeParam): Rewrite. |
| * gm2-compiler/M2Quads.mod (CheckProcedureParameters): |
| Add comments explaining that const strings are not checked |
| in M2Quads.mod. |
| (FailParameter): Use MetaErrorT2 with tokpos rather than |
| MetaError2. |
| (doBuildBinaryOp): Assign OldPos and OperatorPos before the |
| IF block. |
| * gm2-compiler/SymbolTable.mod (PutConstString): Add call to |
| InitWhereDeclaredTok. |
| |
| 2024-01-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs/libc.def (lseek): Change the second parameter |
| type to CSSIZE_T and make the return value optional. |
| |
| 2024-01-24 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/113559 |
| * gm2-libs/FIO.mod (SetPositionFromBeginning): Convert pos into |
| CSSIZE_T during call to lseek. |
| (SetPositionFromEnd): Convert pos into CSSIZE_T during call to |
| lseek. |
| |
| 2024-01-23 H.J. Lu <hjl.tools@gmail.com> |
| |
| PR bootstrap/113554 |
| * mc/mc.flex (alloca): Don't redefine. |
| (handleDate): Replace (long *)0 with (time_t *)0 when calling |
| time. |
| |
| 2024-01-19 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2BasicBlock.mod (InitBasicBlocks): Rename |
| ForeachScopeBlockDo to ForeachScopeBlockDo3. |
| * gm2-compiler/M2Code.mod: Import ForeachScopeBlockDo2. |
| (OptimizeScopeBlock): Call ForeachScopeBlockDo3 for |
| procedures with three parameters and ForeachScopeBlockDo2 |
| for two parameters. |
| (CodeBlock): Ditto. |
| * gm2-compiler/M2GCCDeclare.mod (DeclareTypesConstantsProcedures): |
| Rename ForeachScopeBlockDo to ForeachScopeBlockDo3. |
| * gm2-compiler/M2GenGCC.def (ConvertQuadsToTree): Remove Scope |
| parameter. |
| * gm2-compiler/M2GenGCC.mod (ConvertQuadsToTree): Remove Scope |
| parameter. |
| (MaybeDebugBuiltinMemcpy): Remove parameter tok. |
| (MaybeDebugBuiltinMemset): Remove. |
| (MakeCopyUse): Remove tokenno from call to |
| MaybeDebugBuiltinMemcpy. |
| (PerformFoldBecomes): Remove desloc and exprloc. |
| (checkArrayElements): Remove location. Remove virtpos |
| as a parameter to MaybeDebugBuiltinMemcpy. |
| (NoWalkProcedure): Add attribute unused. |
| (CheckElementSetTypes): Remove parameter p. |
| Remove CurrentQuadToken in call to MaybeDebugBuiltinMemcpy. |
| Remove NoWalkProcedure from call to CheckElementSetTypes. |
| Remove tokenno from call to MaybeDebugBuiltinMemcpy. |
| * gm2-compiler/M2Optimize.mod (RemoveProcedures): Replace |
| two parameter indirect procedure iterator with |
| ForeachScopeBlockDo2. |
| * gm2-compiler/M2SSA.mod: Remove ForeachScopeBlockDo. |
| * gm2-compiler/M2Scope.def (ForeachScopeBlockDo2): New |
| declaration. |
| (ForeachScopeBlockDo): Rename ... |
| (ForeachScopeBlockDo3): ... to this. |
| (ScopeProcedure2): New declaration. |
| * gm2-compiler/M2Scope.mod (ForeachScopeBlockDo2): New |
| procedure. |
| (ForeachScopeBlockDo): Rename ... |
| (ForeachScopeBlockDo3): ... to this. |
| |
| 2024-01-18 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/111956 |
| * Make-lang.in (host_mc_longreal): Remove. |
| * configure: Regenerate. |
| * configure.ac (M2C_LONGREAL_FLOAT128): Remove. |
| (M2C_LONGREAL_PPC64LE): Remove. |
| * gm2-compiler/M2Options.def (SetIBMLongDouble): New procedure. |
| (GetIBMLongDouble): New procedure function. |
| (SetIEEELongDouble): New procedure. |
| (GetIEEELongDouble): New procedure function. |
| * gm2-compiler/M2Options.mod (SetIBMLongDouble): New procedure. |
| (GetIBMLongDouble): New procedure function. |
| (SetIEEELongDouble): New procedure. |
| (GetIEEELongDouble): New procedure function. |
| (InitializeLongDoubleFlags): New procedure called during |
| module block initialization. |
| * gm2-gcc/m2configure.cc: Remove duplicate includes. |
| (m2configure_M2CLongRealFloat128): Remove. |
| (m2configure_M2CLongRealIBM128): Remove. |
| (m2configure_M2CLongRealLongDouble): Remove. |
| (m2configure_M2CLongRealLongDoublePPC64LE): Remove. |
| (m2configure_TargetIEEEQuadDefault): New function. |
| * gm2-gcc/m2configure.def (M2CLongRealFloat128): Remove. |
| (M2CLongRealIBM128): Remove. |
| (M2CLongRealLongDouble): Remove. |
| (M2CLongRealLongDoublePPC64LE): Remove. |
| (TargetIEEEQuadDefault): New function. |
| * gm2-gcc/m2configure.h (m2configure_M2CLongRealFloat128): Remove. |
| (m2configure_M2CLongRealIBM128): Remove. |
| (m2configure_M2CLongRealLongDouble): Remove. |
| (m2configure_M2CLongRealLongDoublePPC64LE): Remove. |
| (m2configure_TargetIEEEQuadDefault): New function. |
| * gm2-gcc/m2options.h (M2Options_SetIBMLongDouble): New prototype. |
| (M2Options_GetIBMLongDouble): New prototype. |
| (M2Options_SetIEEELongDouble): New prototype. |
| (M2Options_GetIEEELongDouble): New prototype. |
| * gm2-gcc/m2type.cc (build_m2_long_real_node): Re-implement using |
| results of M2Options_GetIBMLongDouble and M2Options_GetIEEELongDouble. |
| * gm2-lang.cc (gm2_langhook_handle_option): Add case |
| OPT_mabi_ibmlongdouble and call M2Options_SetIBMLongDouble. |
| Add case OPT_mabi_ieeelongdouble and call M2Options_SetIEEELongDouble. |
| * gm2config.aci.in: Regenerate. |
| * gm2spec.cc (lang_specific_driver): Remove block defined by |
| M2C_LONGREAL_PPC64LE. |
| Remove case OPT_mabi_ibmlongdouble. |
| Remove case OPT_mabi_ieeelongdouble. |
| |
| 2024-01-11 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/112946 |
| * gm2-compiler/M2GenGCC.mod (IsExpressionCompatible): Import. |
| (ExpressionTypeCompatible): Import. |
| (CodeStatement): Remove op1, op2, op3 parameters from CodeSetOr, |
| CodeSetAnd, CodeSetSymmetricDifference, CodeSetLogicalDifference. |
| (checkArrayElements): Rename op1 to des and op3 to expr. |
| Use despos and exprpos instead of CurrentQuadToken. |
| (checkRecordTypes): Rename op1 to des and op2 to expr. |
| Use virtpos instead of CurrentQuadToken. |
| (checkIncorrectMeta): Ditto. |
| (checkBecomes): Rename op1 to des and op3 to expr. |
| Use virtpos instead of CurrentQuadToken. |
| (NoWalkProcedure): New procedure stub. |
| (CheckBinaryExpressionTypes): New procedure function. |
| (CheckElementSetTypes): New procedure function. |
| (CodeBinarySet): Re-write. |
| (FoldBinarySet): Re-write. |
| (CodeSetOr): Remove parameters op1, op2 and op3. |
| (CodeSetAnd): Ditto. |
| (CodeSetLogicalDifference): Ditto. |
| (CodeSetSymmetricDifference): Ditto. |
| (CodeIfIn): Call CheckBinaryExpressionTypes and |
| CheckElementSetTypes. |
| * gm2-compiler/M2Quads.mod (BuildRotateFunction): Correct |
| parameters to MakeVirtualTok to reflect parameter block |
| passed to Rotate. |
| |
| 2024-01-09 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/112920 |
| * gm2-compiler/M2GCCDeclare.mod (Group): New declaration. |
| Import MakeSubrange, MakeConstVar, MakeConstLit and DivTrunc. |
| (FreeGroup): New declaration. |
| (GlobalGroup): New declaration. |
| (ToBeSolvedByQuads): Remove. |
| (NilTypedArrays): Remove. |
| (PartiallyDeclared): Remove. |
| (HeldByAlignment): Remove. |
| (FinishedAlignment): Remove. |
| (ToDoList): Remove. |
| (DebugSet): Re-format. |
| (DebugNumber): Re-format. |
| (DebugSetNumbers): Reference sets using GlobalGroup. |
| (AddSymToWatch): Re-format. |
| (WatchIncludeList): Reference sets using GlobalGroup. |
| (WatchRemoveList): Reference sets using GlobalGroup. |
| (NewGroup): New procedure. |
| (DisposeGroup): New procedure. |
| (InitGroup): New procedure. |
| (KillGroup): New procedure. |
| (DupGroup): New procedure. |
| (EqualGroup): New procedure. |
| (LookupSet): New procedure. |
| (CanDeclareTypePartially): Reference sets using GlobalGroup. |
| (CompletelyResolved): Reference sets using GlobalGroup. |
| (IsNilTypedArrays): Reference sets using GlobalGroup. |
| (IsFullyDeclared): Reference sets using GlobalGroup. |
| (IsPartiallyDeclared): Reference sets using GlobalGroup. |
| (IsPartiallyOrFullyDeclared): Reference sets using GlobalGroup. |
| (DeclareTypeConstFully): Reference sets using GlobalGroup. |
| (bodyl): Remove. |
| (Body): Use bodyt and to lookup the required set. |
| (ForeachTryDeclare): Remove parameter l. Lookup set instead. |
| (DeclareOutstandingTypes): Add new rules setarraynul and setfully. |
| Reference sets using GlobalGroup. |
| (ActivateWatch): New procedure. |
| (DeclareTypesConstantsProceduresInRange): Re-written to check |
| group change. |
| (DeclareTypesConstantsProcedures): Re-written to check |
| group change. |
| (DeclareBoolean): Reference sets using GlobalGroup. |
| (DeclarePackedBoolean): Ditto. |
| (DeclareDefaultConstants): Ditto. |
| (FreeGroup): Initialized. |
| (GlobalGroup): Ditto. |
| * gm2-compiler/Sets.def (EqualSet): New procedure function. |
| Remove export qualified list of identifiers. |
| * gm2-compiler/Sets.mod (EqualSet): New procedure function. |
| |
| 2024-01-04 David Malcolm <dmalcolm@redhat.com> |
| |
| * lang.opt.urls: New file, autogenerated by |
| regenerate-opt-urls.py. |
| |
| 2023-12-15 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/112946 |
| * gm2-compiler/M2Check.mod (checkConstMeta): New procedure |
| function. |
| (checkConstEquivalence): New procedure function. |
| (doCheckPair): Add call to checkConstEquivalence. |
| * gm2-compiler/M2GenGCC.mod (ResolveConstantExpressions): Call |
| FoldBecomes with reduced parameters. |
| (FoldBecomes): Re-write. |
| (TryDeclareConst): New procedure. |
| (RemoveQuads): New procedure. |
| (DeclaredOperandsBecomes): New procedure function. |
| (TypeCheckBecomes): New procedure function. |
| (PerformFoldBecomes): New procedure. |
| * gm2-compiler/M2Range.mod (FoldAssignment): Call |
| AssignmentTypeCompatible to check des expr compatibility. |
| * gm2-compiler/M2SymInit.mod (CheckReadBeforeInitQuad): Remove |
| parameter lst. |
| (FilterCheckReadBeforeInitQuad): Remove parameter lst. |
| (CheckReadBeforeInitFirstBasicBlock): Remove parameter lst. |
| Call FilterCheckReadBeforeInitQuad without lst. |
| |
| 2023-12-13 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/112921 |
| * gm2-libs-iso/ConvStringShort.def: New file. |
| * gm2-libs-iso/ConvStringShort.mod: New file. |
| * gm2-libs-iso/ShortConv.def: New file. |
| * gm2-libs-iso/ShortConv.mod: New file. |
| * gm2-libs-iso/ShortMath.def: New file. |
| * gm2-libs-iso/ShortMath.mod: New file. |
| * gm2-libs-iso/ShortStr.def: New file. |
| * gm2-libs-iso/ShortStr.mod: New file. |
| |
| 2023-12-12 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/112984 |
| * gm2-libs-coroutines/SYSTEM.mod: Remove redundant import of memcpy. |
| * gm2-libs-iso/ClientSocket.mod: Remove redundant import of IOConsts. |
| * gm2-libs-iso/IOChan.mod: Remove redundant import of IOConsts. |
| * gm2-libs-iso/IOLink.mod: Remove redundant import of IOChan and SYSTEM. |
| * gm2-libs-iso/IOResult.mod: Remove redundant import of IOChan. |
| * gm2-libs-iso/LongIO.mod: Remove redundant import of writeString. |
| * gm2-libs-iso/LongWholeIO.mod: Remove redundant import of IOChan. |
| * gm2-libs-iso/M2RTS.mod: Remove redundant import of ADDRESS. |
| * gm2-libs-iso/MemStream.mod: Remove redundant import of ADDRESS. |
| * gm2-libs-iso/RTdata.mod: Remove redundant import of DeviceTablePtr. |
| * gm2-libs-iso/RTfio.mod: Remove redundant import of DeviceTablePtr. |
| * gm2-libs-iso/RTgen.mod: Remove redundant import of DeviceTablePtr. |
| * gm2-libs-iso/RealIO.mod: Remove redundant import of writeString. |
| * gm2-libs-iso/RndFile.mod: Remove redundant import of SYSTEM. |
| * gm2-libs-iso/SYSTEM.mod: Remove redundant import of memcpy. |
| * gm2-libs-iso/ShortWholeIO.mod: Remove redundant import of IOConsts. |
| * gm2-libs-iso/TextIO.mod: Remove redundant import of IOChan. |
| * gm2-libs-iso/TextUtil.mod: Remove redundant import of IOChan. |
| * gm2-libs-iso/WholeIO.mod: Remove redundant import of IOChan. |
| * gm2-libs-log/BitByteOps.mod: Remove redundant import of BYTE. |
| * gm2-libs-log/FileSystem.mod: Remove redundant import of BYTE and ADDRESS. |
| * gm2-libs-log/InOut.mod: Remove redundant import of String. |
| * gm2-libs-log/RealConversions.mod: Remove redundant import of StringToLongreal. |
| * gm2-libs/FIO.mod: Remove redundant import of SIZE. |
| * gm2-libs/FormatStrings.mod: Remove redundant import of String |
| and ConCatChar. |
| * gm2-libs/IO.mod: Remove redundant import of SIZE. |
| * gm2-libs/Indexing.mod: Remove redundant import of ADDRESS. |
| * gm2-libs/M2Dependent.mod: Remove redundant import of SIZE. |
| * gm2-libs/M2RTS.mod: Remove redundant import of ADDRESS. |
| * gm2-libs/OptLib.mod: Remove redundant import of DynamicStrings. |
| * gm2-libs/SYSTEM.mod: Remove redundant import of memcpy. |
| * gm2-libs/StringConvert.mod: Remove redundant import of String. |
| |
| 2023-12-07 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/112893 |
| * gm2-compiler/M2Base.mod (Ass): Extend array to include proc row |
| and column. Allow PIM to assign cardinal variables to address |
| variables. |
| (Expr): Ditto. |
| (Comp): Ditto. |
| * gm2-compiler/M2Check.mod (getSType): New procedure function. |
| Replace all occurances of GetSType with getSType. |
| * gm2-compiler/M2GenGCC.mod (CodeParam): Rewrite format specifier |
| error message. |
| * gm2-compiler/M2Quads.mod (CheckProcTypeAndProcedure): Add tokno |
| parameter. |
| * gm2-compiler/M2Range.def (InitTypesParameterCheck): Add tokno |
| parameter. |
| (InitParameterRangeCheck): Add tokno parameter. |
| Remove EXPORT QUALIFIED list. |
| (InitParameterRangeCheck): Add tokno parameter. |
| * gm2-compiler/M2Range.mod (InitTypesParameterCheck): Add tokno |
| parameter and pass tokno to PutRangeParam. |
| (InitParameterRangeCheck): Add tokno parameter and pass tokno to |
| PutRangeParam. |
| (PutRangeParam): Add tokno parameter and assign to tokenNo. |
| (FoldTypeParam): Rewrite format string. |
| |
| 2023-12-06 Thomas Schwinge <thomas@codesourcery.com> |
| |
| * lang.opt (-isysroot): New. |
| |
| 2023-12-05 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/112865 |
| * gm2-compiler/M2Quads.mod (BuildReFunction): Use |
| GetDType to retrieve the type of the operand when |
| converting the complex type to its scalar equivalent. |
| (BuildImFunction): Use GetDType to retrieve the type of the |
| operand when converting the complex type to its scalar |
| equivalent. |
| |
| 2023-12-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * mc/mc.flex [__GNUC__]: Define alloca as __builtin_alloca. |
| (handleDate): Use strchr instead of index. |
| |
| 2023-12-04 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/112825 |
| * tools-src/makeSystem: Change all occurrences of -c to -S. |
| |
| 2023-11-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/102989 |
| * gm2-compiler/SymbolTable.mod (OverflowZType): Import from m2expr. |
| (ConstantStringExceedsZType): Remove import. |
| (GetConstLitType): Replace ConstantStringExceedsZType with OverflowZType. |
| * gm2-gcc/m2decl.cc (m2decl_ConstantStringExceedsZType): Remove. |
| (m2decl_BuildConstLiteralNumber): Re-write. |
| * gm2-gcc/m2decl.def (ConstantStringExceedsZType): Remove. |
| * gm2-gcc/m2decl.h (m2decl_ConstantStringExceedsZType): Remove. |
| * gm2-gcc/m2expr.cc (m2expr_StrToWideInt): Rewrite to check overflow. |
| (m2expr_OverflowZType): New function. |
| (ToWideInt): New function. |
| * gm2-gcc/m2expr.def (OverflowZType): New procedure function declaration. |
| * gm2-gcc/m2expr.h (m2expr_OverflowZType): New prototype. |
| |
| 2023-10-27 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/111530 |
| * gm2-libs-ch/cgetopt.c (cgetopt_cgetopt_long): Re-format. |
| (cgetopt_cgetopt_long_only): Re-format. |
| (cgetopt_SetOption): Re-format and assign flag to NULL |
| if name is also NULL. |
| * gm2-libs/GetOpt.def (AddLongOption): Add index parameter |
| and change flag to be a VAR parameter rather than a pointer. |
| (GetOptLong): Re-format. |
| (GetOpt): Correct comment. |
| * gm2-libs/GetOpt.mod: Re-write to rely on cgetopt rather |
| than implement long option creation in GetOpt. |
| * gm2-libs/cgetopt.def (SetOption): has_arg type is INTEGER. |
| |
| 2023-10-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/111955 |
| * gm2-gcc/m2builtins.cc (gm2_isnan_node): New tree. |
| (DoBuiltinIsnan): New function. |
| (m2builtins_BuiltInIsnan): New function. |
| (m2builtins_init): Initialize gm2_isnan_node. |
| (list_of_builtins): Add define for __builtin_isnan. |
| * gm2-libs-ch/wrapc.c (wrapc_isnan): New function. |
| (wrapc_isnanf): New function. |
| (wrapc_isnanl): New function. |
| * gm2-libs/Builtins.def (isnanf): New procedure function. |
| (isnan): New procedure function. |
| (isnanl): New procedure function. |
| * gm2-libs/Builtins.mod: |
| * gm2-libs/wrapc.def (isnan): New function. |
| (isnanf): New function. |
| (isnanl): New function. |
| |
| 2023-10-24 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs/M2Dependent.mod (InitDependencyList): New |
| procedure. |
| (CreateModule): Call InitDependencyList to initialize |
| all fields of DependencyList. |
| |
| 2023-10-24 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs/M2Dependent.mod (CreateModule): Initialize all |
| dependency fields for DependencyList. |
| |
| 2023-10-17 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/111756 |
| * Make-lang.in (CM2DEP): New define conditionally set if |
| ($(CXXDEPMODE),depmode=gcc3). |
| (GM2_1): Use $(CM2DEP). |
| (m2/gm2-gcc/%.o): Ensure $(@D)/$(DEPDIR) is created. |
| Add $(CM2DEP) to the $(COMPILER) command and use $(POSTCOMPILE). |
| (m2/gm2-gcc/m2configure.o): Ditto. |
| (m2/gm2-lang.o): Ditto. |
| (m2/m2pp.o): Ditto. |
| (m2/gm2-gcc/rtegraph.o): Ditto. |
| (m2/mc-boot/$(SRC_PREFIX)%.o): Ditto. |
| (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto. |
| (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto. |
| (m2/mc-boot/main.o): Ditto. |
| (mcflex.o): Ditto. |
| (m2/gm2-libs-boot/M2RTS.o): Ditto. |
| (m2/gm2-libs-boot/%.o): Ditto. |
| (m2/gm2-libs-boot/%.o): Ditto. |
| (m2/gm2-libs-boot/RTcodummy.o): Ditto. |
| (m2/gm2-libs-boot/RTintdummy.o): Ditto. |
| (m2/gm2-libs-boot/wrapc.o): Ditto. |
| (m2/gm2-libs-boot/UnixArgs.o): Ditto. |
| (m2/gm2-libs-boot/choosetemp.o): Ditto. |
| (m2/gm2-libs-boot/errno.o): Ditto. |
| (m2/gm2-libs-boot/dtoa.o): Ditto. |
| (m2/gm2-libs-boot/ldtoa.o): Ditto. |
| (m2/gm2-libs-boot/termios.o): Ditto. |
| (m2/gm2-libs-boot/SysExceptions.o): Ditto. |
| (m2/gm2-libs-boot/SysStorage.o): Ditto. |
| (m2/gm2-compiler-boot/M2GCCDeclare.o): Ditto. |
| (m2/gm2-compiler-boot/M2Error.o): Ditto. |
| (m2/gm2-compiler-boot/%.o): Ditto. |
| (m2/gm2-compiler-boot/%.o): Ditto. |
| (m2/gm2-compiler-boot/m2flex.o): Ditto. |
| (m2/gm2-compiler/%.o): Ditto. |
| (m2/gm2-compiler/m2flex.o): Ditto. |
| (m2/gm2-libs-iso/%.o): Ditto. |
| (m2/gm2-libs/%.o): Ditto. |
| (m2/gm2-libs/%.o): Ditto. |
| (m2/gm2-libs/choosetemp.o): Ditto. |
| (m2/boot-bin/mklink$(exeext)): Ditto. |
| (m2/pge-boot/%.o): Ditto. |
| (m2/pge-boot/%.o): Ditto. |
| (m2/gm2-compiler/%.o): Ensure $(@D)/$(DEPDIR) is created and use |
| $(POSTCOMPILE). |
| (m2/gm2-compiler/%.o): Ditto. |
| (m2/gm2-libs-iso/%.o): Ditto. |
| (m2/gm2-libs/%.o): Ditto. |
| * README: Purge out of date info. |
| * gm2-compiler/M2Comp.mod (MakeSaveTempsFileNameExt): Import. |
| (OnExitDelete): Import. |
| (GetModuleDefImportStatementList): Import. |
| (GetModuleModImportStatementList): Import. |
| (GetImportModule): Import. |
| (IsImportStatement): Import. |
| (IsImport): Import. |
| (GetImportStatementList): Import. |
| (File): Import. |
| (Close): Import. |
| (EOF): Import. |
| (IsNoError): Import. |
| (WriteLine): Import. |
| (WriteChar): Import. |
| (FlushOutErr): Import. |
| (WriteS): Import. |
| (OpenToRead): Import. |
| (OpenToWrite): Import. |
| (ReadS): Import. |
| (WriteS): Import. |
| (GetM): Import. |
| (GetMM): Import. |
| (GetDepTarget): Import. |
| (GetMF): Import. |
| (GetMP): Import. |
| (GetObj): Import. |
| (GetMD): Import. |
| (GetMMD): Import. |
| (GenerateDefDependency): New procedure. |
| (GenerateDependenciesFromImport): New procedure. |
| (GenerateDependenciesFromList): New procedure. |
| (GenerateDependencies): New procedure. |
| (Compile): Re-write. |
| (compile): Re-format. |
| (CreateFileStem): New procedure function. |
| (DoPass0): Re-write. |
| (IsLibrary): New procedure function. |
| (IsUnique): New procedure function. |
| (Append): New procedure. |
| (MergeDep): New procedure. |
| (GetRuleTarget): New procedure function. |
| (ReadDepContents): New procedure function. |
| (WriteDep): New procedure. |
| (WritePhonyDep): New procedure. |
| (WriteDepContents): New procedure. |
| (CreateDepFilename): New procedure function. |
| (Pass0CheckDef): New procedure function. |
| (Pass0CheckMod): New procedure function. |
| (DoPass0): Re-write. |
| (DepContent): New variable. |
| (DepOutput): New variable. |
| (BaseName): New procedure function. |
| * gm2-compiler/M2GCCDeclare.mod (PrintTerse): Handle IsImport. |
| Replace IsGnuAsmVolatile with IsGnuAsm. |
| * gm2-compiler/M2Options.def (EXPORT QUALIFIED): Remove list. |
| (SetM): New procedure. |
| (GetM): New procedure function. |
| (SetMM): New procedure. |
| (GetMM): New procedure function. |
| (SetMF): New procedure. |
| (GetMF): New procedure function. |
| (SetPPOnly): New procedure. |
| (GetB): New procedure function. |
| (SetMD): New procedure. |
| (GetMD): New procedure function. |
| (SetMMD): New procedure. |
| (GetMMD): New procedure function. |
| (SetMQ): New procedure. |
| (SetMT): New procedure. |
| (GetMT): New procedure function. |
| (GetDepTarget): New procedure function. |
| (SetMP): New procedure. |
| (GetMP): New procedure function. |
| (SetObj): New procedure. |
| (SetSaveTempsDir): New procedure. |
| * gm2-compiler/M2Options.mod (SetM): New procedure. |
| (GetM): New procedure function. |
| (SetMM): New procedure. |
| (GetMM): New procedure function. |
| (SetMF): New procedure. |
| (GetMF): New procedure function. |
| (SetPPOnly): New procedure. |
| (GetB): New procedure function. |
| (SetMD): New procedure. |
| (GetMD): New procedure function. |
| (SetMMD): New procedure. |
| (GetMMD): New procedure function. |
| (SetMQ): New procedure. |
| (SetMT): New procedure. |
| (GetMT): New procedure function. |
| (GetDepTarget): New procedure function. |
| (SetMP): New procedure. |
| (GetMP): New procedure function. |
| (SetObj): New procedure. |
| (SetSaveTempsDir): New procedure. |
| * gm2-compiler/M2Preprocess.def (PreprocessModule): New parameters |
| topSource and outputDep. Re-write. |
| (MakeSaveTempsFileNameExt): New procedure function. |
| (OnExitDelete): New procedure function. |
| * gm2-compiler/M2Preprocess.mod (GetM): Import. |
| (GetMM): Import. |
| (OnExitDelete): Add debugging message. |
| (RemoveFile): Add debugging message. |
| (BaseName): Remove. |
| (BuildCommandLineExecute): New procedure function. |
| * gm2-compiler/M2Search.def (SetDefExtension): Remove unnecessary |
| spacing. |
| * gm2-compiler/SymbolTable.mod (GetSymName): Handle ImportSym and |
| ImportStatementSym. |
| * gm2-gcc/m2options.h (M2Options_SetMD): New function. |
| (M2Options_GetMD): New function. |
| (M2Options_SetMMD): New function. |
| (M2Options_GetMMD): New function. |
| (M2Options_SetM): New function. |
| (M2Options_GetM): New function. |
| (M2Options_SetMM): New function. |
| (M2Options_GetMM): New function. |
| (M2Options_GetMQ): New function. |
| (M2Options_SetMF): New function. |
| (M2Options_GetMF): New function. |
| (M2Options_SetMT): New function. |
| (M2Options_SetMP): New function. |
| (M2Options_GetMP): New function. |
| (M2Options_GetDepTarget): New function. |
| * gm2-lang.cc (gm2_langhook_init): Correct comment case. |
| (gm2_langhook_init_options): Add case OPT_M and |
| OPT_MM. |
| (gm2_langhook_post_options): Add case OPT_MF, OPT_MT, |
| OPT_MD and OPT_MMD. |
| * lang-specs.h (M2CPP): Pass though MF option. |
| (MDMMD): New define. Add MDMMD to "@modula-2". |
| |
| 2023-10-15 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (m2.tags): New rule. |
| |
| 2023-10-11 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2GCCDeclare.mod (DeclareSubrange): Check |
| the base type of the subrange against the ZTYPE and call |
| DeclareSubrangeNarrow if necessary. |
| (DeclareSubrangeNarrow): New procedure function. |
| |
| 2023-10-11 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/111675 |
| * gm2-compiler/M2CaseList.mod (appendTree): Replace |
| InitStringCharStar with InitString. |
| * gm2-compiler/M2GCCDeclare.mod: Import AreConstantsEqual. |
| (DeclareSubrange): Add zero alignment test and call |
| BuildSmallestTypeRange if necessary. |
| (WalkSubrangeDependants): Walk the align expression. |
| (IsSubrangeDependants): Test the align expression. |
| * gm2-compiler/M2Quads.mod (BuildStringAdrParam): Correct end name. |
| * gm2-compiler/P2SymBuild.mod (BuildTypeAlignment): Allow subranges |
| to be zero aligned (packed). |
| * gm2-compiler/SymbolTable.mod (Subrange): Add Align field. |
| (MakeSubrange): Set Align to NulSym. |
| (PutAlignment): Assign Subrange.Align to align. |
| (GetAlignment): Return Subrange.Align. |
| * gm2-gcc/m2expr.cc (noBitsRequired): Rewrite. |
| (calcNbits): Rename ... |
| (m2expr_calcNbits): ... to this and test for negative values. |
| (m2expr_BuildTBitSize): Replace calcNBits with m2expr_calcNbits. |
| * gm2-gcc/m2expr.def (calcNbits): Export. |
| * gm2-gcc/m2expr.h (m2expr_calcNbits): New prototype. |
| * gm2-gcc/m2type.cc (noBitsRequired): Remove. |
| (m2type_BuildSmallestTypeRange): Call m2expr_calcNbits. |
| (m2type_BuildSubrangeType): Create range_type from |
| build_range_type (type, lowval, highval). |
| |
| 2023-09-29 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Quads.mod (EndBuildFor): Improve |
| block comments. |
| * gm2-libs-iso/SysClock.mod (ExtractDate): Replace |
| testDays with yearOfDays. New local variable monthOfDays. |
| |
| 2023-09-26 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/111510 |
| * gm2-compiler/M2GenGCC.mod (IsExportedGcc): Minor spacing changes. |
| (BuildTrashTreeFromInterface): Minor spacing changes. |
| * gm2-compiler/M2Options.mod (GetRuntimeModuleOverride): Call |
| string to generate a nul terminated C style string. |
| * gm2-compiler/M2Quads.mod (BuildStringAdrParam): New procedure. |
| (BuildM2InitFunction): Replace inline parameter generation with |
| calls to BuildStringAdrParam. |
| |
| 2023-09-19 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (host_mc_longreal): Detect hosting on powerpc64le |
| and if so use __float128 for longreal in mc. |
| (MC_ARGS): Append host_mc_longreal. |
| * config-make.in (TEST_TARGET_CPU_DEFAULT): New variable. |
| (TEST_HOST_CPU_DEFAULT): New variable. |
| * configure: Regenerate. |
| * configure.ac (M2C_LONGREAL_FLOAT128): New define set if target |
| is powerpc64le. |
| (M2C_LONGREAL_PPC64LE): New define set if target is powerpc64le. |
| * gm2-compiler/M2GCCDeclare.mod: Correct comment case. |
| * gm2-compiler/M2GenGCC.mod (MaybeDebugBuiltinAlloca): Call |
| SetLastFunction for the builtin function call. |
| (MaybeDebugBuiltinMemcpy): Call SetLastFunction for the builtin |
| function call. |
| (MaybeDebugBuiltinMemset): New procedure function. |
| (MakeCopyUse): Use GNU formatting. |
| (UseBuiltin): Rewrite to check BuiltinExists. |
| (CodeDirectCall): Rewrite to check BuiltinExists and call |
| SetLastFunction. |
| (CodeMakeAdr): Re-format. |
| * gm2-compiler/M2Options.def (SetDebugBuiltins): New procedure. |
| * gm2-compiler/M2Options.mod (SetUninitVariableChecking): Allow |
| "cond" to switch UninitVariableConditionalChecking separately. |
| (SetDebugBuiltins): New procedure. |
| * gm2-compiler/M2Quads.def (BuildFunctionCall): Add parameter |
| ConstExpr. |
| * gm2-compiler/M2Quads.mod (BuildRealProcedureCall): Add parameter |
| to BuildRealFuncProcCall. |
| (BuildRealFuncProcCall): Add ConstExpr parameter. Pass ConstExpr |
| to BuildFunctionCall. |
| (BuildFunctionCall): Add parameter ConstExpr. Pass ConstExpr to |
| BuildRealFunctionCall. |
| (BuildConstFunctionCall): Add parameter ConstExpr. Pass ConstExpr to |
| BuildFunctionCall. |
| (BuildRealFunctionCall): Add parameter ConstExpr. Pass ConstExpr to |
| BuildRealFuncProcCall. |
| * gm2-compiler/P3Build.bnf (SetOrDesignatorOrFunction): Pass FALSE |
| to BuildFunctionCall. |
| (AssignmentOrProcedureCall): Pass FALSE to BuildFunctionCall. |
| * gm2-compiler/SymbolTable.def (IsProcedureBuiltinAvailable): New |
| procedure function. |
| * gm2-compiler/SymbolTable.mod (CanUseBuiltin): New procedure |
| function. |
| (IsProcedureBuiltinAvailable): New procedure function. |
| * gm2-gcc/m2builtins.cc (DEBUGGING): Undef. |
| (bf_category): New enum type. |
| (struct builtin_function_entry): New field function_avail. |
| (m2builtins_BuiltInMemCopy): Rename from ... |
| (m2builtins_BuiltinMemCopy): ... this. |
| (DoBuiltinMemSet): New function. |
| (m2builtins_BuiltinMemSet): New function. |
| (do_target_support_exists): New function. |
| (target_support_exists): New function. |
| (m2builtins_BuiltinExists): Return true or false. |
| (m2builtins_BuildBuiltinTree): Rename local variables. |
| Replace long_double_type_node with GetM2LongRealType. |
| (m2builtins_init): Use GetM2LongRealType rather than |
| long_double_type_node. |
| * gm2-gcc/m2builtins.def (BuiltInMemCopy): Rename to ... |
| (BuiltinMemCopy): ... this. |
| (BuiltinMemSet): New procedure function. |
| * gm2-gcc/m2builtins.h (m2builtins_BuiltInMemCopy): Rename to ... |
| (m2builtins_BuiltinMemCopy): ... this. |
| (m2builtins_BuiltinMemSet): New procedure function. |
| * gm2-gcc/m2configure.cc (m2configure_M2CLongRealFloat128): New |
| procedure function. |
| (m2configure_M2CLongRealIBM128): New procedure function. |
| (m2configure_M2CLongRealLongDouble): New procedure function. |
| (m2configure_M2CLongRealLongDoublePPC64LE): New procedure function. |
| * gm2-gcc/m2configure.def (M2CLongRealFloat128): New procedure function. |
| (M2CLongRealIBM128): New procedure function. |
| (M2CLongRealLongDouble): New procedure function. |
| (M2CLongRealLongDoublePPC64LE): New procedure function. |
| * gm2-gcc/m2configure.h (m2configure_FullPathCPP): New procedure function. |
| (m2configure_M2CLongRealFloat128): New procedure function. |
| (m2configure_M2CLongRealIBM128): New procedure function. |
| (m2configure_M2CLongRealLongDouble): New procedure function. |
| (m2configure_M2CLongRealLongDoublePPC64LE): New procedure function. |
| * gm2-gcc/m2convert.cc (m2convert_BuildConvert): Use convert_loc. |
| * gm2-gcc/m2options.h (M2Options_SetDebugBuiltins): New function. |
| * gm2-gcc/m2statement.cc (m2statement_BuildAssignmentTree): Set |
| TREE_USED to true. |
| (m2statement_BuildGoto):Set TREE_USED to true. |
| (m2statement_BuildParam): Set TREE_USED to true. |
| (m2statement_BuildBuiltinCallTree): New function. |
| (m2statement_BuildFunctValue): Set TREE_USED to true. |
| * gm2-gcc/m2statement.def (BuildBuiltinCallTree): New procedure function. |
| * gm2-gcc/m2statement.h (m2statement_BuildBuiltinCallTree): New |
| procedure function. |
| * gm2-gcc/m2treelib.cc (m2treelib_DoCall0): Remove spacing. |
| (m2treelib_DoCall1): Remove spacing. |
| (m2treelib_DoCall2): Remove spacing. |
| (m2treelib_DoCall3): Remove spacing. |
| (add_stmt): Rename parameter. |
| * gm2-gcc/m2type.cc (build_set_type): Remove spacing. |
| (build_m2_specific_size_type): Remove spacing. |
| (finish_build_pointer_type): Remove spacing. |
| (m2type_BuildVariableArrayAndDeclare): Remove spacing. |
| (build_m2_short_real_node): Remove spacing. |
| (build_m2_real_node): Remove spacing. |
| (build_m2_long_real_node): Use float128_type_node if |
| M2CLongRealFloat128 is set. |
| (build_m2_ztype_node): Remove spacing. |
| (build_m2_long_int_node): Remove spacing. |
| (build_m2_long_card_node): Remove spacing. |
| (build_m2_short_int_node): Remove spacing. |
| (build_m2_short_card_node): Remove spacing. |
| (build_m2_iso_loc_node): Remove spacing. |
| (m2type_SameRealType): New function. |
| (m2type_InitBaseTypes): Create m2_c_type_node using |
| m2_long_complex_type_node. |
| (m2type_SetAlignment): Tidy up comment. |
| * gm2-gcc/m2type.def (SameRealType): New procedure function. |
| * gm2-gcc/m2type.h (m2type_SameRealType): New procedure function. |
| * gm2-lang.cc (gm2_langhook_type_for_mode): Build long complex |
| node from m2 language specific long double node. |
| * gm2-libs-log/RealConversions.mod (IsNan): New procedure |
| function. |
| (doPowerOfTen): Re-implement. |
| * gm2-libs/Builtins.mod: Add newline. |
| * gm2-libs/DynamicStrings.def (ReplaceChar): New procedure function. |
| * gm2-libs/DynamicStrings.mod (ReplaceChar): New procedure function. |
| * gm2config.aci.in (M2C_LONGREAL_FLOAT128): New config value. |
| (M2C_LONGREAL_PPC64LE): New config value. |
| * gm2spec.cc (lang_specific_driver): New local variable |
| need_default_mabi set to default value depending upon |
| M2C_LONGREAL_PPC64LE and M2C_LONGREAL_FLOAT128. |
| * lang.opt (Wcase-enum): Moved to correct section. |
| * m2pp.cc (m2pp_real_type): New function. |
| (m2pp_type): Call m2pp_real_type. |
| (m2pp_print_mode): New function. |
| (m2pp_simple_type): Call m2pp_simple_type. |
| (m2pp_float): New function. |
| (m2pp_expression): Call m2pp_float. |
| * mc-boot/GDynamicStrings.cc: Rebuild. |
| * mc-boot/GDynamicStrings.h: Rebuild. |
| * mc-boot/GFIO.cc: Rebuild. |
| * mc-boot/GFIO.h: Rebuild. |
| * mc-boot/GIO.cc: Rebuild. |
| * mc-boot/GRTint.cc: Rebuild. |
| * mc-boot/Gdecl.cc: Rebuild. |
| * mc-boot/GmcOptions.cc: Rebuild. |
| * mc-boot/GmcOptions.h: Rebuild. |
| * mc/decl.mod: Rebuild. |
| * mc/mcOptions.def (getCRealType): New procedure function. |
| (getCLongRealType): New procedure function. |
| (getCShortRealType): New procedure function. |
| * mc/mcOptions.mod (getCRealType): New procedure function. |
| (getCLongRealType): New procedure function. |
| (getCShortRealType): New procedure function. |
| |
| 2023-09-14 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2CaseList.mod (NewRanges): Add block |
| comment. |
| (NewSet): Add block comment. |
| (DisplayRanges): Add block comment. |
| (IncludeElement): Add block comment. |
| (IncludeElements): Add block comment. |
| (appendString): Add block comment. |
| (appendEnum): Add block comment. |
| (appendTree): Add block comment. |
| (SubrangeErrors): Add block comment. |
| |
| 2023-09-14 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2CaseList.mod (appendString): New procedure. |
| (appendEnum): Re-implement. |
| (NoOfSetElements): New procedure function. |
| (isPrintableChar): New procedure function. |
| (appendTree): New procedure. |
| (SubrangeErrors): New procedure. |
| (EmitMissingRangeErrors): Call SubrangeErrors if appropriate. |
| * gm2-compiler/M2SymInit.mod (SetFieldInitializedNo): Avoid |
| using a temporary variable once. |
| (IsLocalVar): Comment out. |
| (RecordContainsVarient): Remove fieldtype. |
| (GenerateNoteFlow): Remove lst parameter. |
| (CheckDeferredRecordAccess): Remove lst parameter. |
| (CheckUnary): Remove lst parameter. Remove procSym. |
| (CheckBinary): Remove lst parameter. Remove procSym. |
| (CheckIndrX): Remove lst parameter. Remove procSym. |
| (CheckXIndr): Remove bblst and procSym parameters. |
| (CheckRecordField): Remove procSym, op1tok, op2tok and op2. |
| (CheckBecomes): Remove procSym and bblst. |
| (CheckComparison): Remove procSym and bblst. |
| (CheckAddr): Remove procSym parameter. |
| * gm2-gcc/m2expr.cc (m2expr_CSTIntToString): New function. |
| (m2expr_CSTIntToChar): New function. |
| * gm2-gcc/m2expr.def (CSTIntToString): New procedure function |
| declaration. |
| (CSTIntToChar): New procedure function declaration. |
| * gm2-gcc/m2expr.h (m2expr_CSTIntToChar): New prototype. |
| (m2expr_CSTIntToString): New prototype. |
| |
| 2023-09-13 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (GM2_FLAGS): Add -Wcase-enum. |
| (GM2_ISO_FLAGS): Add -Wcase-enum. |
| * gm2-compiler/M2CaseList.mod (EnumerateErrors): Issue |
| singular or plural start text prior to the enum list. |
| Remove unused parameter tokenno. |
| (EmitMissingRangeErrors): New procedure. |
| (MissingCaseBounds): Call EmitMissingRangeErrors. |
| (MissingCaseStatementBounds): Call EmitMissingRangeErrors. |
| * gm2-libs-iso/TextIO.mod: Fix spacing. |
| |
| 2023-09-12 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2CaseList.def (PushCase): Rename parameters |
| r to rec and v to va. Add expr parameter. |
| (MissingCaseStatementBounds): New procedure function. |
| * gm2-compiler/M2CaseList.mod (RangePair): Add expression. |
| (PushCase): Rename parameters r to rec and v to va. Add |
| expr parameter. |
| (RemoveRange): New procedure function. |
| (SubBitRange): Detect the case when the range in the set matches |
| lo..hi. |
| (CheckLowHigh): New procedure. |
| (ExcludeCaseRanges): Rename parameter c to cd. Rename local |
| variables q to cl and r to rp. |
| (High): Remove. |
| (Low): Remove. |
| (DoEnumValues): Remove. |
| (IncludeElement): New procedure. |
| (IncludeElements): New procedure. |
| (ErrorRangeEnum): New procedure. |
| (ErrorRange): Remove. |
| (ErrorRanges): Remove. |
| (appendEnum): New procedure. |
| (appendStr): New procedure. |
| (EnumerateErrors): New procedure. |
| (MissingCaseBounds): Re-implement. |
| (InRangeList): Remove. |
| (MissingCaseStatementBounds): New procedure function. |
| (checkTypes): Re-format. |
| (inRange): Re-format. |
| (TypeCaseBounds): Re-format. |
| * gm2-compiler/M2Error.mod (GetAnnounceScope): Add noscope to |
| case label list. |
| * gm2-compiler/M2GCCDeclare.mod: Replace ForeachFieldEnumerationDo |
| with ForeachLocalSymDo. |
| * gm2-compiler/M2Options.def (SetCaseEnumChecking): New procedure. |
| (CaseEnumChecking): New variable. |
| * gm2-compiler/M2Options.mod (SetCaseEnumChecking): New procedure. |
| (Module initialization): set CaseEnumChecking to FALSE. |
| * gm2-compiler/M2Quads.def (QuadOperator): Alphabetically ordered. |
| * gm2-compiler/M2Quads.mod (IsBackReferenceConditional): Add else |
| clause. |
| (BuildCaseStart): Pass selector expression to InitCaseBounds. |
| (CheckUninitializedVariablesAreUsed): Remove. |
| (IsInlineWithinBlock): Remove. |
| (AsmStatementsInBlock): Remove. |
| (CheckVariablesInBlock): Remove commented code. |
| (BeginVarient): Pass NulSym to InitCaseBounds. |
| * gm2-compiler/M2Range.mod (FoldCaseBounds): New local variable |
| errorGenerated. Add call to MissingCaseStatementBounds. |
| * gm2-compiler/P3Build.bnf (CaseEndStatement): Call ElseCase. |
| * gm2-compiler/PCSymBuild.mod (InitDesExpr): Add else clause. |
| (InitFunction): Add else clause. |
| (InitConvert): Add else clause. |
| (InitLeaf): Add else clause. |
| (InitBinary): Add else clause. |
| (InitUnary): Add else clause. |
| * gm2-compiler/SymbolTable.def (GetNth): Re-write comment. |
| (ForeachFieldEnumerationDo): Re-write comment stating alphabetical |
| traversal. |
| * gm2-compiler/SymbolTable.mod (GetNth): Re-write comment. |
| Add case label for EnumerationSym and call GetItemFromList. |
| (ForeachFieldEnumerationDo): Re-write comment stating alphabetical |
| traversal. |
| (SymEnumeration): Add ListOfFields used for declaration order. |
| (MakeEnumeration): Initialize ListOfFields. |
| (PutFieldEnumeration): Include Field in ListOfFields. |
| * gm2-gcc/m2options.h (M2Options_SetCaseEnumChecking): New |
| function. |
| * gm2-lang.cc (gm2_langhook_handle_option): Add |
| OPT_Wcase_enum case and call M2Options_SetCaseEnumChecking. |
| * lang.opt (Wcase-enum): Add. |
| |
| 2023-09-11 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/111330 |
| * gm2-compiler/M2SymInit.mod (CheckReadBeforeInitQuad): Add |
| case labels LogicalDiffOp, DummyOp, OptParamOp and |
| InitAddressOp. |
| |
| 2023-08-20 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/111085 |
| * gm2-libs/Builtins.def (nexttoward): Alter the second |
| parameter to LONGREAL. |
| (nexttowardf): Alter the second parameter to LONGREAL. |
| * gm2-libs/Builtins.mod (nexttoward): Alter the second |
| parameter to LONGREAL. |
| (nexttowardf): Alter the second parameter to LONGREAL. |
| * gm2-libs/cbuiltin.def (nexttoward): Alter the second |
| parameter to LONGREAL. |
| (nexttowardf): Alter the second parameter to LONGREAL. |
| |
| 2023-08-13 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * Make-lang.in: Update suffix spellings to use 'soext'. |
| Add libc to the plugin link. |
| |
| 2023-08-12 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110779 |
| * gm2-libs-iso/SysClock.mod (EpochTime): New procedure. |
| (GetClock): Call EpochTime if the C time functions are |
| unavailable. |
| * gm2-libs-iso/wrapclock.def (istimezone): New function |
| definition. |
| |
| 2023-08-12 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/108119 |
| * Make-lang.in (M2RTE_PLUGIN_SO): Assigned to |
| plugin/m2rte$(exeext).so if enable_plugin is yes. |
| (m2.all.cross): Replace plugin/m2rte$(soext) with |
| $(M2RTE_PLUGIN_SO). |
| (m2.all.encap): Replace plugin/m2rte$(soext) with |
| $(M2RTE_PLUGIN_SO). |
| (m2.install-plugin): Add dummy rule when enable_plugin |
| is not yes. |
| (plugin/m2rte$(exeext).so): Add dummy rule when enable_plugin |
| is not yes. |
| (m2/stage2/cc1gm2$(exeext)): Replace plugin/m2rte$(soext) with |
| $(M2RTE_PLUGIN_SO). |
| (m2/stage1/cc1gm2$(exeext)): Replace plugin/m2rte$(soext) with |
| $(M2RTE_PLUGIN_SO). |
| * gm2spec.cc (lang_specific_driver): Set need_plugin to false |
| by default. |
| |
| 2023-08-09 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110779 |
| * gm2-libs-iso/SysClock.mod (GetClock): Test GetTimespec |
| return value. |
| (SetClock): Test SetTimespec return value. |
| * gm2-libs-iso/wrapclock.def (GetTimespec): Add integer |
| return type. |
| (SetTimespec): Add integer return type. |
| |
| 2023-08-05 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110779 |
| * gm2-libs-iso/SysClock.mod: Re-implement using wrapclock. |
| * gm2-libs-iso/wrapclock.def: New file. |
| |
| 2023-08-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110161 |
| * gm2-compiler/M2Check.mod (checkProcTypeEquivalence): New |
| procedure function. |
| (checkTypeKindEquivalence): Call checkProcTypeEquivalence |
| if either left or right is a proc type. |
| * gm2-compiler/M2Quads.mod (BuildRelOp): Create |
| combinedTok prior to creating the range check quadruple. |
| Use combinedTok when creating the range check quadruple. |
| |
| 2023-08-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110865 |
| * gm2-compiler/M2Quads.mod (BuildDesignatorArray): |
| Rename t as type and d as dim. New variable result. |
| Allow constants of an array type to be indexed. |
| |
| 2023-07-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110174 |
| * gm2-compiler/M2GCCDeclare.def (PromoteToCString): New procedure |
| function. |
| * gm2-compiler/M2GCCDeclare.mod (PromoteToCString): New procedure |
| function. |
| * gm2-compiler/M2GenGCC.mod (BuildTreeFromInterface): Call |
| skip_const_decl before chaining the parameter value. |
| Use PromoteToCString to ensure the string is nul terminated. |
| (CodeInline): Remove all parameters and replace with quad. |
| Use GetQuadOtok to get operand token numbers. |
| Remove call to DeclareConstant and replace it with PromoteToCString. |
| * gm2-compiler/M2Quads.def (BuildInline): Rename into ... |
| (BuildAsm): ... this. |
| * gm2-compiler/M2Quads.mod: (BuildInline): Rename into ... |
| (BuildAsm): ... this. |
| (BuildAsmElement): Add debugging. |
| * gm2-compiler/P1Build.bnf: Remove import of BuildInline. |
| * gm2-compiler/P2Build.bnf: Remove import of BuildInline. |
| * gm2-compiler/P3Build.bnf: Remove import of BuildInline and |
| import BuildAsm. |
| * gm2-compiler/PHBuild.bnf: Remove import of BuildInline. |
| * gm2-libs-iso/SysClock.mod (foo): Remove. |
| * gm2-libs/FIO.mod (BufferedRead): Rename parameter a to dest. |
| Rename variable t to src. |
| * m2pp.cc (pf): Correct block comment. |
| (pe): Correct block comment. |
| (m2pp_asm_expr): New function. |
| (m2pp_statement): Call m2pp_asm_expr. |
| |
| 2023-07-22 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110631 |
| * gm2-libs/FIO.def (ReadAny): Correct comment as |
| HIGH (a) + 1 is number of bytes. |
| (WriteAny): Correct comment as HIGH (a) + 1 is number of |
| bytes. |
| * gm2-libs/FIO.mod (ReadAny): Correct comment as |
| HIGH (a) + 1 is number of bytes. Also pass HIGH (a) + 1 |
| to BufferedRead. |
| (WriteAny): Correct comment as HIGH (a) + 1 is number of |
| bytes. Also pass HIGH (a) + 1 to BufferedWrite. |
| (BufferedWrite): Rename parameter a to src, rename variable |
| t to dest. Correct parameter order to memcpy. |
| |
| 2023-07-20 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2SymInit.mod (IsExempt): Remove parameter exemption. |
| (CheckIndrX): Call SetupLAlias between lhs and content. |
| (trashParam): Re-write. |
| (SetVarLRInitialized): Indicate shadow and heap are initialized. |
| Call SetupIndr between shadow and heap. |
| * gm2-compiler/P2SymBuild.mod: Import |
| PutProcedureParameterHeapVars. |
| (EndBuildProcedure): Call PutProcedureParameterHeapVars. |
| * gm2-compiler/SymbolTable.def (GetParameterHeapVar): New |
| procedure function. |
| (PutProcedureParameterHeapVars): New procedure function. |
| * gm2-compiler/SymbolTable.mod (MakeParameterHeapVar): New |
| procedure function. |
| (GetParameterHeapVar): New procedure function. |
| (PuttParameterHeapVar): New procedure function. |
| (PutProcedureParameterHeapVars): New procedure. |
| (VarParam): HeapVar new record field. |
| (PutVarParam): HeapVar assigned to NulSym. |
| |
| 2023-07-19 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110284 |
| * Make-lang.in (m2_OBJS): Add m2/gm2-gcc/rtegraph.o and |
| m2/gm2-compiler-boot/m2flex.o. |
| (c-family/m2pp.o): Remove. |
| * Make-maintainer.in (c-family/m2pp.o): Add. |
| |
| 2023-07-19 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Quads.mod (BuildDifAdrFunction): Removed |
| unnecessary in error message. Use vartok for location. |
| (BuildOddFunction): Use optok for location. |
| (BuildAbsFunction): Use vartok for location. Bugfix set vartok. |
| (BuildCapFunction): Use optok for location. |
| (BuildOrdFunction): Use optok for location and correct format |
| specifier. |
| (BuildShiftFunction): Use vartok for location. |
| (BuildRotateFunction): Use vartok for location. |
| (BuildTruncFunction): Use vartok for location. |
| (BuildFloatFunction): Use vartok for location. |
| (BuildReFunction): Use vartok for location. |
| (BuildImFunction): Use vartok for location. |
| * gm2-compiler/M2SymInit.mod (trashParam): Remove commented code. |
| |
| 2023-07-19 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Quads.mod (BuildRealFuncProcCall): Set the trash |
| parameter value to NIL if DEALLOCATE is detected. |
| * gm2-compiler/M2SymInit.mod (CheckDeferredRecordAccess): Pass |
| tok to SetVarInitialized. Pass tok to GetVarComponentInitialized. |
| (ComponentFindVar): Add tok parameter. Check aliased pointer |
| against Nil and generate warning if necessary. |
| (deRefComponent): Add tok and sym parameters and pass them to |
| getContent. |
| (SetVarComponentInitialized): Add tok parameter. Pass tok to |
| ComponentFindVar. Pass tok and sym to deRefComponent. |
| (GetVarComponentInitialized): Add tok parameter. Pass tok to |
| ComponentFindVar. Pass tok to deRefComponent. |
| (SetVarInitialized): Add tok parameter. Pass tok to |
| SetVarComponentInitialized. |
| (doGetVarInitialized): Add tok parameter. Pass tok to |
| GetVarComponentInitialized. |
| (CheckXIndr): Pass lhs and lhstok to getContent. |
| (CheckIndrX): Pass rhs and rhstok to getContent. |
| (CheckBecomes): Pass destok to ComponentFindVar. Pass des and |
| destok to deRefComponent. |
| (CheckAddr): Pass contenttok to GetVarInitialized. Pass ptrtok |
| to SetVarInitialized. |
| (CheckReadBeforeInitQuad): Pass op1tok to SetVarInitialized for |
| op1 cases and op3tok for op3 cases. |
| (trashParam): Get operand tokens. Pass op3tok to |
| SetVarInitialized. Pass op3 and op3tok to getContent. |
| Alias ptr to NIL if procedure is DEALLOCATE. Pass op3tok to |
| SetVarInitialized. |
| (IsDeallocate): New procedure function. |
| (DetectTrash): Use IsDeallocate. |
| (SetupLAlias): Allow exp to be Nil. |
| (getContent): Generate warning message if ptr is Nil. |
| |
| 2023-07-18 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in: Minor formatting change. |
| * gm2-compiler/M2GCCDeclare.mod |
| (DeclareUnboundedProcedureParameters): Rename local variables. |
| (WalkUnboundedProcedureParameters): Rename local variables. |
| (DoVariableDeclaration): Avoid declaration of a variable if |
| it is on the heap (used by static analysis only). |
| * gm2-compiler/M2GenGCC.mod: Formatting. |
| * gm2-compiler/M2Quads.def (GetQuadTrash): New procedure function. |
| * gm2-compiler/M2Quads.mod (GetQuadTrash): New procedure function. |
| (QuadFrame): Add Trash field. |
| (BuildRealFuncProcCall): Detect ALLOCATE and DEALLOCATE and create |
| a heap variable for parameter 1 saving it as the trashed variable |
| for static analysis. |
| (GenQuadOTrash): New procedure. |
| (DisplayQuadRange): Bugfix. Write the scope number. |
| * gm2-compiler/M2SymInit.mod: Rewritten to separate LValue |
| equivalence from LValue to RValue pairings. Comprehensive |
| detection of variant record implemented. Allow dereferencing |
| of pointers through LValue/RValue chains. |
| * gm2-compiler/SymbolTable.def (PutVarHeap): New procedure. |
| (IsVarHeap): New procedure function. |
| (ForeachParamSymDo): New procedure. |
| * gm2-compiler/SymbolTable.mod (PutVarHeap): New procedure. |
| (IsVarHeap): New procedure function. |
| (ForeachParamSymDo): New procedure. |
| (MakeVariableForParam): Reformatted. |
| (CheckForUnknownInModule): Reformatted. |
| (SymVar): Add field Heap. |
| (MakeVar): Assign Heap to FALSE. |
| |
| 2023-07-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| * Make-lang.in (m2/boot-bin/mklink$(exeext)): Add $(LDFLAGS). |
| |
| 2023-07-11 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2BasicBlock.def (InitBasicBlocksFromRange): New |
| parameter ScopeSym. |
| * gm2-compiler/M2BasicBlock.mod (ConvertQuads2BasicBlock): New |
| parameter ScopeSym. |
| (InitBasicBlocksFromRange): New parameter ScopeSym. Call |
| ConvertQuads2BasicBlock with ScopeSym. |
| (DisplayBasicBlocks): Uncomment. |
| * gm2-compiler/M2Code.mod: Replace VariableAnalysis with |
| ScopeBlockVariableAnalysis. |
| (InitialDeclareAndOptiomize): Add parameter scope. |
| (SecondDeclareAndOptimize): Add parameter scope. |
| * gm2-compiler/M2GCCDeclare.mod (DeclareConstructor): Add scope |
| parameter to DeclareTypesConstantsProceduresInRange. |
| (DeclareTypesConstantsProceduresInRange): New parameter scope. |
| Pass scope to DisplayQuadRange. Reformatted. |
| * gm2-compiler/M2GenGCC.def (ConvertQuadsToTree): New parameter |
| scope. |
| * gm2-compiler/M2GenGCC.mod (ConvertQuadsToTree): New parameter |
| scope. |
| * gm2-compiler/M2Optimize.mod (KnownReachable): New parameter |
| scope. |
| * gm2-compiler/M2Options.def (SetUninitVariableChecking): Add |
| arg parameter. |
| * gm2-compiler/M2Options.mod (SetUninitVariableChecking): Add |
| arg parameter and set boolean UninitVariableChecking and |
| UninitVariableConditionalChecking. |
| (UninitVariableConditionalChecking): New boolean set to FALSE. |
| * gm2-compiler/M2Quads.def (IsGoto): New procedure function. |
| (DisplayQuadRange): Add scope parameter. |
| (LoopAnalysis): Add scope parameter. |
| * gm2-compiler/M2Quads.mod: Import PutVarArrayRef. |
| (IsGoto): New procedure function. |
| (LoopAnalysis): Add scope parameter and use MetaErrorT1 instead |
| of WarnStringAt. |
| (BuildStaticArray): Call PutVarArrayRef. |
| (BuildDynamicArray): Call PutVarArrayRef. |
| (DisplayQuadRange): Add scope parameter. |
| (GetM2OperatorDesc): Add relational condition cases. |
| * gm2-compiler/M2Scope.def (ScopeProcedure): Add parameter. |
| * gm2-compiler/M2Scope.mod (DisplayScope): Pass scopeSym to |
| DisplayQuadRange. |
| (ForeachScopeBlockDo): Pass scopeSym to p. |
| * gm2-compiler/M2SymInit.def (VariableAnalysis): Rename to ... |
| (ScopeBlockVariableAnalysis): ... this. |
| * gm2-compiler/M2SymInit.mod (ScopeBlockVariableAnalysis): Add |
| scope parameter. |
| (bbEntry): New pointer to record. |
| (bbArray): New array. |
| (bbFreeList): New variable. |
| (errorList): New list. |
| (IssueConditional): New procedure. |
| (GenerateNoteFlow): New procedure. |
| (IssueWarning): New procedure. |
| (IsUniqueWarning): New procedure. |
| (CheckDeferredRecordAccess): Re-implement. |
| (CheckBinary): Add warning and lst parameters. |
| (CheckUnary): Add warning and lst parameters. |
| (CheckXIndr): Add warning and lst parameters. |
| (CheckIndrX): Add warning and lst parameters. |
| (CheckBecomes): Add warning and lst parameters. |
| (CheckComparison): Add warning and lst parameters. |
| (CheckReadBeforeInitQuad): Add warning and lst parameters to all |
| Check procedures. Add all case quadruple clauses. |
| (FilterCheckReadBeforeInitQuad): Add warning and lst parameters. |
| (CheckReadBeforeInitFirstBasicBlock): Add warning and lst parameters. |
| (bbArrayKill): New procedure. |
| (DumpBBEntry): New procedure. |
| (DumpBBArray): New procedure. |
| (DumpBBSequence): New procedure. |
| (TestBBSequence): New procedure. |
| (CreateBBPermultations): New procedure. |
| (ScopeBlockVariableAnalysis): New procedure. |
| (GetOp3): New procedure. |
| (GenerateCFG): New procedure. |
| (NewEntry): New procedure. |
| (AppendEntry): New procedure. |
| (init): Initialize bbFreeList and errorList. |
| * gm2-compiler/SymbolTable.def (PutVarArrayRef): New procedure. |
| (IsVarArrayRef): New procedure function. |
| * gm2-compiler/SymbolTable.mod (SymVar): ArrayRef new field. |
| (MakeVar): Set ArrayRef to FALSE. |
| (PutVarArrayRef): New procedure. |
| (IsVarArrayRef): New procedure function. |
| * gm2-gcc/init.cc (_M2_M2SymInit_init): New prototype. |
| (init_PerCompilationInit): Add call to _M2_M2SymInit_init. |
| * gm2-gcc/m2options.h (M2Options_SetUninitVariableChecking): |
| New definition. |
| * gm2-lang.cc (gm2_langhook_handle_option): Add new case |
| OPT_Wuninit_variable_checking_. |
| * lang.opt: Wuninit-variable-checking= new entry. |
| |
| 2023-07-03 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110125 |
| * Make-lang.in (GM2-COMP-BOOT-DEFS): Add M2SymInit.def. |
| (GM2-COMP-BOOT-MODS): Add M2SymInit.mod. |
| * gm2-compiler/M2BasicBlock.mod: Formatting changes. |
| * gm2-compiler/M2Code.mod: Remove import of VariableAnalysis from |
| M2Quads. Import VariableAnalysis from M2SymInit.mod. |
| * gm2-compiler/M2GCCDeclare.mod (PrintVerboseFromList): |
| Add debugging print for a component. |
| (TypeConstFullyDeclared): Call RememberType for every type. |
| * gm2-compiler/M2GenGCC.mod (CodeReturnValue): Add parameter to |
| GetQuadOtok. |
| (CodeBecomes): Add parameter to GetQuadOtok. |
| (CodeXIndr): Add parameter to GetQuadOtok. |
| * gm2-compiler/M2Optimize.mod (ReduceBranch): Reformat and |
| preserve operand token positions when reducing the branch |
| quadruples. |
| (ReduceGoto): Reformat. |
| (FoldMultipleGoto): Reformat. |
| (KnownReachable): Reformat. |
| * gm2-compiler/M2Options.def (UninitVariableChecking): New |
| variable declared and exported. |
| (SetUninitVariableChecking): New procedure. |
| * gm2-compiler/M2Options.mod (SetWall): Set |
| UninitVariableChecking. |
| (SetUninitVariableChecking): New procedure. |
| * gm2-compiler/M2Quads.def (PutQuadOtok): Exported and declared. |
| (VariableAnalysis): Removed. |
| * gm2-compiler/M2Quads.mod (PutQuadOtok): New procedure. |
| (doVal): Reformatted. |
| (MarkAsWrite): Reformatted. |
| (MarkArrayAsWritten): Reformatted. |
| (doIndrX): Use PutQuadOtok. |
| (MakeRightValue): Use GenQuadOtok. |
| (MakeLeftValue): Use GenQuadOtok. |
| (CheckReadBeforeInitialized): Remove. |
| (IsNeverAltered): Reformat. |
| (DebugLocation): New procedure. |
| (BuildDesignatorPointer): Use GenQuadO to preserve operand token |
| position. |
| (BuildRelOp): Use GenQuadOtok ditto. |
| * gm2-compiler/SymbolTable.def (VarCheckReadInit): New procedure. |
| (VarInitState): New procedure. |
| (PutVarInitialized): New procedure. |
| (PutVarFieldInitialized): New procedure function. |
| (GetVarFieldInitialized): New procedure function. |
| (PrintInitialized): New procedure. |
| * gm2-compiler/SymbolTable.mod (VarCheckReadInit): New procedure. |
| (VarInitState): New procedure. |
| (PutVarInitialized): New procedure. |
| (PutVarFieldInitialized): New procedure function. |
| (GetVarFieldInitialized): New procedure function. |
| (PrintInitialized): New procedure. |
| (LRInitDesc): New type. |
| (SymVar): InitState new field. |
| (MakeVar): Initialize InitState. |
| * gm2-gcc/m2options.h (M2Options_SetUninitVariableChecking): |
| New function declaration. |
| * gm2-lang.cc (gm2_langhook_handle_option): Detect |
| OPT_Wuninit_variable_checking and call SetUninitVariableChecking. |
| * lang.opt: Add Wuninit-variable-checking. |
| * gm2-compiler/M2SymInit.def: New file. |
| * gm2-compiler/M2SymInit.mod: New file. |
| |
| 2023-06-30 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR testsuite/108835 |
| * gm2-libs/RTint.mod: Do not use NIL timeout setting on select, |
| test failures sequentially, finishing on the first success. |
| |
| 2023-06-18 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110284 |
| * Make-lang.in (m2_OBJS): Assign $(GM2_C_OBJS). |
| (GM2_C_OBJS): Remove m2/stor-layout.o. |
| (m2/stor-layout.o): Remove rule. |
| * gm2-gcc/gcc-consolidation.h (rtl.h): Remove include. |
| (df.h): Remove include. |
| (except.h): Remove include. |
| |
| 2023-06-15 Marek Polacek <polacek@redhat.com> |
| |
| * Make-lang.in: New var, GM2_PICFLAGS. Use it. |
| |
| 2023-06-13 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (check-format-error): New rule. |
| * gm2-compiler/M2MetaError.mod (op): Add calls InternalError if |
| digits are detected. |
| * gm2-compiler/M2Quads.mod (BuildForToByDo): Bugfix to format |
| specifier. |
| (BuildLengthFunction): Bugfix to format specifiers. |
| (BuildOddFunction): Bugfix to format specifiers. |
| (BuildAbsFunction): Bugfix to format specifiers. |
| (BuildCapFunction): Bugfix to format specifiers. |
| (BuildChrFunction): Bugfix to format specifiers. |
| (BuildOrdFunction): Bugfix to format specifiers. |
| (BuildMakeAdrFunction): Bugfix to format specifiers. |
| (BuildSizeFunction): Bugfix to format specifiers. |
| (BuildBitSizeFunction): Bugfix to format specifiers. |
| * tools-src/checkmeta.py: New file. |
| |
| 2023-06-12 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110189 |
| * gm2-compiler/M2Quads.mod (BuildAbsFunction): Replace abort |
| format specifier. |
| (BuildValFunction): Replace abort format specifier. |
| (BuildCastFunction): Replace abort format specifier. |
| (BuildMinFunction): Replace abort format specifier. |
| (BuildMaxFunction): Replace abort format specifier. |
| (BuildTruncFunction): Replace abort format specifier. |
| * gm2-compiler/P3Build.bnf (Pass1): Remove. |
| (Pass2): Remove. |
| (Pass3): Remove. |
| (Expect): Add Pass1. |
| (AsmStatement): Remove Pass3. |
| (AsmOperands): Remove Pass3. |
| (AsmOperandSpec): Remove Pass3. |
| (AsmInputElement): Remove Pass3. |
| (AsmOutputElement): Remove Pass3. |
| (AsmTrashList): Remove Pass3. |
| |
| 2023-06-12 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110126 |
| * gm2-compiler/M2Quads.def (BuildAsmElement): Remove |
| trash parameter. |
| (BuildAsmTrash): New procedure. |
| * gm2-compiler/M2Quads.mod (BuildAsmTrash): New procedure. |
| (BuildAsmElement): Remove trash parameter. |
| * gm2-compiler/P3Build.bnf (AsmTrashList): Rewrite. |
| |
| 2023-06-08 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110126 |
| * gm2-compiler/M2GenGCC.mod (BuildTreeFromInterface): Remove |
| tokenno parameter. Use object tok instead of tokenno. |
| (BuildTrashTreeFromInterface): Use object tok instead of |
| GetDeclaredMod. |
| (CodeInline): Remove tokenno from parameter list to BuildTreeFromInterface. |
| * gm2-compiler/M2Quads.def (BuildAsmElement): Exported and |
| defined. |
| * gm2-compiler/M2Quads.mod (BuildOptimizeOff): Reformatted. |
| (BuildInline): Reformatted. |
| (BuildLineNo): Reformatted. |
| (UseLineNote): Reformatted. |
| (BuildAsmElement): New procedure. |
| * gm2-compiler/P0SyntaxCheck.bnf (AsmOperands): Use |
| ConstExpression instead of string. |
| (AsmElement): Use ConstExpression instead of string. |
| (TrashList): Use ConstExpression instead of string. |
| * gm2-compiler/P1Build.bnf (AsmOperands): Use |
| ConstExpression instead of string. |
| (AsmElement): Use ConstExpression instead of string. |
| (TrashList): Use ConstExpression instead of string. |
| * gm2-compiler/P2Build.bnf (AsmOperands): Use |
| ConstExpression instead of string. |
| (AsmElement): Use ConstExpression instead of string. |
| (TrashList): Use ConstExpression instead of string. |
| * gm2-compiler/P3Build.bnf (AsmOperands): Rewrite. |
| (AsmOperandSpec): Rewrite. |
| (AsmOutputList): New rule. |
| (AsmInputList): New rule. |
| (TrashList): Rewrite. |
| * gm2-compiler/PCBuild.bnf (AsmOperands): Use |
| ConstExpression instead of string. |
| (AsmElement): Use ConstExpression instead of string. |
| (TrashList): Use ConstExpression instead of string. |
| * gm2-compiler/PHBuild.bnf (AsmOperands): Use |
| ConstExpression instead of string. |
| (AsmElement): Use ConstExpression instead of string. |
| (TrashList): Use ConstExpression instead of string. |
| * gm2-compiler/SymbolTable.def (PutRegInterface): |
| Rewrite interface. |
| (GetRegInterface): Rewrite interface. |
| * gm2-compiler/SymbolTable.mod (SetFirstUsed): New procedure. |
| (PutFirstUsed): New procedure. |
| (PutRegInterface): Rewrite. |
| (GetRegInterface): Rewrite. |
| |
| 2023-06-07 Jakub Jelinek <jakub@redhat.com> |
| |
| * Make-lang.in: Build $(generated_files) before building |
| all $(GM2_C_OBJS). |
| |
| 2023-06-07 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110019 |
| * gm2-compiler/SymbolKey.mod (SearchAndDo): Reformatted. |
| (ForeachNodeDo): Reformatted. |
| * gm2-compiler/SymbolTable.mod (AddListify): Join list |
| with "," or "and" if more than one word is in the list. |
| * m2.flex: Remove -1 from atoi(yytext) line number. |
| |
| 2023-06-03 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/110003 |
| * gm2-compiler/P2SymBuild.mod (GetParameterShadowVar): Import. |
| (CheckFormalParameterSection): Call PutDeclared for the shadow |
| variable associated with the parameter. |
| |
| 2023-05-24 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109952 |
| * Make-maintainer.in: Change header to include emacs file mode. |
| * gm2-compiler/M2GenGCC.mod (BuildHighFromChar): Check whether |
| operand is a constant string and is nul terminated then return one. |
| * gm2-compiler/PCSymBuild.mod (WalkFunction): Add default return |
| TRUE. Static analysis missing return path fix. |
| * gm2-libs/IO.mod (Init): Rewrite to help static analysis. |
| * target-independent/m2/gm2-libs.texi: Rebuild. |
| |
| 2023-05-19 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109908 |
| * gm2-libs-iso/Strings.mod (Delete): Re-implement. |
| |
| 2023-05-18 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
| |
| * gm2-gcc/m2builtins.cc (doradix): Use _P defines from tree.h. |
| (doplaces): Ditto. |
| (doexponentmin): Ditto. |
| (doexponentmax): Ditto. |
| (dolarge): Ditto. |
| (dosmall): Ditto. |
| (dogUnderflow): Ditto. |
| * gm2-gcc/m2convert.cc (unsafe_conversion_p): Ditto. |
| * gm2-gcc/m2expr.cc (m2expr_build_unary_op_check): Ditto. |
| (m2expr_build_binary_op_check): Ditto. |
| * gm2-gcc/m2tree.cc (m2tree_is_var): Ditto. |
| * gm2-gcc/m2treelib.cc (build_modify_expr): Ditto. |
| * gm2-gcc/m2type.cc (gm2_finish_decl): Ditto. |
| * m2pp.cc (hextree): Ditto. |
| (m2pp_call_expr): Ditto. |
| |
| 2023-05-17 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs-iso/LongWholeIO.mod (WriteInt): Only request a |
| sign if the value is < 0. |
| * gm2-libs-iso/ShortWholeIO.mod (WriteInt): Only request a |
| sign if the value is < 0. |
| * gm2-libs-iso/WholeIO.mod (WriteInt): Only request a sign |
| if the value is < 0. |
| * gm2-libs-iso/WholeStr.mod (WriteInt): Only request a sign |
| if the value is < 0. |
| |
| 2023-05-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109879 |
| * gm2-libs-iso/LongIO.mod (ReadReal): Call SkipSpaces. |
| * gm2-libs-iso/LongWholeIO.mod (ReadInt): Call SkipSpaces. |
| (ReadCard): Call SkipSpaces. |
| * gm2-libs-iso/RealIO.mod (ReadReal): Call SkipSpaces. |
| * gm2-libs-iso/ShortWholeIO.mod: (ReadInt): Call SkipSpaces. |
| (ReadCard): Call SkipSpaces. |
| * gm2-libs-iso/TextIO.mod: Import SkipSpaces. |
| * gm2-libs-iso/WholeIO.mod (ReadInt): Call SkipSpaces. |
| (ReadCard): Call SkipSpaces. |
| * gm2-libs-iso/TextUtil.def: New file. |
| * gm2-libs-iso/TextUtil.mod: New file. |
| |
| 2023-05-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/108344 |
| * gm2-libs-coroutines/TimerHandler.mod (EnableLED): New constant. |
| (Timer): Test EnableLED before switching on the scroll LED. |
| |
| 2023-05-12 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109830 |
| * gm2-libs-iso/SeqFile.mod (newCid): New parameter toAppend |
| used to select FIO.OpenForRandom. |
| (OpenRead): Pass extra parameter to newCid. |
| (OpenWrite): Pass extra parameter to newCid. |
| (OpenAppend): Pass extra parameter to newCid. |
| |
| 2023-05-11 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109810 |
| * gm2-compiler/M2ALU.mod (ConvertConstToType): Use |
| PrepareCopyString in place of DoCopyString. |
| * gm2-compiler/M2GenGCC.def (DoCopyString): Rename to ... |
| (PrepareCopyString): ... this. |
| * gm2-compiler/M2GenGCC.mod (CodeStatement): Call CodeReturnValue |
| with a single parameter. Call CodeXIndr with a single parameter. |
| (CodeReturnValue): Remove parameters and replace with a single |
| quadno. Reimplement using PrepareCopyString. Issue error |
| if the string exceeds designator space. |
| (DoCopyString): Reimplement and rename to ... |
| (PrepareCopyString): ... this. |
| (CodeXIndr): Remove parameters and replace with a single |
| quadno. Reimplement using PrepareCopyString. Issue error |
| if the string exceeds designator space. |
| (CodeBecomes): Remove parameters and replace with a single |
| quadno. Reimplement using PrepareCopyString. Issue error |
| if the string exceeds designator space. |
| * gm2-compiler/M2Quads.def (BuildReturn): Rename parameter to |
| tokreturn. |
| * gm2-compiler/M2Quads.mod (BuildReturn): Rename parameter to |
| tokreturn. Rename tokno to tokcombined. |
| |
| 2023-05-09 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109779 |
| * gm2-libs-iso/RTgen.mod (doLook): Remove old. |
| Remove re-assignment of result. |
| * gm2-libs-iso/TextIO.mod (CanRead): Rename into ... |
| (CharAvailable): ... this. |
| (DumpState): New procedure. |
| (SetResult): Rename as SetNul. |
| (WasGoodChar): Rename into ... |
| (EofOrEoln): ... this. |
| (SkipLine): Skip over the newline. |
| (ReadString): Flip THEN ELSE statements after testing for |
| EofOrEoln. |
| (ReadRestLine): Flip THEN ELSE statements after testing for |
| EofOrEoln. |
| |
| 2023-05-04 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109729 |
| * gm2-compiler/M2GenGCC.mod (CodeStatement): Detect |
| ArithAddOp and call CodeAddChecked. |
| (ResolveConstantExpressions): Detect ArithAddOp and call |
| FoldArithAdd. |
| (FoldArithAdd): New procedure. |
| (FoldAdd): Refactor to use FoldArithAdd. |
| * gm2-compiler/M2Quads.def (QuadOperator): Add ArithAddOp. |
| * gm2-compiler/M2Quads.mod: Remove commented imports. |
| (QuadFrame): Changed comments to use GNU coding standards. |
| (ArithPlusTok): New global variable. |
| (BuildForToByDo): Use ArithPlusTok instead of PlusTok. |
| (MakeOp): Detect ArithPlusTok and return ArithAddOp. |
| (WriteQuad): Add ArithAddOp clause. |
| (WriteOperator): Add ArithAddOp clause. |
| (Init): Initialize ArithPlusTok. |
| |
| 2023-05-04 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109675 |
| * Make-lang.in (MC-LIB-DEFS): Remove M2LINK.def. |
| (BUILD-PGE-O): Remove GM2LINK.o. |
| * Make-maintainer.in (PPG-DEFS): New define. |
| (PPG-LIB-DEFS): Remove M2LINK.def. |
| (BUILD-BOOT-PPG-H): Add PPGDEF .h files. |
| (m2/ppg$(exeext)): Remove M2LINK.o |
| (PGE-DEPS): New define. |
| (m2/pg$(exeext)): Remove M2LINK.o. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Add -Im2/gm2-pge-boot. |
| (m2/pge$(exeext)): Remove M2LINK.o. |
| (pge-maintainer): Re-implement. |
| (pge-libs-push): Re-implement. |
| (m2/m2obj3/cc1gm2$(exeext)): Remove M2LINK.o. |
| * gm2-libs/DynamicStrings.mod (writeAddress): Re-implement |
| using snprintf. |
| * gm2-libs/M2Dependent.mod: Remove commented out imports. |
| * mc-boot/GDynamicStrings.cc: Rebuild. |
| * mc-boot/GFIO.cc: Rebuild. |
| * mc-boot/GFormatStrings.cc: Rebuild. |
| * mc-boot/GM2Dependent.cc: Rebuild. |
| * mc-boot/GM2Dependent.h: Rebuild. |
| * mc-boot/GM2RTS.cc: Rebuild. |
| * mc-boot/GM2RTS.h: Rebuild. |
| * mc-boot/GRTExceptions.cc: Rebuild. |
| * mc-boot/GRTint.cc: Rebuild. |
| * mc-boot/GSFIO.cc: Rebuild. |
| * mc-boot/GStringConvert.cc: Rebuild. |
| * mc-boot/Gdecl.cc: Rebuild. |
| * pge-boot/GASCII.cc: Rebuild. |
| * pge-boot/GASCII.h: Rebuild. |
| * pge-boot/GArgs.cc: Rebuild. |
| * pge-boot/GArgs.h: Rebuild. |
| * pge-boot/GAssertion.cc: Rebuild. |
| * pge-boot/GAssertion.h: Rebuild. |
| * pge-boot/GBreak.h: Rebuild. |
| * pge-boot/GCmdArgs.h: Rebuild. |
| * pge-boot/GDebug.cc: Rebuild. |
| * pge-boot/GDebug.h: Rebuild. |
| * pge-boot/GDynamicStrings.cc: Rebuild. |
| * pge-boot/GDynamicStrings.h: Rebuild. |
| * pge-boot/GEnvironment.h: Rebuild. |
| * pge-boot/GFIO.cc: Rebuild. |
| * pge-boot/GFIO.h: Rebuild. |
| * pge-boot/GFormatStrings.h:: Rebuild. |
| * pge-boot/GFpuIO.h:: Rebuild. |
| * pge-boot/GIO.cc: Rebuild. |
| * pge-boot/GIO.h: Rebuild. |
| * pge-boot/GIndexing.cc: Rebuild. |
| * pge-boot/GIndexing.h: Rebuild. |
| * pge-boot/GLists.cc: Rebuild. |
| * pge-boot/GLists.h: Rebuild. |
| * pge-boot/GM2Dependent.cc: Rebuild. |
| * pge-boot/GM2Dependent.h: Rebuild. |
| * pge-boot/GM2EXCEPTION.cc: Rebuild. |
| * pge-boot/GM2EXCEPTION.h: Rebuild. |
| * pge-boot/GM2RTS.cc: Rebuild. |
| * pge-boot/GM2RTS.h: Rebuild. |
| * pge-boot/GNameKey.cc: Rebuild. |
| * pge-boot/GNameKey.h: Rebuild. |
| * pge-boot/GNumberIO.cc: Rebuild. |
| * pge-boot/GNumberIO.h: Rebuild. |
| * pge-boot/GOutput.cc: Rebuild. |
| * pge-boot/GOutput.h: Rebuild. |
| * pge-boot/GPushBackInput.cc: Rebuild. |
| * pge-boot/GPushBackInput.h: Rebuild. |
| * pge-boot/GRTExceptions.cc: Rebuild. |
| * pge-boot/GRTExceptions.h: Rebuild. |
| * pge-boot/GSArgs.h: Rebuild. |
| * pge-boot/GSEnvironment.h: Rebuild. |
| * pge-boot/GSFIO.cc: Rebuild. |
| * pge-boot/GSFIO.h: Rebuild. |
| * pge-boot/GSYSTEM.h: Rebuild. |
| * pge-boot/GScan.h: Rebuild. |
| * pge-boot/GStdIO.cc: Rebuild. |
| * pge-boot/GStdIO.h: Rebuild. |
| * pge-boot/GStorage.cc: Rebuild. |
| * pge-boot/GStorage.h: Rebuild. |
| * pge-boot/GStrCase.cc: Rebuild. |
| * pge-boot/GStrCase.h: Rebuild. |
| * pge-boot/GStrIO.cc: Rebuild. |
| * pge-boot/GStrIO.h: Rebuild. |
| * pge-boot/GStrLib.cc: Rebuild. |
| * pge-boot/GStrLib.h: Rebuild. |
| * pge-boot/GStringConvert.h: Rebuild. |
| * pge-boot/GSymbolKey.cc: Rebuild. |
| * pge-boot/GSymbolKey.h: Rebuild. |
| * pge-boot/GSysExceptions.h: Rebuild. |
| * pge-boot/GSysStorage.cc: Rebuild. |
| * pge-boot/GSysStorage.h: Rebuild. |
| * pge-boot/GTimeString.h: Rebuild. |
| * pge-boot/GUnixArgs.h: Rebuild. |
| * pge-boot/Gbnflex.cc: Rebuild. |
| * pge-boot/Gbnflex.h: Rebuild. |
| * pge-boot/Gdtoa.h: Rebuild. |
| * pge-boot/Gerrno.h: Rebuild. |
| * pge-boot/Gldtoa.h: Rebuild. |
| * pge-boot/Glibc.h: Rebuild. |
| * pge-boot/Glibm.h: Rebuild. |
| * pge-boot/Gpge.cc: Rebuild. |
| * pge-boot/Gtermios.h: Rebuild. |
| * pge-boot/Gwrapc.h: Rebuild. |
| * mc-boot/GM2LINK.h: Removed. |
| * pge-boot/GM2LINK.cc: Removed. |
| * pge-boot/GM2LINK.h: Removed. |
| |
| 2023-04-30 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/SymbolTable.mod (ConstLitPoolEntry): New |
| pointer to record. |
| (ConstLitSym): New field RangeError. |
| (ConstLitPoolTree): New SymbolTree representing name to |
| index. |
| (ConstLitArray): New dynamic array containing pointers |
| to a ConstLitPoolEntry. |
| (CreateConstLit): New procedure function. |
| (LookupConstLitPoolEntry): New procedure function. |
| (AddConstLitPoolEntry): New procedure function. |
| (MakeConstLit): Re-implemented to check the constant lit |
| pool before calling CreateConstLit. |
| * m2.flex: Add ability to decode binary constant literals. |
| |
| 2023-04-26 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/108121 |
| * gm2-compiler/M2ALU.mod (Less): Reformatted. |
| * gm2-compiler/SymbolTable.mod (DetermineSizeOfConstant): Remove |
| from import. |
| (ConstantStringExceedsZType): Import. |
| (GetConstLitType): Re-implement using ConstantStringExceedsZType. |
| * gm2-gcc/m2decl.cc (m2decl_DetermineSizeOfConstant): Remove. |
| (m2decl_ConstantStringExceedsZType): New function. |
| (m2decl_BuildConstLiteralNumber): Re-implement. |
| * gm2-gcc/m2decl.def (DetermineSizeOfConstant): Remove. |
| (ConstantStringExceedsZType): New function. |
| * gm2-gcc/m2decl.h (m2decl_DetermineSizeOfConstant): Remove. |
| (m2decl_ConstantStringExceedsZType): New function. |
| * gm2-gcc/m2expr.cc (append_digit): Remove. |
| (m2expr_interpret_integer): Remove. |
| (append_m2_digit): Remove. |
| (m2expr_StrToWideInt): New function. |
| (m2expr_interpret_m2_integer): Remove. |
| * gm2-gcc/m2expr.def (CheckConstStrZtypeRange): New function. |
| * gm2-gcc/m2expr.h (m2expr_StrToWideInt): New function. |
| * gm2-gcc/m2type.cc (build_m2_word64_type_node): New function. |
| (build_m2_ztype_node): New function. |
| (m2type_InitBaseTypes): Call build_m2_ztype_node. |
| * gm2-lang.cc (gm2_type_for_size): Re-write using early returns. |
| |
| 2023-04-21 Arsen Arsenović <arsen@aarsen.me> |
| |
| * Make-lang.in: Remove references to $(P). |
| * Make-maintainer.in: Ditto. |
| |
| 2023-04-21 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109586 |
| * gm2-gcc/m2tree.cc (m2tree_IsAConstant): Add (TREE_CODE |
| (t) == CONSTRUCTOR) to expression. |
| |
| 2023-04-13 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109488 |
| * lang.opt: Fix typo "maybe" to "may be". |
| |
| 2023-04-13 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2ALU.def (PopChar): New procedure function. |
| * gm2-compiler/M2ALU.mod (PopChar): New procedure function. |
| * gm2-compiler/M2GCCDeclare.mod (PromoteToString): Detect |
| a single constant char and build a C string. |
| * gm2-compiler/M2GenGCC.mod (IsConstStr): New procedure |
| function. |
| (GetStr): New procedure function. |
| (FoldAdd): Use IsConstStr. |
| * gm2-compiler/M2Quads.mod: Formatting changes. |
| * gm2-gcc/m2expr.cc (m2expr_GetCstInteger): New function. |
| * gm2-gcc/m2expr.def (GetCstInteger): New procedure function. |
| * gm2-gcc/m2expr.h (m2expr_GetCstInteger): New prototype. |
| |
| 2023-04-05 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109423 |
| * gm2-compiler/M2Base.def (Unbounded): Remove. |
| * gm2-compiler/M2Error.def (ErrorAbort0): Add noreturn |
| attribute. |
| * gm2-compiler/M2Quads.mod (BuildInclProcedure): Correct |
| error format string. |
| (BuildExceptProcedure): Correct error format string. |
| (BuildAdrFunction): Call PutWriteQuad when taking the |
| address of a variable. |
| * gm2-libs-ch/SysExceptions.c (_M2_SysExceptions_init): Add |
| parameters. |
| * gm2-libs-ch/wrapc.c (_M2_wrapc_init): Add parameters. |
| * gm2-libs/DynamicStrings.mod (DumpStringInfo): Remove t. |
| (PopAllocationExemption): Remove f. |
| * gm2-libs/FIO.mod (BufferedWrite): Remove result. |
| * gm2-libs/FormatStrings.mod (Copy): Remove endpos and |
| afterperc. |
| (HandlePercent): Remove result. |
| * gm2-libs/Indexing.mod (RemoveIndiceFromIndex): Remove k. |
| * gm2-libs/M2Dependent.mod (CreateModule): Remove p0 |
| and p1. |
| (DumpModuleData): Remove mptr. |
| (ConstructModules): Remove nulp. |
| * gm2-libs/RTExceptions.mod (PopHandler): Remove i. |
| * gm2-libs/RTint.mod (Listen): Remove b4s, b4m, afs |
| and afm. |
| * gm2-libs/SFIO.mod (ReadS): Remove c. |
| * gm2-libs/StringConvert.mod (doDecimalPlaces): Remove |
| whole and fraction. |
| |
| 2023-04-03 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109388 |
| * gm2-compiler/M2GCCDeclare.mod (DoVariableDeclaration): |
| Remove second parameter module. Adjust all callers to |
| remove the second parameter. |
| * gm2-compiler/PHBuild.bnf (CheckAndInsert): Remove. |
| (InStopSet): Remove. |
| (PeepToken): Remove. |
| (PushQualident): Remove. |
| (SimpleDes): Remove. |
| (ActualParameters): Remove. |
| |
| 2023-04-02 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109336 |
| * Make-lang.in (GM2_O): Set to -O0. |
| (GM2_LIBS): Remove target libraries and replace with build libs. |
| (BUILD-LIBS): New declaration. |
| (m2/gm2-libs/libgm2.a): New rule. |
| (m2/gm2-libs/%.o): New rule. |
| (m2/gm2-libs/choosetemp.o): New rule. |
| * gm2-compiler/M2ColorString.mod (append): Use ADR rather than |
| implicit conversion. |
| * gm2-compiler/M2Comp.mod (Compile): Add qprintf messages for when |
| a source file is not found. Improve comments and formatting. |
| * gm2-libs-ch/cgetopt.c (cgetopt_cgetopt_long): Remove |
| ansi-decl.h. Add getopt.h. |
| (cgetopt_cgetopt_long_only): Change cgetopt_ to getopt_. |
| * gm2spec.cc (lang_specific_driver): Do not skip -fmod=. |
| Remove comment. |
| |
| 2023-03-29 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109336 |
| PR modula2/109315 |
| * gm2-compiler/M2FileName.mod (CalculateFileName): Simplified by |
| ensuring the extension contains the ".". |
| (CalculateStemName): Re-formatted. |
| (ExtractExtension): Re-formatted. |
| (ExtractModule): Re-formatted. |
| * gm2-compiler/M2Options.def (setdefextension): Add block comment. |
| (setmodextension): Add block comment. Re-formatted. |
| * gm2-compiler/M2Options.mod (setdefextension): Add block comment. |
| (setmodextension): Add block comment. Re-formatted. |
| * gm2-compiler/M2Search.mod (FindSourceDefFile): Use |
| DefaultDefExt. |
| (DefaultDefExt): New constant. |
| (DefaultModExt): New constant. |
| (FindSourceModFile): Use DefaultModExt. |
| * gm2-gcc/m2decl.cc (m2decl_DeclareKnownVariable): Correct |
| spelling. |
| * gm2spec.cc (M2SOURCE): New constant. |
| (LANGSPEC): New value. |
| (MATHLIB): New value. |
| (WITHLIBC): New value. |
| (SKIPOPT): New value. |
| (lang_specific_driver): Replace seen_module_extension bool with |
| module_extension char *. Detect -fmod= and remember extension. |
| Use the extension to detect modula-2 source and mark it as such. |
| |
| 2023-03-23 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109264 |
| * gm2-compiler/M2Quads.mod (BuildConstFunctionCall): Comment |
| out ErrorString in debugging block. |
| (BuildConstructorStart): Replace Assert with a call to |
| MetaErrorT3. Import MetaErrorT3. |
| * gm2-compiler/PCSymBuild.mod (buildConstFunction): Rename |
| local variables. |
| (WalkFunctionParam): Remove test for IsEnumeration when |
| resolving MIN or MAX parameters. |
| * gm2-compiler/PHBuild.bnf (BlockAssert): New procedure. |
| (ErrorArrayat): New procedure. |
| (Expect): Renamed parameter t to tok. |
| (PushQualident): New rule. |
| (ConstSetOrQualidentOrFunction): Force AutoOn. |
| (TypeDeclaration): Add debugging assert. |
| (SimpleType): Add debugging assert. |
| (DefaultRecordAttributes): New rule (and bugfix). |
| (FieldPragmaExpression): New rule (and bugfix). |
| (PragmaConstExpression): New rule (and bugfix). |
| (SetOrDesignatorOrFunction): Add debugging assert. |
| (Block): Add debugging assert. |
| * gm2-gcc/m2expr.cc (m2expr_ConstantExpressionWarning): int |
| to bool. |
| * gm2-gcc/m2expr.h (m2expr_TreeOverflow): int to bool. |
| (m2expr_GetBooleanTrue): Remove. |
| (m2expr_GetBooleanFalse): Remove. |
| * gm2-gcc/m2options.h (M2Options_SetStatistics): Replace |
| int with bool. |
| |
| 2023-03-22 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109248 |
| * Make-lang.in (m2/pge-boot/%.o): Add CFLAGS and CXXFLAGS for C |
| and C++ compiles. |
| * gm2spec.cc (add_m2_I_path): Indentation. |
| (lang_specific_driver): New variable seen_pathname. |
| Detect -fm2-pathname. If not seen then push_back_Ipath ("."). |
| Change non iso library path to "m2cor,m2log,m2pim,m2iso". |
| |
| 2023-03-22 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/107630 |
| * Make-lang.in (m2/stage2/cc1gm2$(exeext)): Remove |
| m2/gm2-libs-boot/M2LINK.o. |
| (m2/stage1/cc1gm2$(exeext)): Ditto. |
| (GM2-LIBS-BOOT-DEFS): Remove M2LINK.def. |
| (GM2-LIBS-DEFS): Ditto. |
| (m2/mc-boot/$(SRC_PREFIX)%.o): Replace CXX_FLAGS with CXXFLAGS. |
| (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto. |
| (m2/mc-boot/main.o): Ditto. |
| (mcflex.o): Add $(CFLAGS). |
| (m2/gm2-libs-boot/M2LINK.o): Remove rule. |
| * gm2-compiler/M2GCCDeclare.def (DeclareM2linkGlobals): Remove. |
| * gm2-compiler/M2GCCDeclare.mod: (M2LinkEntry): Remove. |
| (M2LinkIndex): Remove. |
| (DoVariableDeclaration): Remove initial and call to |
| AddEntryM2Link. |
| (AddEntryM2Link): Remove. |
| (GetEntryM2Link): Remove. |
| (DeclareM2linkGlobals): Remove. |
| (DetectM2LinkInitial): Remove. |
| (InitM2LinkModule): Remove. |
| * gm2-compiler/M2GenGCC.mod (CodeFinallyEnd): Remove call to |
| DeclareM2linkGlobals. |
| * gm2-compiler/M2Quads.mod (BuildM2InitFunction): Add extra |
| parameter containing runtime module override to ConstructModules. |
| * gm2-compiler/M2Scaffold.mod: Update comment describing |
| ConstructModules. |
| * gm2-gcc/m2decl.cc (m2decl_DeclareM2linkForcedModuleInitOrder): |
| Remove. |
| * gm2-libs-iso/M2RTS.def (ConstructModules): Add overrideliborder |
| parameter. |
| * gm2-libs-iso/M2RTS.mod: Add overrideliborder parameter. |
| * gm2-libs/M2Dependent.def (ConstructModules): Add overrideliborder |
| parameter. |
| * gm2-libs/M2Dependent.mod (ConstructModules): Add overrideliborder |
| parameter. |
| * gm2-libs/M2RTS.def (ConstructModules): Add overrideliborder parameter. |
| * gm2-libs/M2RTS.mod (ConstructModules): Add overrideliborder |
| parameter. |
| * gm2-libs/M2LINK.def: Removed. |
| |
| 2023-03-21 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (m2/mc-boot/$(SRC_PREFIX)%.o): Add $(CXXFLAGS). |
| (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Add $(CXXFLAGS). |
| (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Add $(CXXFLAGS). |
| (m2/mc-boot/main.o): Add $(CXXFLAGS). |
| |
| 2023-03-19 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-maintainer.in (gm2.maintainer-clean): Remove. |
| (gm2.maintainer-help): Add gm2.maintainer-tools, |
| gm2.maintainer-doc. Remove gm2.maintainer-clean. |
| Change target-independent directory to target-independent/m2. |
| * gm2-compiler/ppg.mod: Correct __FILE_ typo to __FILE__. |
| * gm2-compiler/M2Options.def (SetAutoInit): Update comment. |
| * gm2-compiler/M2Options.mod (SetAutoInit): Update comment. |
| * gm2-gcc/m2color.cc (m2color_colorize_start): Rename name_len |
| to _name_high. |
| * gm2-gcc/m2color.def (colorize_start): change ARRAY OF CHAR to |
| ADDRESS and add _name_high. |
| * gm2-gcc/m2decl.cc (m2decl_BuildStartFunctionDeclaration): Change |
| int to bool. |
| * gm2-gcc/m2decl.h (m2decl_BuildStartFunctionDeclaration): Change |
| int to bool. |
| * gm2-gcc/m2expr.cc (m2expr_BuildBinarySetDo): Change int to bool. |
| (m2expr_BuildIfConstInVar): Change int to bool. |
| (m2expr_BuildIfNotConstInVar): Change int to bool. |
| (m2expr_BuildIfVarInVar): Change int to bool. |
| (m2expr_BuildIfNotVarInVar): Change int to bool. |
| (m2expr_BuildForeachWordInSetDoIfExpr): Change int to bool. |
| * gm2-gcc/m2expr.h (m2expr_BuildIfNotVarInVar): Change int to bool. |
| (m2expr_BuildIfVarInVar): Change int to bool. |
| (m2expr_BuildIfNotConstInVar): Change int to bool. |
| (m2expr_BuildIfConstInVar): Change int to bool. |
| * gm2-gcc/m2options.h (M2Options_SetAutoInit): Change int to bool. |
| (M2Options_SetNilCheck): Change int to bool. |
| (M2Options_SetReturnCheck): Change int to bool. |
| (M2Options_SetCaseCheck): Change int to bool. |
| (M2Options_SetCheckAll): Change int to bool. |
| (M2Options_SetVerboseUnbounded): Change int to bool. |
| (M2Options_SetUnboundedByReference): Change int to bool. |
| (M2Options_SetOptimizing): Change int to bool. |
| (M2Options_SetQuiet): Change int to bool. |
| (M2Options_SetCpp): Change int to bool. |
| (M2Options_SetM2g): Change int to bool. |
| (M2Options_SetLowerCaseKeywords): Change int to bool. |
| (M2Options_SetVerbose): Change int to bool. |
| * gm2-gcc/m2treelib.cc (m2treelib_get_rvalue): Change int to bool. |
| (m2treelib_get_field_no): Change int to bool. |
| (m2treelib_get_set_value): Change int to bool. |
| (m2treelib_get_set_address): Change int to bool. |
| (m2treelib_get_set_address_if_var): Change int to bool. |
| * gm2-gcc/m2treelib.def (get_set_address_if_var): Change int to bool. |
| (get_set_address): Change int to bool. |
| (get_set_value): Change int to bool. |
| (get_field_no): Change int to bool. |
| (get_rvalue): Change int to bool. |
| * gm2-gcc/m2treelib.h (m2treelib_get_field_no): Change int to bool. |
| (m2treelib_get_set_value): Change int to bool. |
| (m2treelib_get_set_address): Change int to bool. |
| (m2treelib_get_set_address_if_var): Change int to bool. |
| * gm2-gcc/m2type.cc (m2type_BuildEndFunctionType): Change int to bool. |
| * gm2-gcc/m2type.h (m2type_BuildEndFunctionType): Change int to bool. |
| * gm2-libs-ch/dtoa.cc (dtoa_calcsign): Change int to bool. |
| * gm2-libs-ch/ldtoa.cc (dtoa_calcsign): Change int to bool. |
| (ldtoa_ldtoa): Change int to bool. |
| * m2.flex (functionInfo): Change int to bool. |
| (pushFunction): Change parameter from int to bool. |
| * mc-boot/GDebug.cc (Debug_Halt): Rebuild. |
| * mc-boot/GDebug.h (Debug_Halt): Rebuild. |
| * mc-boot/GDynamicStrings.cc: Rebuild. |
| * mc-boot/GDynamicStrings.h: Rebuild. |
| * mc-boot/GFIO.cc: Rebuild. |
| * mc-boot/GM2RTS.cc: Rebuild. |
| * mc-boot/GM2RTS.h: Rebuild. |
| * mc-boot/GPushBackInput.cc: Rebuild. |
| * mc-boot/GRTExceptions.cc: Rebuild. |
| * mc-boot/GRTint.cc: Rebuild. |
| * mc-boot/GSysStorage.cc: Rebuild. |
| * mc-boot/Gdecl.cc: Rebuild. |
| * mc-boot/GsymbolKey.cc: Rebuild. |
| * mc/symbolKey.mod: Rebuild. |
| * target-independent/m2/Builtins.texi: Rebuild. |
| * target-independent/m2/SYSTEM-iso.texi: Rebuild. |
| * target-independent/m2/SYSTEM-pim.texi: Rebuild. |
| * target-independent/m2/gm2-libs.texi: Rebuild. |
| * tools-src/def2doc.py (PIM_Log): Change gm2-libs-pim to |
| gm2-lib-log. |
| |
| 2023-03-17 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109032 |
| * gm2-gcc/m2expr.cc: Correct ? : order in comments. |
| (m2expr_BuildDivM2): Improve comment. |
| * lang.opt: Improve option descriptions. |
| |
| 2023-03-17 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109102 |
| * gm2-gcc/m2builtins.cc (ASSERT): Change format specifier to |
| use %qs rather than quotes. |
| |
| 2023-03-17 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2AsmUtil.mod (SymNeedsModulePrefix): |
| Re-implemented. |
| * gm2-libs/SysStorage.mod (enableTrace): Disable tracing. |
| |
| 2023-03-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/SymbolKey.mod (PutSymKey): Halt parameters |
| reordered. |
| (DelSymKey): Ditto. |
| * gm2-compiler/ppg.mod (GetEpsilon): Ditto. |
| (GetReachEnd): Ditto. |
| (GetFollow): Ditto. |
| (CodeCondition): Ditto. |
| (CodeThenDo): Ditto. |
| (CodeEnd): Ditto. |
| (RecoverCondition): Ditto. |
| (ConditionIndent): Ditto. |
| * gm2-libs-ch/m2rts.h (M2RTS_Halt): Ditto. |
| * gm2-libs-coroutines/Executive.mod (Assert): Ditto. |
| (Resume): Remove redundant comments. |
| (Wait): Remove redundant comments. |
| * gm2-libs-coroutines/SYSTEM.mod (TRANSFER): Halt parameters |
| reordered. |
| (IOTransferHandler): Ditto. |
| (Finished): Ditto. |
| (localInit): Ditto. |
| * gm2-libs-coroutines/TimerHandler.mod (WaitOn): Halt parameters |
| reordered. |
| (Cancel): Ditto. |
| (ReArmEvent): Ditto. |
| (OnActiveQueue): Ditto. |
| * gm2-libs-iso/COROUTINES.mod (NEWCOROUTINE): Ditto. |
| (Transfer): Ditto. |
| (IOTRANSFER): Ditto. |
| * gm2-libs-iso/EXCEPTIONS.mod (RAISE): Correct Halt parameters. |
| * gm2-libs-iso/M2RTS.def (Halt): Halt parameters reordered. |
| (HaltC): Ditto. |
| * gm2-libs-iso/M2RTS.mod: Ditto. |
| * gm2-libs-iso/RTentity.mod (PutKey): Ditto. |
| (DelKey): Ditto. |
| (findChildAndParent): Ditto. |
| (assert): Ditto. |
| * gm2-libs-iso/Storage.mod (ALLOCATE): Add DebugTrace. |
| Add UseMallocFree test. |
| (DEALLOCATE): Add DebugTrace. Add UseMallocFree test. |
| (assert): Halt parameters reordered. |
| * gm2-libs-log/Termbase.mod (Read): Ditto. |
| (KeyPressed): Ditto. |
| (Write): Ditto. |
| (Init): Ditto. |
| * gm2-libs/Debug.def (Halt): Halt parameters reordered. |
| * gm2-libs/Debug.mod (Halt): Ditto. |
| * gm2-libs/DynamicStrings.def (PopAllocation): Improve comment. |
| * gm2-libs/DynamicStrings.mod (PopAllocation): Improve comment. |
| Halt parameters reordered. |
| * gm2-libs/M2RTS.def (Halt): Ditto. |
| (HaltC): Ditto. |
| * gm2-libs/M2RTS.mod (Halt): Ditto. |
| (HaltC): Ditto. |
| * gm2-libs/PushBackInput.mod (PutStr): Ditto. |
| (PutString): Ditto. |
| (PutCh): Ditto. |
| * gm2-libs/RTExceptions.mod (GetBaseExceptionBlock): Ditto. |
| * gm2-libs/RTint.mod (ReArmTimeVector): Ditto. |
| (GetTimeVector): Ditto. |
| (AttachVector): Ditto. |
| (IncludeVector): Ditto. |
| (Listen): Ditto. |
| * gm2-libs/SysStorage.mod (ALLOCATE): Ditto. |
| (DEALLOCATE): Ditto. |
| (REALLOCATE): Ditto. |
| * gm2-libs-coroutines/Debug.def: Removed. |
| * gm2-libs-coroutines/Debug.mod: Removed. |
| |
| 2023-03-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in: Rename target-independent to |
| target-independent/m2. |
| * target-independent/readme.txt: Update. |
| * target-independent/m2/gm2-ebnf.texi: New file. |
| * target-independent/m2/gpl_v3_without_node.texi: New file. |
| * target-independent/Builtins.texi: Rename ... |
| * target-independent/m2/Builtins.texi: ... to this. |
| * target-independent/SYSTEM-iso.texi: Rename ... |
| * target-independent/m2/SYSTEM-iso.texi: ... to this. |
| * target-independent/SYSTEM-pim.texi: Rename ... |
| * target-independent/m2/SYSTEM-pim.texi: ... to this. |
| * target-independent/gm2-libs.texi: Rename ... |
| * target-independent/m2/gm2-libs.texi: ... to this. |
| |
| 2023-03-15 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109125 |
| * gm2-libs-ch/dtoa.cc (dtoa_strtod): Replace int with bool. |
| * gm2-libs-ch/ldtoa.cc (ldtoa_strtold): Replace int with bool. |
| |
| 2023-03-14 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109125 |
| * gm2-libs-ch/cgetopt.c (cgetopt_SetOption): Replace int |
| for bool. |
| * gm2-libs-ch/termios.c (doSetUnset): Replace int for bool. |
| * gm2-libs/Builtins.mod (isfinitef): Correct typo in return |
| statement. |
| |
| 2023-03-13 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109103 |
| * gm2-compiler/M2ALU.def (PushString): New parameter issueError. |
| * gm2-compiler/M2ALU.mod (PushString): New parameter issueError. |
| * gm2-compiler/SymbolTable.mod (PushString): New parameter issueError. |
| * gm2-gcc/m2decl.cc (m2decl_DetermineSizeOfConstant): Pass |
| location to interpret_m2_integer. |
| (m2decl_BuildConstLiteralNumber): New parameter issueError. |
| * gm2-gcc/m2expr.cc (m2expr_IsTrue): Replace int with bool. |
| (m2expr_IsFalse): Replace int with bool. |
| (m2expr_AreConstantsEqual): Replace int with bool. |
| (m2expr_BuildBinaryForeachWordDo): Call m2linemap_internal_error_at. |
| (append_digit): Ditto. |
| (m2expr_interpret_integer): Add location parameter. |
| (append_m2_digit): Call m2linemap_internal_error_at. |
| (m2expr_interpret_m2_integer): Add location parameter. |
| (m2expr_GetSizeOf): Replace sizeof with SIZE in error message. |
| * gm2-gcc/m2expr.h (m2expr_AreRealOrComplexConstantsEqual): |
| Replace int with bool. |
| (m2expr_AreConstantsEqual): Ditto. |
| (m2expr_IsFalse): Ditto. |
| (m2expr_IsTrue): Ditto. |
| (m2expr_interpret_integer): Add location parameter. |
| (m2expr_interpret_m2_integer): Add location parameter. |
| * gm2-gcc/m2linemap.cc (mformat_value): New function. |
| (expand_format): New function. |
| (expand_message): New function. |
| (gm2_internal_error_at): New function. |
| (m2linemap_internal_error_at): New function. |
| * gm2-gcc/m2linemap.h (m2linemap_internal_error_at): New function. |
| * gm2-gcc/m2options.h (M2Options_SetISO): Replace int with bool. |
| (M2Options_SetPIM): Ditto. |
| (M2Options_SetPIM2): Ditto. |
| (M2Options_SetPIM3): Ditto. |
| (M2Options_SetPIM4): Ditto. |
| (M2Options_SetFloatValueCheck): Ditto. |
| (M2Options_SetWholeValueCheck): Ditto. |
| (M2Options_GetISO): Ditto. |
| (M2Options_GetPIM): Ditto. |
| (M2Options_GetPIM2): Ditto. |
| (M2Options_GetPIM3): Ditto. |
| (M2Options_GetPIM4): Ditto. |
| (M2Options_GetPositiveModFloor): Ditto. |
| (M2Options_GetFloatValueCheck): Ditto. |
| (M2Options_GetWholeValueCheck): Ditto. |
| (M2Options_Setc): Ditto. |
| (M2Options_Getc): Ditto. |
| (M2Options_SetPPOnly): Ditto. |
| (M2Options_GetPPOnly): Ditto. |
| (M2Options_SetUselist): Ditto. |
| (M2Options_SetAutoInit): Ditto. |
| (M2Options_SetPositiveModFloor): Ditto. |
| (M2Options_SetNilCheck): Ditto. |
| (M2Options_SetWholeDiv): Ditto. |
| (M2Options_SetIndex): Ditto. |
| (M2Options_SetRange): Ditto. |
| (M2Options_SetReturnCheck): Ditto. |
| (M2Options_SetCaseCheck): Ditto. |
| (M2Options_SetCheckAll): Ditto. |
| (M2Options_SetExceptions): Ditto. |
| (M2Options_SetStyle): Ditto. |
| (M2Options_SetPedantic): Ditto. |
| (M2Options_SetPedanticParamNames): Ditto. |
| (M2Options_SetPedanticCast): Ditto. |
| (M2Options_SetExtendedOpaque): Ditto. |
| (M2Options_SetVerboseUnbounded): Ditto. |
| (M2Options_SetXCode): Ditto. |
| (M2Options_SetCompilerDebugging): Ditto. |
| (M2Options_SetQuadDebugging): Ditto. |
| (M2Options_SetDebugTraceQuad): Ditto. |
| (M2Options_SetDebugTraceAPI): Ditto. |
| (M2Options_SetSources): Ditto. |
| (M2Options_SetUnboundedByReference): Ditto. |
| (M2Options_SetDumpSystemExports): Ditto. |
| (M2Options_SetOptimizing): Ditto. |
| (M2Options_SetQuiet): Ditto. |
| (M2Options_SetCC1Quiet): Ditto. |
| (M2Options_SetCpp): Ditto. |
| (M2Options_SetSwig): Ditto. |
| (M2Options_SetWholeProgram): Ditto. |
| (M2Options_SetDebugFunctionLineNumbers): Ditto. |
| (M2Options_SetGenerateStatementNote): Ditto. |
| (M2Options_GetCpp): Ditto. |
| (M2Options_GetM2g): Ditto. |
| (M2Options_SetM2g): Ditto. |
| (M2Options_SetLowerCaseKeywords): Ditto. |
| (M2Options_SetVerbose): Ditto. |
| (M2Options_SetUnusedVariableChecking): Ditto. |
| (M2Options_SetUnusedParameterChecking): Ditto. |
| (M2Options_SetStrictTypeChecking): Ditto. |
| (M2Options_SetWall): Ditto. |
| (M2Options_SetSaveTemps): Ditto. |
| (M2Options_GetSaveTemps): Ditto. |
| (M2Options_SetScaffoldStatic): Ditto. |
| (M2Options_SetScaffoldDynamic): Ditto. |
| (M2Options_SetScaffoldMain): Ditto. |
| (M2Options_SetGenModuleList): Ditto. |
| (M2Options_SetShared): Ditto. |
| * gm2-libs-ch/M2LINK.c: Ditto. |
| * gm2-libs-ch/m2rts.h (M2RTS_RequestDependant): Replace |
| const char * with const void *. |
| (M2RTS_RegisterModule): Ditto. |
| (M2RTS_ConstructModules): Ditto. |
| * gm2-gcc/m2decl.def (DetermineSizeOfConstant): New parameter |
| issueError. |
| * gm2-gcc/m2decl.h (DetermineSizeOfConstant): New parameter |
| issueError. |
| |
| 2023-03-12 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/109089 |
| * gm2-compiler/M2GCCDeclare.mod (DeclareKnownType): Import. |
| * gm2-gcc/gcc-consolidation.h (stdbool.h): Include. |
| * gm2-gcc/init.h (defined): Change block start. |
| * gm2-gcc/m2block.cc: Change FALSE to false, change TRUE to true. |
| * gm2-gcc/m2block.h: Change int to bool. |
| * gm2-gcc/m2builtins.cc: Ditto. |
| * gm2-gcc/m2builtins.h: Ditto. |
| * gm2-gcc/m2convert.cc: Change FALSE to false, TRUE to true and |
| int to bool. |
| * gm2-gcc/m2convert.h: Change int to bool. |
| * gm2-gcc/m2decl.cc: Change int to bool. |
| * gm2-gcc/m2decl.h: Change int to bool. |
| * gm2-gcc/m2expr.cc: Change FALSE to false, TRUE to true and |
| int to bool. |
| * gm2-gcc/m2expr.h: Change int to bool. |
| * gm2-gcc/m2statement.cc: Change FALSE to false, TRUE to true and |
| int to bool. |
| * gm2-gcc/m2statement.h: Change int to bool. |
| * gm2-gcc/m2top.cc: Change int to bool. |
| * gm2-gcc/m2top.h: Change int to bool. |
| * gm2-gcc/m2tree.cc: Change int to bool. |
| * gm2-gcc/m2tree.h: Change int to bool. |
| * gm2-gcc/m2type.cc: Change int to bool. |
| * gm2-gcc/m2type.h: Change int to bool. |
| * gm2-lang.cc (convert_loc): Call convert_to_integer for BOOLEAN_TYPE. |
| * gm2-libs/Builtins.def (isfinitef): Change return value from |
| BOOLEAN to INTEGER. |
| (isfinite): Ditto. |
| (isfinitel): Ditto. |
| * gm2-libs/Builtins.mod (isfinitef): Change return value from |
| BOOLEAN to INTEGER. |
| (isfinite): Ditto. |
| (isfinitel): Ditto. |
| * mc-boot/GASCII.cc: Rebuild. |
| * mc-boot/GASCII.h: Rebuild. |
| * mc-boot/GArgs.cc: Rebuild. |
| * mc-boot/GArgs.h: Rebuild. |
| * mc-boot/GAssertion.cc: Rebuild. |
| * mc-boot/GAssertion.h: Rebuild. |
| * mc-boot/GBreak.cc: Rebuild. |
| * mc-boot/GBreak.h: Rebuild. |
| * mc-boot/GCOROUTINES.h: Rebuild. |
| * mc-boot/GCmdArgs.cc: Rebuild. |
| * mc-boot/GCmdArgs.h: Rebuild. |
| * mc-boot/GDebug.cc: Rebuild. |
| * mc-boot/GDebug.h: Rebuild. |
| * mc-boot/GDynamicStrings.cc: Rebuild. |
| * mc-boot/GDynamicStrings.h: Rebuild. |
| * mc-boot/GEnvironment.cc: Rebuild. |
| * mc-boot/GEnvironment.h: Rebuild. |
| * mc-boot/GFIO.cc: Rebuild. |
| * mc-boot/GFIO.h: Rebuild. |
| * mc-boot/GFormatStrings.cc: Rebuild. |
| * mc-boot/GFormatStrings.h: Rebuild. |
| * mc-boot/GFpuIO.cc: Rebuild. |
| * mc-boot/GFpuIO.h: Rebuild. |
| * mc-boot/GIO.cc: Rebuild. |
| * mc-boot/GIO.h: Rebuild. |
| * mc-boot/GIndexing.cc: Rebuild. |
| * mc-boot/GIndexing.h: Rebuild. |
| * mc-boot/GM2Dependent.cc: Rebuild. |
| * mc-boot/GM2Dependent.h: Rebuild. |
| * mc-boot/GM2EXCEPTION.cc: Rebuild. |
| * mc-boot/GM2EXCEPTION.h: Rebuild. |
| * mc-boot/GM2LINK.h: Rebuild. |
| * mc-boot/GM2RTS.cc: Rebuild. |
| * mc-boot/GM2RTS.h: Rebuild. |
| * mc-boot/GMemUtils.cc: Rebuild. |
| * mc-boot/GMemUtils.h: Rebuild. |
| * mc-boot/GNumberIO.cc: Rebuild. |
| * mc-boot/GNumberIO.h: Rebuild. |
| * mc-boot/GPushBackInput.cc: Rebuild. |
| * mc-boot/GPushBackInput.h: Rebuild. |
| * mc-boot/GRTExceptions.cc: Rebuild. |
| * mc-boot/GRTExceptions.h: Rebuild. |
| * mc-boot/GRTco.h: Rebuild. |
| * mc-boot/GRTentity.h: Rebuild. |
| * mc-boot/GRTint.cc: Rebuild. |
| * mc-boot/GRTint.h: Rebuild. |
| * mc-boot/GSArgs.cc: Rebuild. |
| * mc-boot/GSArgs.h: Rebuild. |
| * mc-boot/GSFIO.cc: Rebuild. |
| * mc-boot/GSFIO.h: Rebuild. |
| * mc-boot/GSYSTEM.h: Rebuild. |
| * mc-boot/GSelective.h: Rebuild. |
| * mc-boot/GStdIO.cc: Rebuild. |
| * mc-boot/GStdIO.h: Rebuild. |
| * mc-boot/GStorage.cc: Rebuild. |
| * mc-boot/GStorage.h: Rebuild. |
| * mc-boot/GStrCase.cc: Rebuild. |
| * mc-boot/GStrCase.h: Rebuild. |
| * mc-boot/GStrIO.cc: Rebuild. |
| * mc-boot/GStrIO.h: Rebuild. |
| * mc-boot/GStrLib.cc: Rebuild. |
| * mc-boot/GStrLib.h: Rebuild. |
| * mc-boot/GStringConvert.cc: Rebuild. |
| * mc-boot/GStringConvert.h: Rebuild. |
| * mc-boot/GSysExceptions.h: Rebuild. |
| * mc-boot/GSysStorage.cc: Rebuild. |
| * mc-boot/GSysStorage.h: Rebuild. |
| * mc-boot/GTimeString.cc: Rebuild. |
| * mc-boot/GTimeString.h: Rebuild. |
| * mc-boot/GUnixArgs.h: Rebuild. |
| * mc-boot/Galists.cc: Rebuild. |
| * mc-boot/Galists.h: Rebuild. |
| * mc-boot/Gdecl.cc: Rebuild. |
| * mc-boot/Gdecl.h: Rebuild. |
| * mc-boot/Gdtoa.h: Rebuild. |
| * mc-boot/Gerrno.h: Rebuild. |
| * mc-boot/Gkeyc.cc: Rebuild. |
| * mc-boot/Gkeyc.h: Rebuild. |
| * mc-boot/Gldtoa.h: Rebuild. |
| * mc-boot/Glibc.h: Rebuild. |
| * mc-boot/Glibm.h: Rebuild. |
| * mc-boot/Glists.cc: Rebuild. |
| * mc-boot/Glists.h: Rebuild. |
| * mc-boot/GmcComment.cc: Rebuild. |
| * mc-boot/GmcComment.h: Rebuild. |
| * mc-boot/GmcComp.cc: Rebuild. |
| * mc-boot/GmcComp.h: Rebuild. |
| * mc-boot/GmcDebug.cc: Rebuild. |
| * mc-boot/GmcDebug.h: Rebuild. |
| * mc-boot/GmcError.cc: Rebuild. |
| * mc-boot/GmcError.h: Rebuild. |
| * mc-boot/GmcFileName.cc: Rebuild. |
| * mc-boot/GmcFileName.h: Rebuild. |
| * mc-boot/GmcLexBuf.cc: Rebuild. |
| * mc-boot/GmcLexBuf.h: Rebuild. |
| * mc-boot/GmcMetaError.cc: Rebuild. |
| * mc-boot/GmcMetaError.h: Rebuild. |
| * mc-boot/GmcOptions.cc: Rebuild. |
| * mc-boot/GmcOptions.h: Rebuild. |
| * mc-boot/GmcPreprocess.cc: Rebuild. |
| * mc-boot/GmcPreprocess.h: Rebuild. |
| * mc-boot/GmcPretty.cc: Rebuild. |
| * mc-boot/GmcPretty.h: Rebuild. |
| * mc-boot/GmcPrintf.cc: Rebuild. |
| * mc-boot/GmcPrintf.h: Rebuild. |
| * mc-boot/GmcQuiet.cc: Rebuild. |
| * mc-boot/GmcQuiet.h: Rebuild. |
| * mc-boot/GmcReserved.cc: Rebuild. |
| * mc-boot/GmcReserved.h: Rebuild. |
| * mc-boot/GmcSearch.cc: Rebuild. |
| * mc-boot/GmcSearch.h: Rebuild. |
| * mc-boot/GmcStack.cc: Rebuild. |
| * mc-boot/GmcStack.h: Rebuild. |
| * mc-boot/GmcStream.cc: Rebuild. |
| * mc-boot/GmcStream.h: Rebuild. |
| * mc-boot/Gmcflex.h: Rebuild. |
| * mc-boot/Gmcp1.cc: Rebuild. |
| * mc-boot/Gmcp1.h: Rebuild. |
| * mc-boot/Gmcp2.cc: Rebuild. |
| * mc-boot/Gmcp2.h: Rebuild. |
| * mc-boot/Gmcp3.cc: Rebuild. |
| * mc-boot/Gmcp3.h: Rebuild. |
| * mc-boot/Gmcp4.cc: Rebuild. |
| * mc-boot/Gmcp4.h: Rebuild. |
| * mc-boot/Gmcp5.cc: Rebuild. |
| * mc-boot/Gmcp5.h: Rebuild. |
| * mc-boot/GnameKey.cc: Rebuild. |
| * mc-boot/GnameKey.h: Rebuild. |
| * mc-boot/GsymbolKey.cc: Rebuild. |
| * mc-boot/GsymbolKey.h: Rebuild. |
| * mc-boot/Gtermios.h: Rebuild. |
| * mc-boot/Gtop.cc: Rebuild. |
| * mc-boot/Gvarargs.cc: Rebuild. |
| * mc-boot/Gvarargs.h: Rebuild. |
| * mc-boot/Gwlists.cc: Rebuild. |
| * mc-boot/Gwlists.h: Rebuild. |
| * mc-boot/Gwrapc.h: Rebuild. |
| * mc/decl.mod (doBoolC): New procedure. |
| (doBaseC): Call doBoolC. |
| * mc/keyc.mod: Import useBool. |
| (genBool): New procedure. |
| (genDefs): Call genBool. |
| * mc/mcOptions.def (useBool): New procedure. |
| * mc/mcOptions.mod (useBool): New procedure. |
| (useBoolType): New variable. |
| (optionIs): Assign useBoolType to TRUE. |
| |
| 2023-03-04 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * mc-boot-ch/GBuiltins.cc: New file. |
| * mc-boot-ch/Gdtoa.cc: New file. |
| * mc-boot-ch/Gerrno.cc: New file. |
| * mc-boot-ch/Gldtoa.cc: New file. |
| * mc-boot-ch/Gm2rtsdummy.cc: New file. |
| * mc-boot/GASCII.cc: New file. |
| * mc-boot/GArgs.cc: New file. |
| * mc-boot/GAssertion.cc: New file. |
| * mc-boot/GBreak.cc: New file. |
| * mc-boot/GCmdArgs.cc: New file. |
| * mc-boot/GDebug.cc: New file. |
| * mc-boot/GDynamicStrings.cc: New file. |
| * mc-boot/GEnvironment.cc: New file. |
| * mc-boot/GFIO.cc: New file. |
| * mc-boot/GFormatStrings.cc: New file. |
| * mc-boot/GFpuIO.cc: New file. |
| * mc-boot/GIO.cc: New file. |
| * mc-boot/GIndexing.cc: New file. |
| * mc-boot/GM2Dependent.cc: New file. |
| * mc-boot/GM2EXCEPTION.cc: New file. |
| * mc-boot/GM2RTS.cc: New file. |
| * mc-boot/GMemUtils.cc: New file. |
| * mc-boot/GNumberIO.cc: New file. |
| * mc-boot/GPushBackInput.cc: New file. |
| * mc-boot/GRTExceptions.cc: New file. |
| * mc-boot/GRTint.cc: New file. |
| * mc-boot/GSArgs.cc: New file. |
| * mc-boot/GSFIO.cc: New file. |
| * mc-boot/GStdIO.cc: New file. |
| * mc-boot/GStorage.cc: New file. |
| * mc-boot/GStrCase.cc: New file. |
| * mc-boot/GStrIO.cc: New file. |
| * mc-boot/GStrLib.cc: New file. |
| * mc-boot/GStringConvert.cc: New file. |
| * mc-boot/GSysStorage.cc: New file. |
| * mc-boot/GTimeString.cc: New file. |
| * mc-boot/Galists.cc: New file. |
| * mc-boot/Gdecl.cc: New file. |
| * mc-boot/Gkeyc.cc: New file. |
| * mc-boot/Glists.cc: New file. |
| * mc-boot/GmcComment.cc: New file. |
| * mc-boot/GmcComp.cc: New file. |
| * mc-boot/GmcDebug.cc: New file. |
| * mc-boot/GmcError.cc: New file. |
| * mc-boot/GmcFileName.cc: New file. |
| * mc-boot/GmcLexBuf.cc: New file. |
| * mc-boot/GmcMetaError.cc: New file. |
| * mc-boot/GmcOptions.cc: New file. |
| * mc-boot/GmcPreprocess.cc: New file. |
| * mc-boot/GmcPretty.cc: New file. |
| * mc-boot/GmcPrintf.cc: New file. |
| * mc-boot/GmcQuiet.cc: New file. |
| * mc-boot/GmcReserved.cc: New file. |
| * mc-boot/GmcSearch.cc: New file. |
| * mc-boot/GmcStack.cc: New file. |
| * mc-boot/GmcStream.cc: New file. |
| * mc-boot/Gmcp1.cc: New file. |
| * mc-boot/Gmcp2.cc: New file. |
| * mc-boot/Gmcp3.cc: New file. |
| * mc-boot/Gmcp4.cc: New file. |
| * mc-boot/Gmcp5.cc: New file. |
| * mc-boot/GnameKey.cc: New file. |
| * mc-boot/GsymbolKey.cc: New file. |
| * mc-boot/Gtop.cc: New file. |
| * mc-boot/Gvarargs.cc: New file. |
| * mc-boot/Gwlists.cc: New file. |
| * pge-boot/GASCII.cc: New file. |
| * pge-boot/GArgs.cc: New file. |
| * pge-boot/GAssertion.cc: New file. |
| * pge-boot/GBuiltins.cc: New file. |
| * pge-boot/GDebug.cc: New file. |
| * pge-boot/GDynamicStrings.cc: New file. |
| * pge-boot/GFIO.cc: New file. |
| * pge-boot/GIO.cc: New file. |
| * pge-boot/GIndexing.cc: New file. |
| * pge-boot/GLists.cc: New file. |
| * pge-boot/GM2Dependent.cc: New file. |
| * pge-boot/GM2EXCEPTION.cc: New file. |
| * pge-boot/GM2LINK.cc: New file. |
| * pge-boot/GM2RTS.cc: New file. |
| * pge-boot/GNameKey.cc: New file. |
| * pge-boot/GNumberIO.cc: New file. |
| * pge-boot/GOutput.cc: New file. |
| * pge-boot/GPushBackInput.cc: New file. |
| * pge-boot/GRTExceptions.cc: New file. |
| * pge-boot/GRTco.cc: New file. |
| * pge-boot/GSFIO.cc: New file. |
| * pge-boot/GSYSTEM.cc: New file. |
| * pge-boot/GSelective.cc: New file. |
| * pge-boot/GStdIO.cc: New file. |
| * pge-boot/GStorage.cc: New file. |
| * pge-boot/GStrCase.cc: New file. |
| * pge-boot/GStrIO.cc: New file. |
| * pge-boot/GStrLib.cc: New file. |
| * pge-boot/GSymbolKey.cc: New file. |
| * pge-boot/GSysExceptions.cc: New file. |
| * pge-boot/GSysStorage.cc: New file. |
| * pge-boot/Gabort.cc: New file. |
| * pge-boot/Gbnflex.cc: New file. |
| * pge-boot/Gcbuiltin.cc: New file. |
| * pge-boot/Gdtoa.cc: New file. |
| * pge-boot/Gerrno.cc: New file. |
| * pge-boot/Gldtoa.cc: New file. |
| * pge-boot/Glibc.cc: New file. |
| * pge-boot/Glibm.cc: New file. |
| * pge-boot/Gmcrts.cc: New file. |
| * pge-boot/Gpge.cc: New file. |
| * pge-boot/Gwrapc.cc: New file. |
| * pge-boot/main.cc: New file. |
| * pge-boot/network.cc: New file. |
| |
| 2023-03-04 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (MC-LIB-BOOT-C): Rename to MC-LIB-BOOT-CC. |
| (MC-BOOT-C): Rename to MC-BOOT-CC. |
| (BUILD-MC-BOOT-C): Rename to BUILD-MC-BOOT-CC. |
| (BUILD-MC-BOOT-AUTO-C): Rename to BUILD-MC-BOOT-AUTO-CC. |
| (m2/mc-boot/$(SRC_PREFIX)%.o): Change source file extension to .cc. |
| (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto. |
| * Make-maintainer.in (m2/gm2-ppg-boot/$(SRC_PREFIX)%.o): Change |
| source file extension to .cc. |
| (m2/gm2-ppg-boot/main.o): Ditto. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)%.o): Ditto. |
| to .cc. |
| (m2/gm2-pg-boot/main.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)ldtoa.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)dtoa.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)errno.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)M2RTS.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Ditto. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)pge.o): Ditto. |
| (m2/gm2-pge-boot/main.o): Ditto. |
| (mc-push): Ditto. |
| (mc-clean): Ditto. |
| (mc-stage2): Ditto. |
| ((objdir)/m2/mc-boot-gen): Ditto. |
| (m2/mc-boot-gen/$(SRC_PREFIX)decl.c): Ditto. |
| (m2/mc-boot-gen/$(SRC_PREFIX)%.c): Ditto. |
| * mc-boot-ch/GBuiltins.c: Correct comment and rename. |
| * mc-boot-ch/Gdtoa.c: Correct comment and rename. |
| * mc-boot-ch/Gldtoa.c: Correct comment and rename |
| * mc-boot-ch/Gtermios.cc: Rename from Gtermios.c. |
| * mc-boot-ch/Gerrno.c: Rename. |
| * mc-boot-ch/GRTco.c: Removed. |
| * mc-boot/GASCII.c: Rename to mc-boot/GASCII.cc. |
| * mc-boot/GArgs.c: Rename to mc-boot/GArgs.cc. |
| * mc-boot/GAssertion.c: Rename to mc-boot/GAssertion.cc. |
| * mc-boot/GBreak.c: Rename to mc-boot/GBreak.cc. |
| * mc-boot/GCmdArgs.c: Rename to mc-boot/GCmdArgs.cc. |
| * mc-boot/GDebug.c: Rename to mc-boot/GDebug.cc. |
| * mc-boot/GDynamicStrings.c: Rename to mc-boot/GDynamicStrings.cc. |
| * mc-boot/GEnvironment.c: Rename to mc-boot/GEnvironment.cc. |
| * mc-boot/GFIO.c: Rename to mc-boot/GFIO.cc. |
| * mc-boot/GFormatStrings.c: Rename to mc-boot/GFormatStrings.cc. |
| * mc-boot/GFpuIO.c: Rename to mc-boot/GFpuIO.cc. |
| * mc-boot/GIO.c: Rename to mc-boot/GIO.cc. |
| * mc-boot/GIndexing.c: Rename to mc-boot/GIndexing.cc. |
| * mc-boot/GM2Dependent.c: Rename to mc-boot/GM2Dependent.cc. |
| * mc-boot/GM2EXCEPTION.c: Rename to mc-boot/GM2EXCEPTION.cc. |
| * mc-boot/GM2RTS.c: Rename to mc-boot/GM2RTS.cc. |
| * mc-boot/GMemUtils.c: Rename to mc-boot/GMemUtils.cc. |
| * mc-boot/GNumberIO.c: Rename to mc-boot/GNumberIO.cc. |
| * mc-boot/GPushBackInput.c: Rename to mc-boot/GPushBackInput.cc. |
| * mc-boot/GRTExceptions.c: Rename to mc-boot/GRTExceptions.cc. |
| * mc-boot/GRTint.c: Rename to mc-boot/GRTint.cc. |
| * mc-boot/GSArgs.c: Rename to mc-boot/GSArgs.cc. |
| * mc-boot/GSFIO.c: Rename to mc-boot/GSFIO.cc. |
| * mc-boot/GStdIO.c: Rename to mc-boot/GStdIO.cc. |
| * mc-boot/GStorage.c: Rename to mc-boot/GStorage.cc. |
| * mc-boot/GStrCase.c: Rename to mc-boot/GStrCase.cc. |
| * mc-boot/GStrIO.c: Rename to mc-boot/GStrIO.cc. |
| * mc-boot/GStrLib.c: Rename to mc-boot/GStrLib.cc. |
| * mc-boot/GStringConvert.c: Rename to mc-boot/GStringConvert.cc. |
| * mc-boot/GSysStorage.c: Rename to mc-boot/GSysStorage.cc. |
| * mc-boot/GTimeString.c: Rename to mc-boot/GTimeString.cc. |
| * mc-boot/Galists.c: Rename to mc-boot/Galists.cc. |
| * mc-boot/Gdecl.c: Rename to mc-boot/Gdecl.cc. |
| * mc-boot/Gkeyc.c: Rename to mc-boot/Gkeyc.cc. |
| * mc-boot/Glists.c: Rename to mc-boot/Glists.cc. |
| * mc-boot/GmcComment.c: Rename to mc-boot/GmcComment.cc. |
| * mc-boot/GmcComp.c: Rename to mc-boot/GmcComp.cc. |
| * mc-boot/GmcDebug.c: Rename to mc-boot/GmcDebug.cc. |
| * mc-boot/GmcError.c: Rename to mc-boot/GmcError.cc. |
| * mc-boot/GmcFileName.c: Rename to mc-boot/GmcFileName.cc. |
| * mc-boot/GmcLexBuf.c: Rename to mc-boot/GmcLexBuf.cc. |
| * mc-boot/GmcMetaError.c: Rename to mc-boot/GmcMetaError.cc. |
| * mc-boot/GmcOptions.c: Rename to mc-boot/GmcOptions.cc. |
| * mc-boot/GmcPreprocess.c: Rename to mc-boot/GmcPreprocess.cc. |
| * mc-boot/GmcPretty.c: Rename to mc-boot/GmcPretty.cc. |
| * mc-boot/GmcPrintf.c: Rename to mc-boot/GmcPrintf.cc. |
| * mc-boot/GmcQuiet.c: Rename to mc-boot/GmcQuiet.cc. |
| * mc-boot/GmcReserved.c: Rename to mc-boot/GmcReserved.cc. |
| * mc-boot/GmcSearch.c: Rename to mc-boot/GmcSearch.cc. |
| * mc-boot/GmcStack.c: Rename to mc-boot/GmcStack.cc. |
| * mc-boot/GmcStream.c: Rename to mc-boot/GmcStream.cc. |
| * mc-boot/Gmcp1.c: Rename to mc-boot/Gmcp1.cc. |
| * mc-boot/Gmcp2.c: Rename to mc-boot/Gmcp2.cc. |
| * mc-boot/Gmcp3.c: Rename to mc-boot/Gmcp3.cc. |
| * mc-boot/Gmcp4.c: Rename to mc-boot/Gmcp4.cc. |
| * mc-boot/Gmcp5.c: Rename to mc-boot/Gmcp5.cc. |
| * mc-boot/GnameKey.c: Rename to mc-boot/GnameKey.cc. |
| * mc-boot/GsymbolKey.c: Rename to mc-boot/GsymbolKey.cc. |
| * mc-boot/Gtop.c: Rename to mc-boot/Gtop.cc. |
| * mc-boot/Gvarargs.c: Rename to mc-boot/Gvarargs.cc. |
| * mc-boot/Gwlists.c: Rename to mc-boot/Gwlists.cc. |
| * pge-boot/GASCII.c: Rename to pge-boot/GASCII.cc. |
| * pge-boot/GArgs.c: Rename to pge-boot/GArgs.cc. |
| * pge-boot/GAssertion.c: Rename to pge-boot/GAssertion.cc. |
| * pge-boot/GBuiltins.c: Rename to pge-boot/GBuiltins.cc. |
| * pge-boot/GDebug.c: Rename to pge-boot/GDebug.cc. |
| * pge-boot/GDynamicStrings.c: Rename to pge-boot/GDynamicStrings.cc. |
| * pge-boot/GFIO.c: Rename to pge-boot/GFIO.cc. |
| * pge-boot/GIO.c: Rename to pge-boot/GIO.cc. |
| * pge-boot/GIndexing.c: Rename to pge-boot/GIndexing.cc. |
| * pge-boot/GLists.c: Rename to pge-boot/GLists.cc. |
| * pge-boot/GM2Dependent.c: Rename to pge-boot/GM2Dependent.cc. |
| * pge-boot/GM2EXCEPTION.c: Rename to pge-boot/GM2EXCEPTION.cc. |
| * pge-boot/GM2LINK.c: Rename to pge-boot/GM2LINK.cc. |
| * pge-boot/GM2RTS.c: Rename to pge-boot/GM2RTS.cc. |
| * pge-boot/GNameKey.c: Rename to pge-boot/GNameKey.cc. |
| * pge-boot/GNumberIO.c: Rename to pge-boot/GNumberIO.cc. |
| * pge-boot/GOutput.c: Rename to pge-boot/GOutput.cc. |
| * pge-boot/GPushBackInput.c: Rename to pge-boot/GPushBackInput.cc. |
| * pge-boot/GRTExceptions.c: Rename to pge-boot/GRTExceptions.cc. |
| * pge-boot/GRTco.c: Rename to pge-boot/GRTco.cc. |
| * pge-boot/GSFIO.c: Rename to pge-boot/GSFIO.cc. |
| * pge-boot/GSYSTEM.c: Rename to pge-boot/GSYSTEM.cc. |
| * pge-boot/GSelective.c: Rename to pge-boot/GSelective.cc. |
| * pge-boot/GStdIO.c: Rename to pge-boot/GStdIO.cc. |
| * pge-boot/GStorage.c: Rename to pge-boot/GStorage.cc. |
| * pge-boot/GStrCase.c: Rename to pge-boot/GStrCase.cc. |
| * pge-boot/GStrIO.c: Rename to pge-boot/GStrIO.cc. |
| * pge-boot/GStrLib.c: Rename to pge-boot/GStrLib.cc. |
| * pge-boot/GSymbolKey.c: Rename to pge-boot/GSymbolKey.cc. |
| * pge-boot/GSysExceptions.c: Rename to pge-boot/GSysExceptions.cc. |
| * pge-boot/GSysStorage.c: Rename to pge-boot/GSysStorage.cc. |
| * pge-boot/Gabort.c: Rename to pge-boot/Gabort.cc. |
| * pge-boot/Gbnflex.c: Rename to pge-boot/Gbnflex.cc. |
| * pge-boot/Gcbuiltin.c: Rename to pge-boot/Gcbuiltin.cc. |
| * pge-boot/Gdtoa.c: Rename to pge-boot/Gdtoa.cc. |
| * pge-boot/Gerrno.c: Rename to pge-boot/Gerrno.cc. |
| * pge-boot/Gldtoa.c: Rename to pge-boot/Gldtoa.cc. |
| * pge-boot/Glibc.c: Rename to pge-boot/Glibc.cc. |
| * pge-boot/Glibm.c: Rename to pge-boot/Glibm.cc. |
| * pge-boot/Gmcrts.c: Rename to pge-boot/Gmcrts.cc. |
| * pge-boot/Gpge.c: Rename to pge-boot/Gpge.cc. |
| * pge-boot/Gwrapc.c: Rename to pge-boot/Gwrapc.cc. |
| * pge-boot/README: Correct description. |
| * pge-boot/main.c: Rename to pge-boot/main.cc. |
| * pge-boot/network.c: Rename to pge-boot/network.cc. |
| |
| 2023-02-28 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/108956 |
| * Make-lang.in (m2/gm2-libs-boot/M2RTS.o): New specific rule to |
| add the --suppress-noreturn option. |
| * Make-maintainer.in (m2/gm2-ppg-boot/$(SRC_PREFIX)M2RTS.o): New |
| specific rule to add the --suppress-noreturn option. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)M2RTS.o): New |
| specific rule to add the --suppress-noreturn option. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)%.o): Add missing $(srcdir). |
| (m2/gm2-pge-boot/$(SRC_PREFIX)M2RTS.o): New |
| specific rule to add the --suppress-noreturn option. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): Add missing $(srcdir). |
| * gm2-libs-ch/UnixArgs.cc (LIBNAME): New define. |
| (_M2_UnixArgs_ctor): Add LIBNAME parameter to RegisterModule. |
| * gm2-libs-ch/dtoa.cc (LIBNAME): New define. |
| (_M2_dtoa_ctor): Add LIBNAME parameter to RegisterModule. |
| * gm2-libs-ch/ldtoa.cc (LIBNAME): New define. |
| (_M2_ldtoa_ctor): Add LIBNAME parameter to RegisterModule. |
| * pge-boot/m2rts.h (M2RTS_RegisterModule): Add libname |
| parameter. |
| * gm2-libs-ch/m2rts.h (M2RTS_RegisterModule): Add libname |
| parameter. |
| * mc-boot-ch/GUnixArgs.cc (_M2_UnixArgs_ctor): Remove. |
| * pge-boot/GUnixArgs.cc (LIBNAME): New define. |
| (_M2_UnixArgs_ctor): Add LIBNAME parameter to RegisterModule. |
| * gm2-libs/RTint.def (AttachVector): Rename parameter. |
| * mc-boot/GDynamicStrings.c: Rebuilt. |
| * mc-boot/GFIO.c: Rebuilt. |
| * mc-boot/GIndexing.c: Rebuilt. |
| * mc-boot/GM2EXCEPTION.c: Rebuilt. |
| * mc-boot/GPushBackInput.c: Rebuilt. |
| * mc-boot/GRTExceptions.c: Rebuilt. |
| * mc-boot/GRTint.c: Rebuilt. |
| * mc-boot/GRTint.h: Rebuilt. |
| * mc-boot/GStdIO.c: Rebuilt. |
| * mc-boot/GStringConvert.c: Rebuilt. |
| * mc-boot/GSysStorage.c: Rebuilt. |
| * mc-boot/Gdecl.c: Rebuilt. |
| * mc-boot/Gkeyc.c: Rebuilt. |
| * mc-boot/GmcComment.c: Rebuilt. |
| * mc-boot/GmcComp.c: Rebuilt. |
| * mc-boot/GmcDebug.c: Rebuilt. |
| * mc-boot/GmcMetaError.c: Rebuilt. |
| * mc-boot/GmcOptions.c: Rebuilt. |
| * mc-boot/GmcOptions.h: Rebuilt. |
| * mc-boot/GmcStack.c: Rebuilt. |
| * mc-boot/GnameKey.c: Rebuilt. |
| * mc-boot/GsymbolKey.c: Rebuilt. |
| * mc/decl.mod:: Rebuilt. |
| * mc/mcOptions.def: Rebuilt. |
| * mc/mcOptions.mod:: Rebuilt. |
| * pge-boot/GDynamicStrings.c: Rebuilt. |
| * pge-boot/GFIO.c: Rebuilt. |
| * pge-boot/GIndexing.c: Rebuilt. |
| * pge-boot/GM2EXCEPTION.c: Rebuilt. |
| * pge-boot/GM2RTS.c: Rebuilt. |
| * pge-boot/GNameKey.c: Rebuilt. |
| * pge-boot/GPushBackInput.c: Rebuilt. |
| * pge-boot/GRTExceptions.c: Rebuilt. |
| * pge-boot/GStdIO.c: Rebuilt. |
| * pge-boot/GSymbolKey.c: Rebuilt. |
| * pge-boot/GSysStorage.c: Rebuilt. |
| |
| 2023-02-25 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/108261 |
| * Make-lang.in (GM2-COMP-BOOT-DEFS): DynamicStringPath.def |
| remove. DynamicPath.def add. |
| (GM2-COMP-BOOT-MODS): DynamicStringPath.mod remove. |
| DynamicPath.mod add. |
| * Make-maintainer.in (BUILD-BOOT-PPG-H): New dependency. |
| (m2/gm2-ppg-boot/$(SRC_PREFIX)%.o): $(BUILD-BOOT-PPG-H) Add |
| dependency. |
| (PGE-DEF): New definition. |
| (BUILD-BOOT-PG-H): New dependency. |
| (m2/gm2-pg-boot/$(SRC_PREFIX)%.o): $(BUILD-BOOT-PG-H) Add |
| dependency. |
| (BUILD-BOOT-PGE-H): New dependency. |
| (m2/gm2-pge-boot/$(SRC_PREFIX)%.o): $(BUILD-BOOT-PGE-H) Add |
| dependency. |
| (GM2PATH): Add pathname entries. |
| (m2/boot-bin/mc-devel$(exeext)): Add m2/mc-boot-ch/Gm2rtsdummy.o |
| dependency. |
| (m2/boot-bin/mc-opt$(exeext)): Fix -I path. |
| * gm2-compiler/DynamicStringPath.def: Renamed module to |
| DynamicPath. |
| (GetUserPath): Remove. |
| (GetSystemPath): Remove. |
| (SetUserPath): Remove. |
| (SetSystemPath): Remove. |
| (DumpPath): New procedure definition. |
| * gm2-compiler/DynamicStringPath.mod: Renamed module to |
| DynamicPath. |
| (GetUserPath): Remove. |
| (GetSystemPath): Remove. |
| (SetUserPath): Remove. |
| (SetSystemPath): Remove. |
| (DumpPath): Remove Debugging conditional. |
| * gm2-compiler/M2AsmUtil.mod: Import EqualArray, NulName and |
| GetLibName. |
| (Debugging): New declaration. |
| (GetFullSymName): Re-implemented to prefix (mange) libname |
| to any extern variable/procedure which is IsExportQualified. |
| * gm2-compiler/M2Comp.mod (qprintLibName): New procedure. |
| * gm2-compiler/M2Graph.mod (resolveImports): Add libname. |
| * gm2-compiler/M2Options.def (SetM2Prefix): New procedure. |
| (GetM2Prefix): New procedure function. |
| (SetM2PathName): New procedure. |
| (GetM2PathName): New procedure function. |
| * gm2-compiler/M2Options.mod: (SetM2Prefix): New procedure implemented. |
| (GetM2Prefix): New procedure function implemented. |
| (SetM2PathName): New procedure implemented. |
| (GetM2PathName): New procedure function implemented. |
| (RuntimeModuleOverride): Set to DefaultRuntimeModuleOverride. |
| * gm2-compiler/M2Quads.mod: Import GetLibName. |
| (SafeRequestSym) Pass result of GetLibName to RequestDependant. |
| (callRequestDependant): Add libname as a parameter. |
| (BuildM2InitFunction): Add libname as a parameter. |
| (BuildM2FiniFunction): Add libname as a parameter. |
| (BuildM2CtorFunction): Add libname as a parameter. |
| * gm2-compiler/M2Scaffold.mod (LookupModuleSym): Set LibName |
| if a definition source was found. |
| * gm2-compiler/M2Search.def (FindSourceFile): Add named library parameter. |
| (FindSourceDefFile): Add named library parameter. |
| (FindSourceModFile): Add named library parameter. |
| * gm2-compiler/M2Search.mod (FindSourceFile): Reimplement. |
| (FindSourceDefFile): Add named library parameter. |
| (FindSourceModFile): Add named library parameter. |
| * gm2-compiler/SymbolTable.def (MakeProcedureCtorExtern): Add |
| libname parameter. |
| (PutLibName): New procedure. |
| (GetLibName): New procedure function. |
| * gm2-compiler/SymbolTable.mod (MakeProcedureCtorExtern): Add |
| libname parameter. |
| (GenName): Add libname parameter. |
| (InitCtorFields): Add moduleSym as a parameter. |
| (PutCtorExtern): Add libname parameter to GenName. |
| * gm2-gcc/init.cc (_M2_DynamicStringPath_init): Rename function... |
| (_M2_DynamicPath_init): ...to this. |
| (_M2_PathName_init): Added. |
| * gm2-gcc/m2decl.cc (m2decl_DeclareM2linkStaticInitialization): |
| Add m2pim as the manged component of the exported symbol. |
| (m2decl_DeclareM2linkForcedModuleInitOrder): Add m2pim mangle prefix. |
| * gm2-gcc/m2options.h (M2Options_SetM2Prefix): New function. |
| (M2Options_GetM2Prefix): New function. |
| (M2Options_SetM2PathName): New function. |
| (M2Options_GetM2PathName): New function. |
| * gm2-lang.cc (push_back_Ipath): New function. |
| (add_one_import_path): New function. |
| (gm2_langhook_handle_option): Record -I component. Call |
| SetM2PathName when -fm2-pathname= is seen. Record -fm2-pathnameI |
| component. Call SetM2Prefix when -fm2-prefix= is seen. |
| (gm2_langhook_post_options): Iterative over pathname entries |
| and call SetM2PathName, SetSearchPath as appropriate. |
| * gm2-libs-iso/M2RTS.def (ConstructModules): Add libname parameter. |
| (DeconstructModules): Add libname parameter. |
| (RegisterModule): Add libname parameter. |
| (RequestDependant): Add libname parameter. |
| * gm2-libs-iso/M2RTS.mod (ConstructModules): Add libname parameter. |
| (DeconstructModules): Add libname parameter. |
| (RegisterModule): Add libname parameter. |
| (RequestDependant): Add libname parameter. |
| * gm2-libs-min/M2RTS.def (ConstructModules): Add libname parameter. |
| (DeconstructModules): Add libname parameter. |
| (RegisterModule): Add libname parameter. |
| (RequestDependant): Add libname parameter. |
| * gm2-libs-min/M2RTS.mod (ConstructModules): Add libname parameter. |
| (DeconstructModules): Add libname parameter. |
| (RegisterModule): Add libname parameter. |
| (RequestDependant): Add libname parameter. |
| * gm2-libs/M2Dependent.def (ConstructModules): Add libname parameter. |
| (DeconstructModules): Add libname parameter. |
| (RegisterModule): Add libname parameter. |
| (RequestDependant): Add libname parameter. |
| * gm2-libs/M2Dependent.mod (ConstructModules): Add libname parameter. |
| (DeconstructModules): Add libname parameter. |
| (RegisterModule): Add libname parameter. |
| (RequestDependant): Add libname parameter. |
| * gm2-libs/M2RTS.def (ConstructModules): Add libname parameter. |
| (DeconstructModules): Add libname parameter. |
| (RegisterModule): Add libname parameter. |
| (RequestDependant): Add libname parameter. |
| * gm2-libs/M2RTS.mod (ConstructModules): Add libname parameter. |
| (DeconstructModules): Add libname parameter. |
| (RegisterModule): Add libname parameter. |
| (RequestDependant): Add libname parameter. |
| * gm2-libs/RTint.mod (FindVector): Rename variables. |
| (initInputVector): Rename variables. |
| (initOutputVector): Rename variables. |
| (InitTimeVector): Rename variables. |
| (FindVectorNo): Rename variables. |
| (FindPendingVector): Rename variables. |
| (ReArmTimeVector): Rename variables. |
| (GetTimeVector): Rename variables. |
| (AttachVector): Rename variables. |
| (AttachVector): Rename variables. |
| (IncludeVector): Rename variables. |
| (ExcludeVector): Rename variables. |
| (AddFd): Rename variables. |
| (AddFd): Rename variables. |
| (DumpPendingQueue): Rename variables. |
| (stop): Remove. |
| (activatePending): Rename variables. |
| (Listen): Rename variables. |
| * gm2-libs/libc.def (snprintf): New function. |
| * gm2-libs/sckt.def: Change all exported identifiers to be |
| export qualified. |
| * gm2spec.cc (push_back_Ipath): New function. |
| (add_m2_I_path): New function. |
| (lang_specific_driver): Skip -fm2-pathname= and remember pathname. |
| Skip -I and record the path and current pathname. Call add_m2_I_path. |
| * lang-specs.h: Replace %{I*} with %{fm2-pathname*}. |
| * lang.opt (-fm2-pathname=): New entry. |
| (-fm2-pathname): New entry. |
| (-fm2-prefix=): New entry. |
| * mc-boot-ch/GUnixArgs.cc (_M2_UnixArgs_dep): New function. |
| (_M2_UnixArgs_ctor::_M2_UnixArgs_ctor): New method. |
| * mc-boot-ch/Glibc.c (libc_snprintf): New function. |
| * mc-boot-ch/m2rts.h (M2RTS_RequestDependant): Changed prototype. |
| (M2RTS_RegisterModule): Changed prototype. |
| * mc-boot/GDynamicStrings.c: Rebuild. |
| * mc-boot/GFIO.c: Rebuild. |
| * mc-boot/GIndexing.c: Rebuild. |
| * mc-boot/GM2Dependent.c: Rebuild. |
| * mc-boot/GM2Dependent.h: Rebuild. |
| * mc-boot/GM2EXCEPTION.c: Rebuild. |
| * mc-boot/GM2RTS.c: Rebuild. |
| * mc-boot/GM2RTS.h: Rebuild. |
| * mc-boot/GPushBackInput.c: Rebuild. |
| * mc-boot/GRTExceptions.c: Rebuild. |
| * mc-boot/GRTint.c: Rebuild. |
| * mc-boot/GStdIO.c: Rebuild. |
| * mc-boot/GStringConvert.c: Rebuild. |
| * mc-boot/GSysStorage.c: Rebuild. |
| * mc-boot/Gdecl.c: Rebuild. |
| * mc-boot/Gkeyc.c: Rebuild. |
| * mc-boot/Glibc.h: Rebuild. |
| * mc-boot/GmcComment.c: Rebuild. |
| * mc-boot/GmcComp.c: Rebuild. |
| * mc-boot/GmcDebug.c: Rebuild. |
| * mc-boot/GmcMetaError.c: Rebuild. |
| * mc-boot/GmcStack.c: Rebuild. |
| * mc-boot/GnameKey.c: Rebuild. |
| * mc-boot/GsymbolKey.c: Rebuild. |
| * pge-boot/GASCII.c: Rebuild. |
| * pge-boot/GArgs.c: Rebuild. |
| * pge-boot/GAssertion.c: Rebuild. |
| * pge-boot/GDebug.c: Rebuild. |
| * pge-boot/GDynamicStrings.c: Rebuild. |
| * pge-boot/GFIO.c: Rebuild. |
| * pge-boot/GIO.c: Rebuild. |
| * pge-boot/GIndexing.c: Rebuild. |
| * pge-boot/GLists.c: Rebuild. |
| * pge-boot/GM2Dependent.c: Rebuild. |
| * pge-boot/GM2Dependent.h: Rebuild. |
| * pge-boot/GM2EXCEPTION.c: Rebuild. |
| * pge-boot/GM2RTS.c: Rebuild. |
| * pge-boot/GM2RTS.h: Rebuild. |
| * pge-boot/GNameKey.c: Rebuild. |
| * pge-boot/GNumberIO.c: Rebuild. |
| * pge-boot/GOutput.c: Rebuild. |
| * pge-boot/GPushBackInput.c: Rebuild. |
| * pge-boot/GRTExceptions.c: Rebuild. |
| * pge-boot/GSFIO.c: Rebuild. |
| * pge-boot/GStdIO.c: Rebuild. |
| * pge-boot/GStorage.c: Rebuild. |
| * pge-boot/GStrCase.c: Rebuild. |
| * pge-boot/GStrIO.c: Rebuild. |
| * pge-boot/GStrLib.c: Rebuild. |
| * pge-boot/GSymbolKey.c: Rebuild. |
| * pge-boot/GSysExceptions.c (_M2_SysExceptions_finish): Rename this... |
| (_M2_SysExceptions_fini): ... to this. |
| * pge-boot/GSysStorage.c: Rebuild. |
| (_M2_SysStorage_finish): Rename this... |
| (_M2_SysStorage_fini): ... to this. |
| * pge-boot/GUnixArgs.cc: New file. |
| * pge-boot/Gbnflex.c (_M2_bnflex_finish): Rename this... |
| (_M2_bnflex_fini): ... to this. |
| * pge-boot/Gerrno.c (_M2_errno_finish): Rename this... |
| (_M2_errno_fini): ... to this. |
| * pge-boot/Glibc.c (libc_snprintf): New function. |
| * pge-boot/Glibc.h (libc_snprintf): New prototype. |
| * pge-boot/Gpge.c (_M2_pge_finish): Rename this... |
| (_M2_pge_fini): ... to this. |
| * pge-boot/Gtermios.cc (_M2_termios_finish): Rename this... |
| (_M2_termios_fini): ... to this. |
| * pge-boot/main.c (_M2_RTExceptions_finish): Rename this... |
| (_M2_RTExceptions_fini): ... to this. |
| (_M2_M2EXCEPTION_finish): Rename this... |
| (_M2_M2EXCEPTION_fini): ... to this. |
| (_M2_M2RTS_finish): Rename this... |
| (_M2_M2RTS_fini): ... to this. |
| (_M2_SysExceptions_finish): Rename this... |
| (_M2_SysExceptions_fini): ... to this. |
| (_M2_StrLib_finish): Rename this... |
| (_M2_StrLib_fini): ... to this. |
| (_M2_errno_finish): Rename this... |
| (_M2_errno_fini): ... to this. |
| (_M2_termios_finish): Rename this... |
| (_M2_termios_fini): ... to this. |
| (_M2_IO_finish): Rename this... |
| (_M2_IO_fini): ... to this. |
| (_M2_StdIO_finish): Rename this... |
| (_M2_StdIO_fini): ... to this. |
| (_M2_Debug_finish): Rename this... |
| (_M2_Debug_fini): ... to this. |
| (_M2_SysStorage_finish): Rename this... |
| (_M2_SysStorage_fini): ... to this. |
| (_M2_Storage_finish): Rename this... |
| (_M2_Storage_fini): ... to this. |
| (_M2_StrIO_finish): Rename this... |
| (_M2_StrIO_fini): ... to this. |
| (_M2_DynamicStrings_finish): Rename this... |
| (_M2_DynamicStrings_fini): ... to this. |
| (_M2_Assertion_finish): Rename this... |
| (_M2_Assertion_fini): ... to this. |
| (_M2_Indexing_finish): Rename this... |
| (_M2_Indexing_fini): ... to this. |
| (_M2_NameKey_finish): Rename this... |
| (_M2_NameKey_fini): ... to this. |
| (_M2_NumberIO_finish): Rename this... |
| (_M2_NumberIO_fini): ... to this. |
| (_M2_PushBackInput_finish): Rename this... |
| (_M2_PushBackInput_fini): ... to this. |
| (_M2_SymbolKey_finish): Rename this... |
| (_M2_SymbolKey_fini): ... to this. |
| (_M2_UnixArgs_finish): Rename this... |
| (_M2_UnixArgs_fini): ... to this. |
| (_M2_FIO_finish): Rename this... |
| (_M2_FIO_fini): ... to this. |
| (_M2_SFIO_finish): Rename this... |
| (_M2_SFIO_fini): ... to this. |
| (_M2_StrCase_finish): Rename this... |
| (_M2_StrCase_fini): ... to this. |
| (_M2_bnflex_finish): Rename this... |
| (_M2_bnflex_fini): ... to this. |
| (_M2_Lists_finish): Rename this... |
| (_M2_Lists_fini): ... to this. |
| (_M2_Args_finish): Rename this... |
| (_M2_Args_fini): ... to this. |
| (_M2_Output_finish): Rename this... |
| (_M2_Output_fini): ... to this. |
| (_M2_pge_finish): Rename this... |
| (_M2_pge_fini): ... to this. |
| * plugin/m2rte.cc (m2_runtime_error_calls): Change all runtime |
| procedure names to their name mangled counterparts. |
| * gm2-libs-iso/wrapsock.c: Removed. |
| * gm2-libs-iso/wraptime.c: Removed. |
| * mc-boot/Gpth.h: Removed. |
| * gm2-compiler/PathName.def: New file. |
| * gm2-compiler/PathName.mod: New file. |
| * gm2-compiler/DynamicPath.def: New file. |
| * gm2-compiler/DynamicPath.mod: New file. |
| |
| 2023-02-06 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/108135 |
| * gm2-compiler/M2Search.mod (DSdbEnter): Comment out. |
| (DSdbExit): Comment out. |
| |
| 2023-02-06 Co-Authored by: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| |
| PR modula2/107234 |
| * m2pp.cc (m2pp_integer_cst): Use |
| HOST_WIDE_INT_PRINT_UNSIGNED as the format specifier. |
| |
| 2023-02-06 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Preprocess.mod (BaseName): Comment out. |
| * gm2-lang.cc (opt): Remove. |
| * gm2spec.cc (add_include): Remove. |
| (full_libraries): Remove. |
| (concat_option): Remove. |
| |
| 2023-02-03 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (TEXISRC): Remove m2/images/gnu.eps. |
| (RSTSRC): Remove m2/images/gnu.eps. |
| (doc/m2.dvi): Add $(objdir)/m2/images/gnu.eps. |
| (doc/m2.pdf): Add $(objdir)/m2/images/gnu.eps. |
| (M2_PDFFILES): New definition. |
| (m2.install-pdf): New rule. |
| (m2.pod): Add $(objdir)/m2/images/gnu.eps. |
| (m2.info): Add $(objdir)/m2/images/gnu.eps. |
| (m2.html): New rule. |
| (m2/gpl_v3_without_node.texi): New rule. |
| (plugin/m2rte$(soext)): Simplify mkinstalldirs. |
| (cc1gm2$(exeext)): Ditto. |
| (m2/stage1/cc1gm2$(exeext)): Ditto. |
| (m2/gm2-gcc/%.o): Ditto. |
| (m2/gm2-gcc/rtegraph.o): Ditto. |
| (m2/gm2-gcc/$(SRC_PREFIX)%.h): Ditto. |
| (m2/mc-boot/$(SRC_PREFIX)%.o):Ditto. |
| (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto. |
| (m2/mc-boot/main.o): Ditto. |
| (m2/gm2-libs-boot/%.o): Ditto. |
| (m2/gm2-libs-boot/$(SRC_PREFIX)%.h): Ditto. |
| (m2/gm2-libs-boot/RTcodummy.o): Ditto. |
| (m2/gm2-libs-boot/wrapc.o): Ditto. |
| (m2/gm2-libs-boot/M2LINK.o): Ditto. |
| (m2/gm2-libs-boot/UnixArgs.o): Ditto. |
| (m2/gm2-libs-boot/choosetemp.o): Ditto. |
| (m2/gm2-libs-boot/errno.o): Ditto. |
| (m2/gm2-libs-boot/dtoa.o): Ditto. |
| (m2/gm2-libs-boot/ldtoa.o): Ditto. |
| (m2/gm2-libs-boot/termios.o): Ditto. |
| (m2/gm2-libs-boot/SysExceptions.o): Ditto. |
| (m2/gm2-libs-boot/SysStorage.o): Ditto. |
| (m2/gm2-compiler-boot/M2GCCDeclare.o): Ditto. |
| (m2/gm2-compiler-boot/M2Error.o): Ditto. |
| (m2/gm2-compiler-boot/%.o): Ditto. |
| (m2/gm2-compiler-boot/$(SRC_PREFIX)%.h): Ditto. |
| (m2/gm2-compiler-boot/m2flex.o): Ditto. |
| (m2/gm2-compiler/m2flex.c): Ditto. |
| (m2/gm2-libiberty/$(SRC_PREFIX)%.h): Ditto. |
| (m2/gm2-compiler/%.o): Ditto. |
| (m2/gm2-compiler/m2flex.o): Ditto. |
| (m2/gm2-compiler/%.o): Ditto. |
| (m2/gm2-libs-iso/%.o): Ditto. |
| (m2/gm2-libs/gm2-libs-host.h): Ditto. |
| ($(objdir)/m2/gm2-libs-min/SYSTEM.def): Ditto. |
| ($(objdir)/m2/gm2-libs/SYSTEM.def): Ditto. |
| ($(objdir)/m2/gm2-libs-iso/SYSTEM.def): Ditto. |
| ($(objdir)/m2/gm2-libs-coroutines/SYSTEM.def): Ditto. |
| (m2/gm2-compiler/gm2.a): Ditto. |
| (m2/gm2-libs-boot/libgm2.a): Ditto. |
| (m2/gm2-compiler-boot/gm2.a): Ditto. |
| (m2/boot-bin/mklink$(exeext)): Ditto. |
| (m2/gm2-compiler-boot/$(SRC_PREFIX)%.h): Ditto. |
| (m2/gm2-compiler/%.mod): Ditto. |
| (m2/gm2-compiler-boot/%.mod): Ditto. |
| (m2/pge-boot/%.o): Ditto. |
| |
| 2023-02-01 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (GM2_FLAGS): Add -fno-return -Wreturn-type. |
| (GM2_ISO_FLAGS): Add -fno-return -Wreturn-type. |
| * Make-maintainer.in (GM2PATH): Split into separate -I components. |
| (MC-LIB-DEFS): Add RTentity.def. |
| (m2/boot-bin/mc-devel$(exeext)): Changed -I$(GM2PATH) to |
| $(GM2PATH). |
| (m2/boot-bin/mc-opt$(exeext)): Separate -I paths. |
| (m2/mc/decl.o): Separate -I paths. |
| (gm2-bootstrap): Separate -I paths. |
| (m2/mc-boot-gen/$(SRC_PREFIX)%.h): Separate -I paths. |
| (m2/mc-boot-gen/$(SRC_PREFIX)decl.c): Separate -I paths. |
| (m2/mc-boot-gen/$(SRC_PREFIX)%.c): Separate -I paths. |
| (gm2.verifyparanoid): Separate -I paths. |
| (gm2.verifystage12): Separate -I paths. |
| * gm2-compiler/M2ALU.mod (GetConstructorElement): Add default |
| Return NulSym. Remove return from the error case. |
| * gm2-compiler/M2Base.mod (ComplexToScalar): Return RType |
| from the error case. |
| (MixMetaTypes): Return MakeError as a default. |
| * gm2-compiler/M2GCCDeclare.mod (GetTypeMin): Return NulSym |
| from the error case. |
| (GetTypeMax): Return NulSym from the error case. |
| * gm2-compiler/M2GenGCC.mod (IsExportedGcc): Replace Assert |
| by InternalError. |
| * gm2-compiler/M2Quads.mod (GetItemPointedTo): Add InternalError. |
| (GetTypeMin): Add InternalError. |
| (GetTypeMax): Add InternalError. |
| * gm2-compiler/M2System.mod (InitSystem): Call |
| PutProcedureNoReturn on Throw. |
| * gm2-gcc/m2except.cc (m2except_InitExceptions): fn_throw_tree |
| declare as noreturn. fn_rethrow_tree declare as noreturn. |
| * gm2-libs-coroutines/Debug.def (Halt): Add noreturn attribute. |
| * gm2-libs-coroutines/SYSTEM.def (THROW): Add noreturn attribute. |
| * gm2-libs-iso/ClientSocket.mod (dorbytes): Add return FALSE. |
| * gm2-libs-iso/EXCEPTIONS.def (RAISE): Add noreturn attribute. |
| * gm2-libs-iso/IOLink.def (RAISEdevException): Add noreturn attribute. |
| * gm2-libs-iso/M2RTS.def (HALT): Add noreturn attribute. |
| (Halt): Ditto. |
| (HaltC): Ditto. |
| (ErrorMessage): Ditto. |
| (AssignmentException): Ditto. |
| (ReturnException): Ditto. |
| (IncException): Ditto. |
| (DecException): Ditto. |
| (InclException): Ditto. |
| (ExclException): Ditto. |
| (ShiftException): Ditto. |
| (RotateException): Ditto. |
| (StaticArraySubscriptException): Ditto. |
| (DynamicArraySubscriptException): Ditto. |
| (ForLoopBeginException): Ditto. |
| (ForLoopToException): Ditto. |
| (ForLoopEndException): Ditto. |
| (PointerNilException): Ditto. |
| (NoReturnException): Ditto. |
| (CaseException): Ditto. |
| (WholeNonPosDivException): Ditto. |
| (WholeNonPosModException): Ditto. |
| (WholeZeroDivException): Ditto. |
| (WholeZeroRemException): Ditto. |
| (WholeValueException): Ditto. |
| (RealValueException): Ditto. |
| (ParameterException): Ditto. |
| (NoException): Ditto. |
| * gm2-libs-iso/SYSTEM.def (THROW): Ditto. |
| * gm2-libs-iso/TermFile.mod (dorbytes): Add default return FALSE. |
| * gm2-libs-min/M2RTS.def: Add noreturn attribute. |
| * gm2-libs/FIO.mod (BufferedRead): Return -1. |
| (getFileName): Return NIL. |
| (getFileNameLength): Return 0. |
| * gm2-libs/M2RTS.def (HaltC): Add noreturn attribute. |
| (AssignmentException): Ditto. |
| (ReturnException): Ditto. |
| (IncException): Ditto. |
| (DecException): Ditto. |
| (InclException): Ditto. |
| (ExclException): Ditto. |
| (ShiftException): Ditto. |
| (RotateException): Ditto. |
| (StaticArraySubscriptException): Ditto. |
| (DynamicArraySubscriptException): Ditto. |
| (ForLoopBeginException): Ditto. |
| (ForLoopToException): Ditto. |
| (ForLoopEndException): Ditto. |
| (PointerNilException): Ditto. |
| (NoReturnException): Ditto. |
| (CaseException): Ditto. |
| (WholeNonPosDivException): Ditto. |
| (WholeNonPosModException): Ditto. |
| (WholeZeroDivException): Ditto. |
| (WholeZeroRemException): Ditto. |
| (WholeValueException): Ditto. |
| (RealValueException): Ditto. |
| (ParameterException): Ditto. |
| (NoException): Ditto. |
| * gm2-libs/RTExceptions.def (Raise): Ditto. |
| * gm2-libs/RTExceptions.mod (InvokeHandler): Ditto. |
| * gm2-libs/SYSTEM.def (THROW): Ditto. |
| * m2.flex (_M2_m2flex_fini): Remamed to... |
| (_M2_m2flex_finish): ...here. |
| * mc-boot-ch/GBuiltins.c (_M2_Builtins_finish): Remamed to... |
| (_M2_Builtins_fini): ...this. |
| * mc-boot-ch/GRTco.c (_M2_RTco_finish): Remamed to... |
| (_M2_RTco_fini): ...this. |
| * mc-boot-ch/GSYSTEM.c (_M2_SYSTEM_finish): Remamed to... |
| (_M2_SYSTEM_fini): ...this. |
| * mc-boot-ch/GSelective.c (_M2_Selective_finish): Remamed to... |
| (_M2_Selective_fini): ...this. |
| * mc-boot-ch/GSysExceptions.c (_M2_SysExceptions_init): Add |
| parameters. |
| (_M2_SysExceptions_finish): Remamed to... |
| (_M2_SysExceptions_fini): ...this. |
| * mc-boot-ch/GUnixArgs.cc (_M2_UnixArgs_finish): Remamed to... |
| (_M2_UnixArgs_fini): ...this. |
| (_M2_UnixArgs_ctor::_M2_UnixArgs_ctor): Change parameter |
| to _M2_UnixArgs_fini. |
| * mc-boot-ch/Gdtoa.c (_M2_dtoa_finish): Remamed to... |
| (_M2_dtoa_fini): ...this. |
| * mc-boot-ch/Gerrno.c (_M2_errno_finish): Remamed to... |
| (_M2_errno_fini): ...this. |
| * mc-boot-ch/Gldtoa.c (_M2_ldtoa_finish): Remamed to... |
| (_M2_ldtoa_fini): ...this. |
| * mc-boot-ch/Gtermios.cc (_M2_termios_init): Add parameters. |
| (_M2_termios_finish): Remamed to... |
| (_M2_termios_fini): ...this. |
| * mc-boot-ch/Gwrapc.c (_M2_wrapc_init): Add parameters. |
| (_M2_wrapc_finish): Remamed to... |
| (_M2_wrapc_fini): ...this. |
| * mc-boot/GASCII.c: Rebuild. |
| * mc-boot/GArgs.c: Rebuild. |
| * mc-boot/GAssertion.c: Rebuild. |
| * mc-boot/GBreak.c: Rebuild. |
| * mc-boot/GCmdArgs.c: Rebuild. |
| * mc-boot/GDebug.c: Rebuild. |
| * mc-boot/GDynamicStrings.c: Rebuild. |
| * mc-boot/GEnvironment.c: Rebuild. |
| * mc-boot/GFIO.c: Rebuild. |
| * mc-boot/GFormatStrings.c: Rebuild. |
| * mc-boot/GFpuIO.c: Rebuild. |
| * mc-boot/GIO.c: Rebuild. |
| * mc-boot/GIndexing.c: Rebuild. |
| * mc-boot/GM2Dependent.c: Rebuild. |
| * mc-boot/GM2EXCEPTION.c: Rebuild. |
| * mc-boot/GM2RTS.c: Rebuild. |
| * mc-boot/GM2RTS.h: Rebuild. |
| * mc-boot/GMemUtils.c: Rebuild. |
| * mc-boot/GNumberIO.c: Rebuild. |
| * mc-boot/GPushBackInput.c: Rebuild. |
| * mc-boot/GRTExceptions.c: Rebuild. |
| * mc-boot/GRTExceptions.h: Rebuild. |
| * mc-boot/GRTco.h: Rebuild. |
| * mc-boot/GRTint.c: Rebuild. |
| * mc-boot/GSArgs.c: Rebuild. |
| * mc-boot/GSFIO.c: Rebuild. |
| * mc-boot/GStdIO.c: Rebuild. |
| * mc-boot/GStorage.c: Rebuild. |
| * mc-boot/GStrCase.c: Rebuild. |
| * mc-boot/GStrIO.c: Rebuild. |
| * mc-boot/GStrLib.c: Rebuild. |
| * mc-boot/GStringConvert.c: Rebuild. |
| * mc-boot/GSysStorage.c: Rebuild. |
| * mc-boot/GTimeString.c: Rebuild. |
| * mc-boot/Galists.c: Rebuild. |
| * mc-boot/Gdecl.c: Rebuild. |
| * mc-boot/Gkeyc.c: Rebuild. |
| * mc-boot/Glists.c: Rebuild. |
| * mc-boot/GmcComment.c: Rebuild. |
| * mc-boot/GmcComp.c: Rebuild. |
| * mc-boot/GmcDebug.c: Rebuild. |
| * mc-boot/GmcError.c: Rebuild. |
| * mc-boot/GmcFileName.c: Rebuild. |
| * mc-boot/GmcLexBuf.c: Rebuild. |
| * mc-boot/GmcMetaError.c: Rebuild. |
| * mc-boot/GmcOptions.c: Rebuild. |
| * mc-boot/GmcPreprocess.c: Rebuild. |
| * mc-boot/GmcPretty.c: Rebuild. |
| * mc-boot/GmcPrintf.c: Rebuild. |
| * mc-boot/GmcQuiet.c: Rebuild. |
| * mc-boot/GmcReserved.c: Rebuild. |
| * mc-boot/GmcSearch.c: Rebuild. |
| * mc-boot/GmcStack.c: Rebuild. |
| * mc-boot/GmcStream.c: Rebuild. |
| * mc-boot/Gmcp1.c: Rebuild. |
| * mc-boot/Gmcp2.c: Rebuild. |
| * mc-boot/Gmcp3.c: Rebuild. |
| * mc-boot/Gmcp4.c: Rebuild. |
| * mc-boot/Gmcp5.c: Rebuild. |
| * mc-boot/GnameKey.c: Rebuild. |
| * mc-boot/GsymbolKey.c: Rebuild. |
| * mc-boot/Gtop.c: Rebuild. |
| * mc-boot/Gvarargs.c: Rebuild. |
| * mc-boot/Gwlists.c: Rebuild. |
| * mc-boot/GRTentity.h: New file. |
| * mc/decl.mod (scaffoldStatic): Change _finish to _fini. |
| * mc/mc.flex (_M2_mcflex_fini): New function. |
| (_M2_mcflex_finish): Remove function. |
| * tools-src/mklink.c (GenerateFinishCalls): Change |
| _finish to _fini. |
| (GeneratePrototypes): Change _finish to _fini. |
| |
| 2023-01-31 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (gm2-libs.texi-check): Rename |
| m2/gm2-libs-pim to m2/gm2-libs-log. |
| * gm2-libs-pim/BitBlockOps.def: Moved to... |
| * gm2-libs-log/BitBlockOps.def: ...here. |
| * gm2-libs-pim/BitBlockOps.mod: Moved to... |
| * gm2-libs-log/BitBlockOps.mod: ...here. |
| * gm2-libs-pim/BitByteOps.def: Moved to... |
| * gm2-libs-log/BitByteOps.def: ...here. |
| * gm2-libs-pim/BitByteOps.mod: Moved to... |
| * gm2-libs-log/BitByteOps.mod: ...here. |
| * gm2-libs-pim/BitWordOps.def: Moved to... |
| * gm2-libs-log/BitWordOps.def: ...here. |
| * gm2-libs-pim/BitWordOps.mod: Moved to... |
| * gm2-libs-log/BitWordOps.mod: ...here. |
| * gm2-libs-pim/BlockOps.def: Moved to... |
| * gm2-libs-log/BlockOps.def: ...here. |
| * gm2-libs-pim/BlockOps.mod: Moved to... |
| * gm2-libs-log/BlockOps.mod: ...here. |
| * gm2-libs-pim/Break.c: Moved to... |
| * gm2-libs-log/Break.c: ...here. |
| * gm2-libs-pim/Break.def: Moved to... |
| * gm2-libs-log/Break.def: ...here. |
| * gm2-libs-pim/CardinalIO.def: Moved to... |
| * gm2-libs-log/CardinalIO.def: ...here. |
| * gm2-libs-pim/CardinalIO.mod: Moved to... |
| * gm2-libs-log/CardinalIO.mod: ...here. |
| * gm2-libs-pim/Conversions.def: Moved to... |
| * gm2-libs-log/Conversions.def: ...here. |
| * gm2-libs-pim/Conversions.mod: Moved to... |
| * gm2-libs-log/Conversions.mod: ...here. |
| * gm2-libs-pim/DebugPMD.def: Moved to... |
| * gm2-libs-log/DebugPMD.def: ...here. |
| * gm2-libs-pim/DebugPMD.mod: Moved to... |
| * gm2-libs-log/DebugPMD.mod: ...here. |
| * gm2-libs-pim/DebugTrace.def: Moved to... |
| * gm2-libs-log/DebugTrace.def: ...here. |
| * gm2-libs-pim/DebugTrace.mod: Moved to... |
| * gm2-libs-log/DebugTrace.mod: ...here. |
| * gm2-libs-pim/Delay.def: Moved to... |
| * gm2-libs-log/Delay.def: ...here. |
| * gm2-libs-pim/Delay.mod: Moved to... |
| * gm2-libs-log/Delay.mod: ...here. |
| * gm2-libs-pim/Display.def: Moved to... |
| * gm2-libs-log/Display.def: ...here. |
| * gm2-libs-pim/Display.mod: Moved to... |
| * gm2-libs-log/Display.mod: ...here. |
| * gm2-libs-pim/ErrorCode.def: Moved to... |
| * gm2-libs-log/ErrorCode.def: ...here. |
| * gm2-libs-pim/ErrorCode.mod: Moved to... |
| * gm2-libs-log/ErrorCode.mod: ...here. |
| * gm2-libs-pim/FileSystem.def: Moved to... |
| * gm2-libs-log/FileSystem.def: ...here. |
| * gm2-libs-pim/FileSystem.mod: Moved to... |
| * gm2-libs-log/FileSystem.mod: ...here. |
| * gm2-libs-pim/FloatingUtilities.def: Moved to... |
| * gm2-libs-log/FloatingUtilities.def: ...here. |
| * gm2-libs-pim/FloatingUtilities.mod: Moved to... |
| * gm2-libs-log/FloatingUtilities.mod: ...here. |
| * gm2-libs-pim/InOut.def: Moved to... |
| * gm2-libs-log/InOut.def: ...here. |
| * gm2-libs-pim/InOut.mod: Moved to... |
| * gm2-libs-log/InOut.mod: ...here. |
| * gm2-libs-pim/Keyboard.def: Moved to... |
| * gm2-libs-log/Keyboard.def: ...here. |
| * gm2-libs-pim/Keyboard.mod: Moved to... |
| * gm2-libs-log/Keyboard.mod: ...here. |
| * gm2-libs-pim/LongIO.def: Moved to... |
| * gm2-libs-log/LongIO.def: ...here. |
| * gm2-libs-pim/LongIO.mod: Moved to... |
| * gm2-libs-log/LongIO.mod: ...here. |
| * gm2-libs-pim/NumberConversion.def: Moved to... |
| * gm2-libs-log/NumberConversion.def: ...here. |
| * gm2-libs-pim/NumberConversion.mod: Moved to... |
| * gm2-libs-log/NumberConversion.mod: ...here. |
| * gm2-libs-pim/README.texi: Moved to... |
| * gm2-libs-log/README.texi: ...here. |
| * gm2-libs-pim/Random.def: Moved to... |
| * gm2-libs-log/Random.def: ...here. |
| * gm2-libs-pim/Random.mod: Moved to... |
| * gm2-libs-log/Random.mod: ...here. |
| * gm2-libs-pim/RealConversions.def: Moved to... |
| * gm2-libs-log/RealConversions.def: ...here. |
| * gm2-libs-pim/RealConversions.mod: Moved to... |
| * gm2-libs-log/RealConversions.mod: ...here. |
| * gm2-libs-pim/RealInOut.def: Moved to... |
| * gm2-libs-log/RealInOut.def: ...here. |
| * gm2-libs-pim/RealInOut.mod: Moved to... |
| * gm2-libs-log/RealInOut.mod: ...here. |
| * gm2-libs-pim/Strings.def: Moved to... |
| * gm2-libs-log/Strings.def: ...here. |
| * gm2-libs-pim/Strings.mod: Moved to... |
| * gm2-libs-log/Strings.mod: ...here. |
| * gm2-libs-pim/Termbase.def: Moved to... |
| * gm2-libs-log/Termbase.def: ...here. |
| * gm2-libs-pim/Termbase.mod: Moved to... |
| * gm2-libs-log/Termbase.mod: ...here. |
| * gm2-libs-pim/Terminal.def: Moved to... |
| * gm2-libs-log/Terminal.def: ...here. |
| * gm2-libs-pim/Terminal.mod: Moved to... |
| * gm2-libs-log/Terminal.mod: ...here. |
| * gm2-libs-pim/TimeDate.def: Moved to... |
| * gm2-libs-log/TimeDate.def: ...here. |
| * gm2-libs-pim/TimeDate.mod: Moved to... |
| * gm2-libs-log/TimeDate.mod: ...here. |
| |
| 2023-01-28 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * lang.opt: Claim Wreturn-type. |
| |
| 2023-01-27 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Comp.mod: Import MetaString0. |
| (ExamineCompilationUnit): New variable Message. |
| Create and format error string. |
| * gm2-compiler/M2LexBuf.mod: New variable SeenEof. |
| (GetNonEofToken): New procedure. |
| (Init): Set SeenEof to FALSE. |
| (GetToken): Use GetNonEofToken instead of calls to |
| m2flex.GetToken and GetToken. |
| (AddTok): Detect eoftok and set SeenEof. |
| |
| 2023-01-27 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Options.def: Export GetMQ, SetMQ. |
| * gm2-compiler/M2Preprocess.mod: (MakeSaveTempsFileName): |
| Test NewDir against NIL. Test Dumpdir against NIL. |
| Test GetMD () against NIL. Test GetMMD () against NIL. |
| Test GetMQ () against NIL. Test GetObj () against NIL. |
| Test tempfile against NIL. |
| * gm2-compiler/P2SymBuild.def: Export |
| BuildNoReturnAttribute. |
| |
| 2023-01-27 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR modula2/108555 |
| PR modula2/108182 |
| PR modula2/102343 |
| * gm2-lang.cc (gm2_langhook_option_lang_mask): Do not claim CL_C |
| or CL_DRIVER. |
| (gm2_langhook_init_options): Handle options that we want to pass |
| to the preprocessor. |
| * lang-specs.h: Pass -B and -save-temps to regular compile lines. |
| * lang.opt: Add C and Driver options that Modula-2 intercepts for |
| internal use. Reorder options into two sections and to collate. |
| |
| 2023-01-26 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2GCCDeclare.mod: Import IsProcedureNoReturn. |
| (DeclareProcedureToGccWholeProgram): New variable declared and set |
| returnType. Pass returnType to BuildEndFunctionDeclaration. |
| Extra parameter IsProcedureNoReturn passed to |
| BuildEndFunctionDeclaration. |
| * gm2-compiler/M2Quads.mod (BuildM2MainFunction): Correct |
| scaffold comment and add extra return 0. |
| * gm2-compiler/P2Build.bnf: Import BuildNoReturnAttribute. |
| (ProcedureHeading): Process EndBuildFormalParameters before |
| parsing AttributeNoReturn. |
| (DefProcedureHeading): Process EndBuildFormalParameters before |
| parsing AttributeNoReturn. |
| (AttributeNoReturn): Call BuildNoReturnAttribute. |
| * gm2-compiler/P2SymBuild.def (BuildNoReturnAttribute): New |
| procedure. |
| * gm2-compiler/P2SymBuild.mod (BuildNoReturnAttribute): New |
| procedure. |
| * gm2-compiler/SymbolTable.def (PutProcedureInline): Corrected |
| comment. |
| (PutProcedureNoReturn): New procedure. |
| (IsProcedureNoReturn): New procedure function. |
| * gm2-compiler/SymbolTable.mod (SymProcedure): IsNoReturn |
| new field. |
| (MakeProcedure): Initialize IsNoReturn to FALSE. |
| (PutProcedureNoReturn): New procedure. |
| (IsProcedureNoReturn): New procedure function. |
| * gm2-gcc/m2decl.cc (m2decl_BuildEndFunctionDeclaration): |
| Add extra parameter isnoreturn. Set TREE_THIS_VOLATILE |
| to isnoreturn. |
| * gm2-gcc/m2decl.def (BuildEndFunctionDeclaration): Add |
| extra parameter isnoreturn. |
| * gm2-gcc/m2decl.h (m2decl_BuildEndFunctionDeclaration): Add |
| extra parameter isnoreturn. |
| * gm2-gcc/m2except.cc (m2except_InitExceptions): Change all |
| function decl to pass an extra parameter isnoreturn. |
| |
| 2023-01-26 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * m2.flex (splitSlashStar): Fix comment so that /* does not |
| appear inside the comment. |
| |
| 2023-01-26 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR modula2/108553 |
| * gm2-lang.cc (gm2_langhook_init_options): Remove debug code. |
| |
| 2023-01-26 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (m2/gm2config.h): Rewrite rule to be |
| dependent upon m2/gm2config.aci. |
| (m2/gm2config.aci): Newrule. |
| * configure.ac (AC_CONFIG_HEADERS): Change destination |
| to gm2config.aci. |
| * configure: Regenerate. |
| * gm2-libs/config-host: Regenerate. |
| * gm2-compiler/M2GCCDeclare.mod (AddSymToWatch): Comment |
| out. |
| * gm2-compiler/M2Quads.mod (BuildConstHighFromSym): Remove |
| Dim. |
| (StartBuildWith): Call BuildStmtNoteTok. |
| (BuildStmtNoteTok): New procedure. |
| (BuildStmtNote): Re-implement re-factor into two |
| procedures and call BuildStmtNoteTok. |
| * gm2config.h.in: Remove. |
| * gm2config.aci.in: New file. |
| |
| 2023-01-25 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR modula2/102343 |
| PR modula2/108182 |
| * gm2-compiler/M2Comp.mod: Early exit for pre-processor-only jobs. |
| * gm2-compiler/M2Options.def (SetPPOnly, GetPPOnly, SetMD, GetMD, |
| SetMMD, GetMMD, SetMQ, GetMQ, SetObj, GetObj, SetDumpDir, |
| GetDumpDir):New. |
| * gm2-compiler/M2Options.mod:(SetPPOnly, GetPPOnly, SetMD, GetMD, |
| SetMMD, GetMMD, SetMQ, GetMQ, SetObj, GetObj, SetDumpDir, |
| GetDumpDir):New. |
| * gm2-compiler/M2Preprocess.def (PreprocessModule): Add flag to |
| indicate the main file. |
| * gm2-compiler/M2Preprocess.mod: Handle Preprocess-only jobs, |
| handle MD, MMD and MQ options. |
| * gm2-gcc/m2options.h (M2Options_SetPPOnly, M2Options_GetPPOnly, |
| M2Options_SetDumpDir, M2Options_SetMD, M2Options_GetMD, |
| M2Options_SetMMD, M2Options_GetMMD, M2Options_SetMQ, M2Options_GetMQ, |
| M2Options_SetObj, M2Options_GetObj): New. |
| * gm2-gcc/m2type.cc (m2type_InitBaseTypes): Early exit for pre- |
| processor-only jobs. |
| * gm2-lang.cc (gm2_langhook_init): Handle preprocess-only commands. |
| (gm2_langhook_option_lang_mask): Claim C and Driver options so that |
| we can intercept them for building pre-processor commands. |
| (gm2_langhook_init_options): Collect the preprocessor line here. |
| Save options that have different actions for preprocessor and compile |
| commands. |
| (gm2_langhook_handle_option): Only handle the modula-2 options here. |
| (gm2_langhook_post_options): Do not create a back-end for pre- |
| processor-only jobs. |
| * gm2spec.cc (lang_specific_driver): Ignore PCH options, append a |
| scaffold-main for cases where we are building a main module with |
| -c. |
| * lang-specs.h: Revise to handle preprocessor-only jobs and to |
| consume pre-processed files. |
| * lang.opt: Remove Driver and C options copies (we claim these |
| separately). |
| |
| 2023-01-24 Co-Authored by: Iain Sandoe <iain@sandoe.co.uk> |
| |
| * Make-lang.in (GM2-COMP-BOOT-DEFS): Add |
| DynamicStringPath.def. |
| (GM2-COMP-BOOT-MODS): Add DynamicStringPath.mod. |
| (GM2-COMP-DEFS): Add DynamicStringPath.def. |
| (GM2-COMP-MODS): Add DynamicStringPath.mod. |
| ($(objdir)/m2/gm2-libs-min/SYSTEM.def): Split path into |
| multiple -I components. |
| ($(objdir)/m2/gm2-libs/SYSTEM.def): Ditto. |
| ($(objdir)/m2/gm2-libs-coroutines/SYSTEM.def): Ditto. |
| * gm2-compiler/M2Options.mod: Import DynamicStringPath. |
| (SetSearchPath): Reimplement using DynamicStringPath |
| procedures. |
| * gm2-compiler/M2Search.def (InitSearchPath): Remove. |
| (PrependSearchPath): Remove. |
| * gm2-compiler/M2Search.mod (SFIO): Remove import. |
| (DynamicStringPath): Add import. |
| (Directory): Remove. |
| (UserPath): Remove. |
| (InitialPath): Remove. |
| (InitSearchPath): Remove. |
| (PrependSearchPath): Remove. |
| (FindSourceFile): Re-implement. |
| (FindSourceDefFile): Re-implement. |
| (FindSourceModFile): Re-implement. |
| * gm2-gcc/init.cc (_M2_DynamicStringPath_init): |
| New prototype. |
| (init_FrontEndInit): Call _M2_DynamicStringPath_init. |
| * tools-src/makeSystem: Allow multiple -I paths. |
| * gm2-compiler/DynamicStringPath.def: New file. |
| * gm2-compiler/DynamicStringPath.mod: New file. |
| * gm2-gcc/m2options.h (M2Options_SetMakeIncludePath): Add |
| prototype. |
| |
| 2023-01-24 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * m2.flex (cpreprocessor): Add temporary variable |
| which is initialized to 0. |
| (commentCLevel): New variable. |
| (endOfCComment): New function. |
| (splitSlashStar): New function to split /* into / and * |
| tokens. |
| (COMMENTC): New flex state. |
| ("/*"): New rule to test whether we should treat /* |
| as a single token or as two tokens. |
| (<COMMENTC>.): New rule to skip a character. |
| (<COMMENTC>\n.*): New rule to consume the line. |
| (<COMMENTC>"*/"): New rule to call endOfCComment. |
| |
| 2023-01-24 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs-iso/RTco.def: Import RTentity. |
| Declare RTco as a definition for C module. |
| |
| 2023-01-23 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR modula2/108182 |
| PR modula2/108480 |
| * Make-lang.in: Pass libsubdir to the language init |
| build. |
| * gm2-lang.cc (INCLUDE_VECTOR): Define. |
| (add_one_import_path): New. |
| (add_m2_import_paths): New. |
| (gm2_langhook_post_options): Arrange to add the include |
| paths (and add the system ones) in the same order as C |
| uses. |
| * gm2spec.cc (build_archive_path): Remove. |
| (add_default_combination): Remove. |
| (add_default_archives): Remove. |
| (add_default_libs): We no longer need a '-L' option, just |
| emit the -l and each library in use. |
| (build_include_path): Remove. |
| (add_include): Remove. |
| (add_default_includes): Remove. |
| (library_installed): Remove. |
| (check_valid_library): Remove. |
| (check_valid_list): Remove. |
| (convert_abbreviation): Diagnose unhandled cases. |
| (lang_specific_driver): Skip options where we will add back |
| a validated version. |
| * lang-specs.h (M2CPP): Reformat, append %I when -fcpp is not |
| in use. Revise the cc1gm2 spec to omit mentioning options that |
| are handled in the c pre-processor line. |
| * lang.opt: Allow preprocessing and path options as input to the |
| cc1gm2 invocation, so that they can be passed to the preprocessor |
| invocation. |
| |
| 2023-01-23 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR modula2/108405 |
| * gm2-libs-iso/Preemptive.mod (initPreemptive): Use a value for |
| extra space that is divisible by common OS pagesizes. |
| |
| 2023-01-20 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs/Args.mod (GetArg): Check index before |
| accessing array. |
| * gm2-libs/M2Dependent.mod (toCString): Check index |
| before accessing array. |
| * mc-boot/GArgs.c: Rebuilt. |
| * mc-boot/GM2Dependent.c: Rebuilt. |
| * mc-boot/Gkeyc.c: Rebuilt. |
| * mc/keyc.mod (seenUIntMin): Initialize once. |
| (seenUIntMax): Initialize once. |
| (checkLimits): Only test seenUIntMin and seenUIntMax |
| once. |
| * pge-boot/GArgs.c: Rebuilt. |
| * pge-boot/GM2Dependent.c: Rebuilt. |
| |
| 2023-01-20 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-gcc/m2statement.cc (gm2_gimplify_function_node): |
| Remove. |
| * gm2-libs/DynamicStrings.mod (Equal): Remove dead code. |
| * m2.flex (<COMMENT>"<*"): Add {} for else statement. |
| * m2pp.cc (hextree): Add conditional #ifdef DEBUGGING. |
| * mc-boot/GDynamicStrings.c: Rebuild. |
| * pge-boot/GDynamicStrings.c: Rebuild. |
| * pge-boot/GFIO.c: Rebuild. |
| * pge-boot/GIndexing.c: Rebuild. |
| * pge-boot/GM2EXCEPTION.c: Rebuild. |
| * pge-boot/GM2RTS.c: Rebuild. |
| * pge-boot/GNameKey.c: Rebuild. |
| * pge-boot/GPushBackInput.c: Rebuild. |
| * pge-boot/GRTExceptions.c: Rebuild. |
| * pge-boot/GStdIO.c: Rebuild. |
| * pge-boot/GSymbolKey.c: Rebuild. |
| * pge-boot/GSysStorage.c: Rebuild. |
| |
| 2023-01-17 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * mc-boot/GM2RTS.c: Rebuilt. |
| * mc-boot/GM2RTS.h: Rebuilt. |
| * mc-boot/Gdecl.c: Rebuilt. |
| * mc-boot/GmcOptions.c: Rebuilt. |
| * mc/mcOptions.mod (displayVersion): |
| Split first printf into three components |
| |
| 2023-01-17 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs-iso/M2RTS.def (Halt): Parameter file renamed to filename. |
| (HaltC): New procedure declaration. |
| (ErrorMessage): Parameter file renamed to filename. |
| * gm2-libs-iso/M2RTS.mod (Halt): Parameter file renamed to |
| filename. |
| (HaltC): New procedure implementation. |
| (ErrorStringC): New procedure implementation. |
| (ErrorMessageC): New procedure implementation. |
| * gm2-libs/M2RTS.def (Halt): Parameter file renamed to filename. |
| (HaltC): New procedure declaration. |
| (ErrorMessage): Parameter file renamed to filename. |
| * gm2-libs/M2RTS.mod (Halt): Parameter file renamed to filename. |
| (HaltC): New procedure implementation. |
| (ErrorStringC): New procedure implementation. |
| (ErrorMessageC): New procedure implementation. |
| |
| 2023-01-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * mc-boot-ch/Glibc.c (libc_time): New function. |
| (libc_localtime): New function. |
| * mc-boot/GDynamicStrings.c: Regenerate. |
| * mc-boot/GFIO.c: Regenerate. |
| * mc-boot/GFormatStrings.c: Regenerate. |
| * mc-boot/GIndexing.c: Regenerate. |
| * mc-boot/GM2Dependent.c: Regenerate. |
| * mc-boot/GM2EXCEPTION.c: Regenerate. |
| * mc-boot/GPushBackInput.c: Regenerate. |
| * mc-boot/GRTExceptions.c: Regenerate. |
| * mc-boot/GRTint.c: Regenerate. |
| * mc-boot/GStdIO.c: Regenerate. |
| * mc-boot/GStringConvert.c: Regenerate. |
| * mc-boot/GSysStorage.c: Regenerate. |
| * mc-boot/Gdecl.c: Regenerate. |
| * mc-boot/GmcComment.c: Regenerate. |
| * mc-boot/GmcComp.c: Regenerate. |
| * mc-boot/GmcDebug.c: Regenerate. |
| * mc-boot/GmcMetaError.c: Regenerate. |
| * mc-boot/GmcOptions.c: Regenerate. |
| * mc-boot/GmcStack.c: Regenerate. |
| * mc-boot/GnameKey.c: Regenerate. |
| * mc-boot/GsymbolKey.c: Regenerate. |
| * mc-boot/Gkeyc.c: Regenerate. |
| * mc/decl.mod (putFieldRecord): Change NulName to NulKey |
| and fix type comparision. |
| * mc/mcOptions.mod (YEAR): Remove. |
| (getYear): New procedure function. |
| (displayVersion): Use result from getYear instead of YEAR. |
| Emit boilerplate for GPL v3. |
| (gplBody): Use result from getYear instead of YEAR. |
| (glplBody): Use result from getYear instead of YEAR. |
| |
| 2023-01-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2Quads.mod (AssignUnboundedVar): Check Type |
| against NulSym and call MetaErrorT1 if necessary. |
| (AssignUnboundedNonVar): Check Type against NulSym and |
| call MetaErrorT1 if necessary. |
| (BuildDesignatorPointer): Check Type1 against NulSym and |
| call MetaErrorT1 if necessary. |
| |
| 2023-01-16 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * mc/mcOptions.mod (displayVersion): Change GPLv2 to GPLv3. |
| (YEAR) set to 2023. |
| |
| 2023-01-15 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-compiler/M2LexBuf.mod (isSrcToken): Add block comment. |
| Remove dead code. |
| * gm2-compiler/M2Quads.def (BuildNot): Add notTokPos parameter. |
| * gm2-compiler/M2Quads.mod (BuildNot): Add notTokPos parameter. |
| Create and push virtual token. |
| (PopBooltok): New procedure. |
| (PushBooltok): New procedure. |
| (PushBool): Re-implement using PushBooltok. |
| (PopBool): Re-implement using PopBooltok. |
| * gm2-compiler/P3Build.bnf (ConstFactor): Record token |
| position of NOT. |
| (Factor): Record token position of NOT. |
| * gm2-compiler/PHBuild.bnf (ConstFactor): Record token |
| position of NOT. |
| (Relation): Push token position. |
| (UnaryOrConstTerm): Push token position. |
| (AddOperator): Push token position. |
| (MulOperator): Push token position. |
| |
| 2023-01-13 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * gm2-gcc/m2options.h (M2Options_SetVerbose): Export the |
| function. |
| * gm2-lang.cc: Handle OPT_v, passing it to the compiler. |
| * lang-specs.h: Pass -v to cc1gm2. |
| |
| 2023-01-13 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * mc-boot-ch/GRTco.c (RTco_select): Add return 0. |
| * pge-boot/GRTco.c (RTco_select): Add return 0. |
| |
| 2023-01-10 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (m2/mc-boot/$(SRC_PREFIX)%.o): Add |
| m2/gm2-libs/gm2-libs-host.h dependency. |
| (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Add |
| m2/gm2-libs/gm2-libs-host.h dependency. |
| |
| 2023-01-10 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (GM2_1): Change -B path to m2/stage1. |
| ($(objdir)/m2/images/gnu.eps): Check and create dest dir |
| if necessary. |
| (gm2-libs.texi-check): Check and create dir m2/gm2-libs-pim, |
| m2/gm2-libs-iso and m2/gm2-libs if necessary. |
| ($(objdir)/m2/gm2-compiler-boot): Remove. |
| ($(objdir)/m2/gm2-libs-boot): Remove. |
| ($(objdir)/m2/gm2-libs-libiberty): Remove. |
| ($(objdir)/m2/gm2-libiberty): Remove. |
| ($(objdir)/m2/gm2-gcc): Remove. |
| ($(objdir)/m2/gm2-compiler): Remove. |
| ($(objdir)/m2/gm2-libs): Remove. |
| ($(objdir)/m2/gm2-libs-iso): Remove. |
| ($(objdir)/m2/gm2-libs-min): Remove. |
| ($(objdir)/m2/gm2-compiler-paranoid): Remove. |
| ($(objdir)/m2/gm2-libs-paranoid): Remove. |
| ($(objdir)/m2/gm2-compiler-verify): Remove. |
| ($(objdir)/m2/boot-bin): Remove. |
| ($(objdir)/m2/gm2-libs-pim): Remove. |
| ($(objdir)/m2/gm2-libs-coroutines): Remove. |
| (stage1/m2): Remove. |
| (stage2/m2): Remove. |
| (stage3/m2): Remove. |
| (m2.stageprofile): New rule. |
| (m2.stagefeedback): New rule. |
| (cc1gm2$(exeext)): Change dependent name. |
| (m2/stage2/cc1gm2$(exeext)): Change dependent name. |
| Check and create dest dir. |
| (m2/stage1/cc1gm2$(exeext)): Check and create dest dir |
| if necessary. |
| (m2/gm2-gcc/%.o): Ditto. |
| (m2/gm2-gcc/rtegraph.o): Ditto. |
| (m2/gm2-gcc/$(SRC_PREFIX)%.h): Ditto. |
| (m2/gm2-gcc/$(SRC_PREFIX)%.h): Ditto. |
| (m2/mc-boot): Ditto. |
| (m2/mc-boot-ch): Ditto. |
| (m2/gm2-libs-boot): Ditto. |
| (m2/gm2-compiler-boot): Ditto. |
| (m2/gm2-compiler): Ditto. |
| (m2/gm2-libiberty): Ditto. |
| (m2/gm2-compiler): Ditto. |
| (m2/gm2-libs-iso): Ditto. |
| (m2/gm2-libs): Ditto. |
| (m2/gm2-libs-min): Ditto. |
| (m2/gm2-libs-coroutines): Ditto. |
| (m2/boot-bin): Ditto. |
| (m2/pge-boot): Ditto. |
| (m2/pge-boot): Ditto. |
| * Make-maintainer.in (m2/gm2-ppg-boot): Check and create |
| dest dir if necessary. |
| (m2): Ditto. |
| (m2/gm2-ppg-boot): Ditto. |
| (m2/gm2-pg-boot): Ditto. |
| (m2/gm2-auto): Ditto. |
| (m2/gm2-pg-boot): Ditto. |
| (m2/gm2-pge-boot): Ditto. |
| ($(objdir)/plugin): Ditto. |
| ($(objdir)/m2/mc-boot-ch): Ditto. |
| ($(objdir)/m2/mc-boot-gen): Ditto. |
| (m2/boot-bin): Ditto. |
| (m2/mc): Ditto. |
| (m2/mc-obj): Ditto. |
| ($(objdir)/m2/gm2-ppg-boot): Ditto. |
| ($(objdir)/m2/gm2-pg-boot): Ditto. |
| ($(objdir)/m2/gm2-pge-boot): Ditto. |
| (m2/mc-boot-gen): Ditto. |
| (m2/m2obj3): Ditto. |
| (m2/gm2-libs-paranoid): Ditto. |
| (m2/gm2-compiler-paranoid): Ditto. |
| (m2/gm2-libs-paranoid): Ditto. |
| (m2/gm2-compiler-paranoid): Ditto. |
| (m2/gm2-libs-paranoid): Ditto. |
| (m2/gm2-compiler-paranoid): Ditto. |
| * config-lang.in (m2/gm2-compiler-boot): Remove mkdir. |
| (m2/gm2-libs-boot): Ditto. |
| (m2/gm2-ici-boot): Ditto. |
| (m2/gm2-libiberty): Ditto. |
| (m2/gm2-gcc): Ditto. |
| (m2/gm2-compiler): Ditto. |
| (m2/gm2-libs): Ditto. |
| (m2/gm2-libs-iso): Ditto. |
| (m2/gm2-compiler-paranoid): Ditto. |
| (m2/gm2-libs-paranoid): Ditto. |
| (m2/gm2-compiler-verify): Ditto. |
| (m2/boot-bin): Ditto. |
| (m2/gm2-libs-pim): Ditto. |
| (m2/gm2-libs-coroutines): Ditto. |
| (m2/gm2-libs-min): Ditto. |
| (m2/pge-boot): Ditto. |
| (plugin): Ditto. |
| (stage1/m2): Ditto. |
| (stage2/m2): Ditto. |
| (stage3/m2): Ditto. |
| (stage4/m2): Ditto. |
| (m2/gm2-auto): Ditto. |
| (m2/gm2-pg-boot): Ditto. |
| (m2/gm2-pge-boot): Ditto. |
| (m2/gm2-ppg-boot): Ditto. |
| (m2/mc-boot): Ditto. |
| (m2/mc-boot-ch): Ditto. |
| (m2/mc-boot-gen): Ditto. |
| |
| 2023-01-09 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * Make-lang.in (m2/pge-boot/%.o): Add m2/gm2config.h. |
| * gm2-libs/config-host: Regenerate. |
| |
| 2023-01-07 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * gm2-libs-min/libc.c (abort): Update declaration to match the |
| expected form, add no-return attribute. |
| (exit): Add no-return attribute. |
| |
| 2023-01-05 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR modula2/107631 |
| * gm2-gcc/m2builtins.cc: Remove scalb, scalbf, scalbl, |
| significand, significandf, significandl. |
| * gm2-libs/Builtins.def (significand): Likewise. |
| * gm2-libs/Builtins.mod: Likewise. |
| * target-independent/Builtins.texi: Likewise. |
| * gm2-libs-iso/LowLong.mod: Implement fraction with scalbn*() and |
| ilogb*(). |
| * gm2-libs-iso/LowReal.mod: Likewise. |
| * gm2-libs-iso/LowShort.mod: Likewise. |
| |
| 2023-01-05 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2-libs-min/M2RTS.def (ConstructModules): New procedure |
| declaration. |
| (DeconstructModules): New procedure declaration. |
| * gm2-libs-min/M2RTS.mod (ConstructModules): New procedure |
| dummy implementation. |
| (DeconstructModules): New procedure dummy implementation. |
| |
| 2023-01-05 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * gm2spec.cc (lang_specific_driver): Handle static-libgm2. |
| * lang.opt: Add static-libgm2. |
| |
| 2023-01-05 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * gm2spec.cc (lang_specific_driver): Pass -static-libstdc++ on to |
| the target driver if the linker does not support Bstatic/dynamic. |
| |
| 2023-01-04 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR modula2/108183 |
| * gm2-libs-ch/UnixArgs.cc (_M2_UnixArgs_ctor): Rework to use |
| an extern "C" function with 'constructor' attribute. |
| * gm2-libs-ch/dtoa.cc (_M2_dtoa_ctor): Likewise. |
| * gm2-libs-ch/ldtoa.cc (_M2_ldtoa_ctor): Likewise. |
| |
| 2023-01-04 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR modula2/108259 |
| * gm2-gcc/m2decl.cc (m2decl_DeclareModuleCtor): Make module |
| registration constructors visible. |
| |
| 2023-01-04 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * Make-lang.in (dvi, ps, pdf): Build in the gcc/doc directory, also |
| use the configured tools for texi -> dvi and texi -> pdf. |
| |
| 2023-01-01 Iain Sandoe <iain@sandoe.co.uk> |
| Gaius Mulley <gaiusmod2@gmail.com> |
| |
| PR modula2/108183 |
| * gm2-compiler/M2GCCDeclare.mod: Module registration constructors are |
| externs to the builder of m2_link. |
| |
| 2022-12-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
| Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR modula2/107612 |
| * Make-lang.in (soext): Use .dylib for Darwin. |
| (PLUGINLDFLAGS): Use dynmic lookup, set the plugin name, and append |
| -nodefaultlibs to suppress the linking of libstdc++. |
| Use INCINTL in compile lines for the plugin. |
| |
| 2022-12-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR modula2/108153 |
| * gm2-gcc/m2linemap.def (location_t): Use CARDINAL instead of INTEGER. |
| |
| 2022-12-19 Jakub Jelinek <jakub@redhat.com> |
| |
| * gm2-gcc/m2linemap.cc (m2linemap_ErrorAt, m2linemap_ErrorAtf, |
| m2linemap_WarningAtf, m2linemap_NoteAtf, m2linemap_internal_error): |
| Call functions with "%s", message rather than just message, so that |
| % chars in message aren't treated as format specifiers. |
| |
| 2022-12-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR modula2/108147 |
| * gm2-gcc/m2linemap.def (ErrorAtf, WarningAtf, NoteAtf): |
| Comment out prototypes with varargs. |
| * gm2-gcc/m2linemap.h (m2linemap_ErrorAtf, m2linemap_WarningAtf, |
| m2linemap_NoteAtf): No longer varargs. |
| * gm2-gcc/m2linemap.cc (m2linemap_ErrorAtf): Turned into a |
| non-varargs wrapper around ... |
| (m2linemap_ErrorAtf_1): ... this. New static function. |
| (m2linemap_WarningAtf): Turned into a non-varargs wrapper around ... |
| (m2linemap_WarningAtf_1): ... this. New static function. |
| (m2linemap_NoteAtf): Turned into a non-varargs wrapper around ... |
| (m2linemap_NoteAtf_1): ... this. New static function. |
| |
| 2022-12-15 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * configure.ac: Stop probing for realpath. |
| * tools-src/calcpath: Break dependency on realpath, cut |
| and echo. |
| * configure: Rebuilt. |
| |
| 2022-12-15 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * gm2config.h.in: Rebuilt. |
| |
| 2022-12-14 Gaius Mulley <gaiusmod2@gmail.com> |
| |
| * COPYING.FDL: New file. |
| * COPYING.RUNTIME: New file. |
| * COPYING3: New file. |
| * COPYING3.LIB: New file. |
| * Make-lang.in: New file. |
| * Make-maintainer.in: New file. |
| * NEWS: New file. |
| * README: New file. |
| * config-lang.in: New file. |
| * config-make.in: New file. |
| * configure.ac: New file. |
| * gm2-compiler/CLexBuf.def: New file. |
| * gm2-compiler/CLexBuf.mod: New file. |
| * gm2-compiler/FifoQueue.def: New file. |
| * gm2-compiler/FifoQueue.mod: New file. |
| * gm2-compiler/Lists.def: New file. |
| * gm2-compiler/Lists.mod: New file. |
| * gm2-compiler/M2ALU.def: New file. |
| * gm2-compiler/M2ALU.mod: New file. |
| * gm2-compiler/M2AsmUtil.def: New file. |
| * gm2-compiler/M2AsmUtil.mod: New file. |
| * gm2-compiler/M2Base.def: New file. |
| * gm2-compiler/M2Base.mod: New file. |
| * gm2-compiler/M2BasicBlock.def: New file. |
| * gm2-compiler/M2BasicBlock.mod: New file. |
| * gm2-compiler/M2Batch.def: New file. |
| * gm2-compiler/M2Batch.mod: New file. |
| * gm2-compiler/M2Bitset.def: New file. |
| * gm2-compiler/M2Bitset.mod: New file. |
| * gm2-compiler/M2CaseList.def: New file. |
| * gm2-compiler/M2CaseList.mod: New file. |
| * gm2-compiler/M2Check.def: New file. |
| * gm2-compiler/M2Check.mod: New file. |
| * gm2-compiler/M2Code.def: New file. |
| * gm2-compiler/M2Code.mod: New file. |
| * gm2-compiler/M2ColorString.def: New file. |
| * gm2-compiler/M2ColorString.mod: New file. |
| * gm2-compiler/M2Comp.def: New file. |
| * gm2-compiler/M2Comp.mod: New file. |
| * gm2-compiler/M2Const.def: New file. |
| * gm2-compiler/M2Const.mod: New file. |
| * gm2-compiler/M2Debug.def: New file. |
| * gm2-compiler/M2Debug.mod: New file. |
| * gm2-compiler/M2DebugStack.def: New file. |
| * gm2-compiler/M2DebugStack.mod: New file. |
| * gm2-compiler/M2Defaults.def: New file. |
| * gm2-compiler/M2Defaults.mod: New file. |
| * gm2-compiler/M2DriverOptions.def: New file. |
| * gm2-compiler/M2DriverOptions.mod: New file. |
| * gm2-compiler/M2Emit.def: New file. |
| * gm2-compiler/M2Emit.mod: New file. |
| * gm2-compiler/M2Error.def: New file. |
| * gm2-compiler/M2Error.mod: New file. |
| * gm2-compiler/M2EvalSym.def: New file. |
| * gm2-compiler/M2FileName.def: New file. |
| * gm2-compiler/M2FileName.mod: New file. |
| * gm2-compiler/M2GCCDeclare.def: New file. |
| * gm2-compiler/M2GCCDeclare.mod: New file. |
| * gm2-compiler/M2GenGCC.def: New file. |
| * gm2-compiler/M2GenGCC.mod: New file. |
| * gm2-compiler/M2Graph.def: New file. |
| * gm2-compiler/M2Graph.mod: New file. |
| * gm2-compiler/M2Lex.def: New file. |
| * gm2-compiler/M2Lex.mod: New file. |
| * gm2-compiler/M2LexBuf.def: New file. |
| * gm2-compiler/M2LexBuf.mod: New file. |
| * gm2-compiler/M2MetaError.def: New file. |
| * gm2-compiler/M2MetaError.mod: New file. |
| * gm2-compiler/M2Optimize.def: New file. |
| * gm2-compiler/M2Optimize.mod: New file. |
| * gm2-compiler/M2Options.def: New file. |
| * gm2-compiler/M2Options.mod: New file. |
| * gm2-compiler/M2Pass.def: New file. |
| * gm2-compiler/M2Pass.mod: New file. |
| * gm2-compiler/M2Preprocess.def: New file. |
| * gm2-compiler/M2Preprocess.mod: New file. |
| * gm2-compiler/M2Printf.def: New file. |
| * gm2-compiler/M2Printf.mod: New file. |
| * gm2-compiler/M2Quads.def: New file. |
| * gm2-compiler/M2Quads.mod: New file. |
| * gm2-compiler/M2Quiet.def: New file. |
| * gm2-compiler/M2Quiet.mod: New file. |
| * gm2-compiler/M2Range.def: New file. |
| * gm2-compiler/M2Range.mod: New file. |
| * gm2-compiler/M2Reserved.def: New file. |
| * gm2-compiler/M2Reserved.mod: New file. |
| * gm2-compiler/M2SSA.def: New file. |
| * gm2-compiler/M2SSA.mod: New file. |
| * gm2-compiler/M2Scaffold.def: New file. |
| * gm2-compiler/M2Scaffold.mod: New file. |
| * gm2-compiler/M2Scope.def: New file. |
| * gm2-compiler/M2Scope.mod: New file. |
| * gm2-compiler/M2Search.def: New file. |
| * gm2-compiler/M2Search.mod: New file. |
| * gm2-compiler/M2Size.def: New file. |
| * gm2-compiler/M2Size.mod: New file. |
| * gm2-compiler/M2StackAddress.def: New file. |
| * gm2-compiler/M2StackAddress.mod: New file. |
| * gm2-compiler/M2StackWord.def: New file. |
| * gm2-compiler/M2StackWord.mod: New file. |
| * gm2-compiler/M2Students.def: New file. |
| * gm2-compiler/M2Students.mod: New file. |
| * gm2-compiler/M2Swig.def: New file. |
| * gm2-compiler/M2Swig.mod: New file. |
| * gm2-compiler/M2System.def: New file. |
| * gm2-compiler/M2System.mod: New file. |
| * gm2-compiler/M2Version.def: New file. |
| * gm2-compiler/NameKey.def: New file. |
| * gm2-compiler/NameKey.mod: New file. |
| * gm2-compiler/ObjectFiles.def: New file. |
| * gm2-compiler/ObjectFiles.mod: New file. |
| * gm2-compiler/Output.def: New file. |
| * gm2-compiler/Output.mod: New file. |
| * gm2-compiler/P0SymBuild.def: New file. |
| * gm2-compiler/P0SymBuild.mod: New file. |
| * gm2-compiler/P0SyntaxCheck.bnf: New file. |
| * gm2-compiler/P0SyntaxCheck.def: New file. |
| * gm2-compiler/P1Build.bnf: New file. |
| * gm2-compiler/P1Build.def: New file. |
| * gm2-compiler/P1SymBuild.def: New file. |
| * gm2-compiler/P1SymBuild.mod: New file. |
| * gm2-compiler/P2Build.bnf: New file. |
| * gm2-compiler/P2Build.def: New file. |
| * gm2-compiler/P2SymBuild.def: New file. |
| * gm2-compiler/P2SymBuild.mod: New file. |
| * gm2-compiler/P3Build.bnf: New file. |
| * gm2-compiler/P3Build.def: New file. |
| * gm2-compiler/P3SymBuild.def: New file. |
| * gm2-compiler/P3SymBuild.mod: New file. |
| * gm2-compiler/PCBuild.bnf: New file. |
| * gm2-compiler/PCBuild.def: New file. |
| * gm2-compiler/PCSymBuild.def: New file. |
| * gm2-compiler/PCSymBuild.mod: New file. |
| * gm2-compiler/PHBuild.bnf: New file. |
| * gm2-compiler/PHBuild.def: New file. |
| * gm2-compiler/README: New file. |
| * gm2-compiler/Sets.def: New file. |
| * gm2-compiler/Sets.mod: New file. |
| * gm2-compiler/SymbolConversion.def: New file. |
| * gm2-compiler/SymbolConversion.mod: New file. |
| * gm2-compiler/SymbolKey.def: New file. |
| * gm2-compiler/SymbolKey.mod: New file. |
| * gm2-compiler/SymbolTable.def: New file. |
| * gm2-compiler/SymbolTable.mod: New file. |
| * gm2-compiler/bnflex.def: New file. |
| * gm2-compiler/bnflex.mod: New file. |
| * gm2-compiler/cflex.def: New file. |
| * gm2-compiler/gm2.mod: New file. |
| * gm2-compiler/gm2lcc.mod: New file. |
| * gm2-compiler/gm2lgen.mod: New file. |
| * gm2-compiler/gm2lorder.mod: New file. |
| * gm2-compiler/m2flex.def: New file. |
| * gm2-compiler/ppg.mod: New file. |
| * gm2-gcc/README: New file. |
| * gm2-gcc/dynamicstrings.h: New file. |
| * gm2-gcc/gcc-consolidation.h: New file. |
| * gm2-gcc/init.cc: New file. |
| * gm2-gcc/init.def: New file. |
| * gm2-gcc/init.h: New file. |
| * gm2-gcc/m2assert.cc: New file. |
| * gm2-gcc/m2assert.h: New file. |
| * gm2-gcc/m2block.cc: New file. |
| * gm2-gcc/m2block.def: New file. |
| * gm2-gcc/m2block.h: New file. |
| * gm2-gcc/m2builtins.cc: New file. |
| * gm2-gcc/m2builtins.def: New file. |
| * gm2-gcc/m2builtins.h: New file. |
| * gm2-gcc/m2color.cc: New file. |
| * gm2-gcc/m2color.def: New file. |
| * gm2-gcc/m2color.h: New file. |
| * gm2-gcc/m2configure.cc: New file. |
| * gm2-gcc/m2configure.def: New file. |
| * gm2-gcc/m2configure.h: New file. |
| * gm2-gcc/m2convert.cc: New file. |
| * gm2-gcc/m2convert.def: New file. |
| * gm2-gcc/m2convert.h: New file. |
| * gm2-gcc/m2decl.cc: New file. |
| * gm2-gcc/m2decl.def: New file. |
| * gm2-gcc/m2decl.h: New file. |
| * gm2-gcc/m2except.cc: New file. |
| * gm2-gcc/m2except.def: New file. |
| * gm2-gcc/m2except.h: New file. |
| * gm2-gcc/m2expr.cc: New file. |
| * gm2-gcc/m2expr.def: New file. |
| * gm2-gcc/m2expr.h: New file. |
| * gm2-gcc/m2linemap.cc: New file. |
| * gm2-gcc/m2linemap.def: New file. |
| * gm2-gcc/m2linemap.h: New file. |
| * gm2-gcc/m2misc.cc: New file. |
| * gm2-gcc/m2misc.def: New file. |
| * gm2-gcc/m2misc.h: New file. |
| * gm2-gcc/m2options.h: New file. |
| * gm2-gcc/m2range.h: New file. |
| * gm2-gcc/m2search.h: New file. |
| * gm2-gcc/m2statement.cc: New file. |
| * gm2-gcc/m2statement.def: New file. |
| * gm2-gcc/m2statement.h: New file. |
| * gm2-gcc/m2top.cc: New file. |
| * gm2-gcc/m2top.def: New file. |
| * gm2-gcc/m2top.h: New file. |
| * gm2-gcc/m2tree.cc: New file. |
| * gm2-gcc/m2tree.def: New file. |
| * gm2-gcc/m2tree.h: New file. |
| * gm2-gcc/m2treelib.cc: New file. |
| * gm2-gcc/m2treelib.def: New file. |
| * gm2-gcc/m2treelib.h: New file. |
| * gm2-gcc/m2type.cc: New file. |
| * gm2-gcc/m2type.def: New file. |
| * gm2-gcc/m2type.h: New file. |
| * gm2-gcc/rtegraph.cc: New file. |
| * gm2-gcc/rtegraph.h: New file. |
| * gm2-ici/M2Emit.mod: New file. |
| * gm2-ici/README: New file. |
| * gm2-ici/m2linemap.c: New file. |
| * gm2-internals.texi: New file. |
| * gm2-lang.cc: New file. |
| * gm2-lang.h: New file. |
| * gm2-libiberty/README: New file. |
| * gm2-libiberty/choosetemp.def: New file. |
| * gm2-libiberty/pexecute.def: New file. |
| * gm2-libs-ch/M2LINK.c: New file. |
| * gm2-libs-ch/README: New file. |
| * gm2-libs-ch/RTcodummy.c: New file. |
| * gm2-libs-ch/RTintdummy.c: New file. |
| * gm2-libs-ch/Selective.c: New file. |
| * gm2-libs-ch/SysExceptions.c: New file. |
| * gm2-libs-ch/UnixArgs.cc: New file. |
| * gm2-libs-ch/cgetopt.c: New file. |
| * gm2-libs-ch/choosetemp.c: New file. |
| * gm2-libs-ch/dtoa.cc: New file. |
| * gm2-libs-ch/errno.c: New file. |
| * gm2-libs-ch/host.c: New file. |
| * gm2-libs-ch/ldtoa.cc: New file. |
| * gm2-libs-ch/m2rts.h: New file. |
| * gm2-libs-ch/termios.c: New file. |
| * gm2-libs-ch/tools.c: New file. |
| * gm2-libs-ch/wrapc.c: New file. |
| * gm2-libs-ch/xlibc.c: New file. |
| * gm2-libs-coroutines/Debug.def: New file. |
| * gm2-libs-coroutines/Debug.mod: New file. |
| * gm2-libs-coroutines/Executive.def: New file. |
| * gm2-libs-coroutines/Executive.mod: New file. |
| * gm2-libs-coroutines/KeyBoardLEDs.def: New file. |
| * gm2-libs-coroutines/README.texi: New file. |
| * gm2-libs-coroutines/SYSTEM.def: New file. |
| * gm2-libs-coroutines/SYSTEM.mod: New file. |
| * gm2-libs-coroutines/TimerHandler.def: New file. |
| * gm2-libs-coroutines/TimerHandler.mod: New file. |
| * gm2-libs-iso/COROUTINES.def: New file. |
| * gm2-libs-iso/COROUTINES.mod: New file. |
| * gm2-libs-iso/ChanConsts.def: New file. |
| * gm2-libs-iso/ChanConsts.h: New file. |
| * gm2-libs-iso/ChanConsts.mod: New file. |
| * gm2-libs-iso/CharClass.def: New file. |
| * gm2-libs-iso/CharClass.mod: New file. |
| * gm2-libs-iso/ClientSocket.def: New file. |
| * gm2-libs-iso/ClientSocket.mod: New file. |
| * gm2-libs-iso/ComplexMath.def: New file. |
| * gm2-libs-iso/ComplexMath.mod: New file. |
| * gm2-libs-iso/ConvStringLong.def: New file. |
| * gm2-libs-iso/ConvStringLong.mod: New file. |
| * gm2-libs-iso/ConvStringReal.def: New file. |
| * gm2-libs-iso/ConvStringReal.mod: New file. |
| * gm2-libs-iso/ConvTypes.def: New file. |
| * gm2-libs-iso/ConvTypes.mod: New file. |
| * gm2-libs-iso/EXCEPTIONS.def: New file. |
| * gm2-libs-iso/EXCEPTIONS.mod: New file. |
| * gm2-libs-iso/ErrnoCategory.def: New file. |
| * gm2-libs-iso/GeneralUserExceptions.def: New file. |
| * gm2-libs-iso/GeneralUserExceptions.mod: New file. |
| * gm2-libs-iso/IOChan.def: New file. |
| * gm2-libs-iso/IOChan.mod: New file. |
| * gm2-libs-iso/IOConsts.def: New file. |
| * gm2-libs-iso/IOConsts.mod: New file. |
| * gm2-libs-iso/IOLink.def: New file. |
| * gm2-libs-iso/IOLink.mod: New file. |
| * gm2-libs-iso/IOResult.def: New file. |
| * gm2-libs-iso/IOResult.mod: New file. |
| * gm2-libs-iso/LongComplexMath.def: New file. |
| * gm2-libs-iso/LongComplexMath.mod: New file. |
| * gm2-libs-iso/LongConv.def: New file. |
| * gm2-libs-iso/LongConv.mod: New file. |
| * gm2-libs-iso/LongIO.def: New file. |
| * gm2-libs-iso/LongIO.mod: New file. |
| * gm2-libs-iso/LongMath.def: New file. |
| * gm2-libs-iso/LongMath.mod: New file. |
| * gm2-libs-iso/LongStr.def: New file. |
| * gm2-libs-iso/LongStr.mod: New file. |
| * gm2-libs-iso/LongWholeIO.def: New file. |
| * gm2-libs-iso/LongWholeIO.mod: New file. |
| * gm2-libs-iso/LowLong.def: New file. |
| * gm2-libs-iso/LowLong.mod: New file. |
| * gm2-libs-iso/LowReal.def: New file. |
| * gm2-libs-iso/LowReal.mod: New file. |
| * gm2-libs-iso/LowShort.def: New file. |
| * gm2-libs-iso/LowShort.mod: New file. |
| * gm2-libs-iso/M2EXCEPTION.def: New file. |
| * gm2-libs-iso/M2EXCEPTION.mod: New file. |
| * gm2-libs-iso/M2RTS.def: New file. |
| * gm2-libs-iso/M2RTS.mod: New file. |
| * gm2-libs-iso/MemStream.def: New file. |
| * gm2-libs-iso/MemStream.mod: New file. |
| * gm2-libs-iso/Preemptive.def: New file. |
| * gm2-libs-iso/Preemptive.mod: New file. |
| * gm2-libs-iso/Processes.def: New file. |
| * gm2-libs-iso/Processes.mod: New file. |
| * gm2-libs-iso/ProgramArgs.def: New file. |
| * gm2-libs-iso/ProgramArgs.mod: New file. |
| * gm2-libs-iso/README.texi: New file. |
| * gm2-libs-iso/RTco.def: New file. |
| * gm2-libs-iso/RTdata.def: New file. |
| * gm2-libs-iso/RTdata.mod: New file. |
| * gm2-libs-iso/RTentity.def: New file. |
| * gm2-libs-iso/RTentity.mod: New file. |
| * gm2-libs-iso/RTfio.def: New file. |
| * gm2-libs-iso/RTfio.mod: New file. |
| * gm2-libs-iso/RTgen.def: New file. |
| * gm2-libs-iso/RTgen.mod: New file. |
| * gm2-libs-iso/RTgenif.def: New file. |
| * gm2-libs-iso/RTgenif.mod: New file. |
| * gm2-libs-iso/RTio.def: New file. |
| * gm2-libs-iso/RTio.mod: New file. |
| * gm2-libs-iso/RandomNumber.def: New file. |
| * gm2-libs-iso/RandomNumber.mod: New file. |
| * gm2-libs-iso/RawIO.def: New file. |
| * gm2-libs-iso/RawIO.mod: New file. |
| * gm2-libs-iso/RealConv.def: New file. |
| * gm2-libs-iso/RealConv.mod: New file. |
| * gm2-libs-iso/RealIO.def: New file. |
| * gm2-libs-iso/RealIO.mod: New file. |
| * gm2-libs-iso/RealMath.def: New file. |
| * gm2-libs-iso/RealMath.mod: New file. |
| * gm2-libs-iso/RealStr.def: New file. |
| * gm2-libs-iso/RealStr.mod: New file. |
| * gm2-libs-iso/RndFile.def: New file. |
| * gm2-libs-iso/RndFile.mod: New file. |
| * gm2-libs-iso/SIOResult.def: New file. |
| * gm2-libs-iso/SIOResult.mod: New file. |
| * gm2-libs-iso/SLongIO.def: New file. |
| * gm2-libs-iso/SLongIO.mod: New file. |
| * gm2-libs-iso/SLongWholeIO.def: New file. |
| * gm2-libs-iso/SLongWholeIO.mod: New file. |
| * gm2-libs-iso/SRawIO.def: New file. |
| * gm2-libs-iso/SRawIO.mod: New file. |
| * gm2-libs-iso/SRealIO.def: New file. |
| * gm2-libs-iso/SRealIO.mod: New file. |
| * gm2-libs-iso/SShortIO.def: New file. |
| * gm2-libs-iso/SShortIO.mod: New file. |
| * gm2-libs-iso/SShortWholeIO.def: New file. |
| * gm2-libs-iso/SShortWholeIO.mod: New file. |
| * gm2-libs-iso/STextIO.def: New file. |
| * gm2-libs-iso/STextIO.mod: New file. |
| * gm2-libs-iso/SWholeIO.def: New file. |
| * gm2-libs-iso/SWholeIO.mod: New file. |
| * gm2-libs-iso/SYSTEM.def: New file. |
| * gm2-libs-iso/SYSTEM.mod: New file. |
| * gm2-libs-iso/Semaphores.def: New file. |
| * gm2-libs-iso/Semaphores.mod: New file. |
| * gm2-libs-iso/SeqFile.def: New file. |
| * gm2-libs-iso/SeqFile.mod: New file. |
| * gm2-libs-iso/ShortComplexMath.def: New file. |
| * gm2-libs-iso/ShortComplexMath.mod: New file. |
| * gm2-libs-iso/ShortIO.def: New file. |
| * gm2-libs-iso/ShortIO.mod: New file. |
| * gm2-libs-iso/ShortWholeIO.def: New file. |
| * gm2-libs-iso/ShortWholeIO.mod: New file. |
| * gm2-libs-iso/SimpleCipher.def: New file. |
| * gm2-libs-iso/SimpleCipher.mod: New file. |
| * gm2-libs-iso/StdChans.def: New file. |
| * gm2-libs-iso/StdChans.mod: New file. |
| * gm2-libs-iso/Storage.def: New file. |
| * gm2-libs-iso/Storage.mod: New file. |
| * gm2-libs-iso/StreamFile.def: New file. |
| * gm2-libs-iso/StreamFile.mod: New file. |
| * gm2-libs-iso/StringChan.def: New file. |
| * gm2-libs-iso/StringChan.mod: New file. |
| * gm2-libs-iso/Strings.def: New file. |
| * gm2-libs-iso/Strings.mod: New file. |
| * gm2-libs-iso/SysClock.def: New file. |
| * gm2-libs-iso/SysClock.mod: New file. |
| * gm2-libs-iso/TERMINATION.def: New file. |
| * gm2-libs-iso/TERMINATION.mod: New file. |
| * gm2-libs-iso/TermFile.def: New file. |
| * gm2-libs-iso/TermFile.mod: New file. |
| * gm2-libs-iso/TextIO.def: New file. |
| * gm2-libs-iso/TextIO.mod: New file. |
| * gm2-libs-iso/WholeConv.def: New file. |
| * gm2-libs-iso/WholeConv.mod: New file. |
| * gm2-libs-iso/WholeIO.def: New file. |
| * gm2-libs-iso/WholeIO.mod: New file. |
| * gm2-libs-iso/WholeStr.def: New file. |
| * gm2-libs-iso/WholeStr.mod: New file. |
| * gm2-libs-iso/wrapsock.c: New file. |
| * gm2-libs-iso/wrapsock.def: New file. |
| * gm2-libs-iso/wraptime.c: New file. |
| * gm2-libs-iso/wraptime.def: New file. |
| * gm2-libs-min/M2RTS.def: New file. |
| * gm2-libs-min/M2RTS.mod: New file. |
| * gm2-libs-min/SYSTEM.def: New file. |
| * gm2-libs-min/SYSTEM.mod: New file. |
| * gm2-libs-min/libc.c: New file. |
| * gm2-libs-min/libc.def: New file. |
| * gm2-libs-pim/BitBlockOps.def: New file. |
| * gm2-libs-pim/BitBlockOps.mod: New file. |
| * gm2-libs-pim/BitByteOps.def: New file. |
| * gm2-libs-pim/BitByteOps.mod: New file. |
| * gm2-libs-pim/BitWordOps.def: New file. |
| * gm2-libs-pim/BitWordOps.mod: New file. |
| * gm2-libs-pim/BlockOps.def: New file. |
| * gm2-libs-pim/BlockOps.mod: New file. |
| * gm2-libs-pim/Break.c: New file. |
| * gm2-libs-pim/Break.def: New file. |
| * gm2-libs-pim/CardinalIO.def: New file. |
| * gm2-libs-pim/CardinalIO.mod: New file. |
| * gm2-libs-pim/Conversions.def: New file. |
| * gm2-libs-pim/Conversions.mod: New file. |
| * gm2-libs-pim/DebugPMD.def: New file. |
| * gm2-libs-pim/DebugPMD.mod: New file. |
| * gm2-libs-pim/DebugTrace.def: New file. |
| * gm2-libs-pim/DebugTrace.mod: New file. |
| * gm2-libs-pim/Delay.def: New file. |
| * gm2-libs-pim/Delay.mod: New file. |
| * gm2-libs-pim/Display.def: New file. |
| * gm2-libs-pim/Display.mod: New file. |
| * gm2-libs-pim/ErrorCode.def: New file. |
| * gm2-libs-pim/ErrorCode.mod: New file. |
| * gm2-libs-pim/FileSystem.def: New file. |
| * gm2-libs-pim/FileSystem.mod: New file. |
| * gm2-libs-pim/FloatingUtilities.def: New file. |
| * gm2-libs-pim/FloatingUtilities.mod: New file. |
| * gm2-libs-pim/InOut.def: New file. |
| * gm2-libs-pim/InOut.mod: New file. |
| * gm2-libs-pim/Keyboard.def: New file. |
| * gm2-libs-pim/Keyboard.mod: New file. |
| * gm2-libs-pim/LongIO.def: New file. |
| * gm2-libs-pim/LongIO.mod: New file. |
| * gm2-libs-pim/NumberConversion.def: New file. |
| * gm2-libs-pim/NumberConversion.mod: New file. |
| * gm2-libs-pim/README.texi: New file. |
| * gm2-libs-pim/Random.def: New file. |
| * gm2-libs-pim/Random.mod: New file. |
| * gm2-libs-pim/RealConversions.def: New file. |
| * gm2-libs-pim/RealConversions.mod: New file. |
| * gm2-libs-pim/RealInOut.def: New file. |
| * gm2-libs-pim/RealInOut.mod: New file. |
| * gm2-libs-pim/Strings.def: New file. |
| * gm2-libs-pim/Strings.mod: New file. |
| * gm2-libs-pim/Termbase.def: New file. |
| * gm2-libs-pim/Termbase.mod: New file. |
| * gm2-libs-pim/Terminal.def: New file. |
| * gm2-libs-pim/Terminal.mod: New file. |
| * gm2-libs-pim/TimeDate.def: New file. |
| * gm2-libs-pim/TimeDate.mod: New file. |
| * gm2-libs/ASCII.def: New file. |
| * gm2-libs/ASCII.mod: New file. |
| * gm2-libs/Args.def: New file. |
| * gm2-libs/Args.mod: New file. |
| * gm2-libs/Assertion.def: New file. |
| * gm2-libs/Assertion.mod: New file. |
| * gm2-libs/Break.def: New file. |
| * gm2-libs/Break.mod: New file. |
| * gm2-libs/Builtins.def: New file. |
| * gm2-libs/Builtins.mod: New file. |
| * gm2-libs/COROUTINES.def: New file. |
| * gm2-libs/COROUTINES.mod: New file. |
| * gm2-libs/CmdArgs.def: New file. |
| * gm2-libs/CmdArgs.mod: New file. |
| * gm2-libs/Debug.def: New file. |
| * gm2-libs/Debug.mod: New file. |
| * gm2-libs/DynamicStrings.def: New file. |
| * gm2-libs/DynamicStrings.mod: New file. |
| * gm2-libs/Environment.def: New file. |
| * gm2-libs/Environment.mod: New file. |
| * gm2-libs/FIO.def: New file. |
| * gm2-libs/FIO.mod: New file. |
| * gm2-libs/FormatStrings.def: New file. |
| * gm2-libs/FormatStrings.mod: New file. |
| * gm2-libs/FpuIO.def: New file. |
| * gm2-libs/FpuIO.mod: New file. |
| * gm2-libs/GetOpt.def: New file. |
| * gm2-libs/GetOpt.mod: New file. |
| * gm2-libs/IO.def: New file. |
| * gm2-libs/IO.mod: New file. |
| * gm2-libs/Indexing.def: New file. |
| * gm2-libs/Indexing.mod: New file. |
| * gm2-libs/LMathLib0.def: New file. |
| * gm2-libs/LMathLib0.mod: New file. |
| * gm2-libs/LegacyReal.def: New file. |
| * gm2-libs/LegacyReal.mod: New file. |
| * gm2-libs/M2Dependent.def: New file. |
| * gm2-libs/M2Dependent.mod: New file. |
| * gm2-libs/M2EXCEPTION.def: New file. |
| * gm2-libs/M2EXCEPTION.mod: New file. |
| * gm2-libs/M2LINK.def: New file. |
| * gm2-libs/M2RTS.def: New file. |
| * gm2-libs/M2RTS.mod: New file. |
| * gm2-libs/MathLib0.def: New file. |
| * gm2-libs/MathLib0.mod: New file. |
| * gm2-libs/MemUtils.def: New file. |
| * gm2-libs/MemUtils.mod: New file. |
| * gm2-libs/NumberIO.def: New file. |
| * gm2-libs/NumberIO.mod: New file. |
| * gm2-libs/OptLib.def: New file. |
| * gm2-libs/OptLib.mod: New file. |
| * gm2-libs/PushBackInput.def: New file. |
| * gm2-libs/PushBackInput.mod: New file. |
| * gm2-libs/README.texi: New file. |
| * gm2-libs/RTExceptions.def: New file. |
| * gm2-libs/RTExceptions.mod: New file. |
| * gm2-libs/RTint.def: New file. |
| * gm2-libs/RTint.mod: New file. |
| * gm2-libs/SArgs.def: New file. |
| * gm2-libs/SArgs.mod: New file. |
| * gm2-libs/SCmdArgs.def: New file. |
| * gm2-libs/SCmdArgs.mod: New file. |
| * gm2-libs/SEnvironment.def: New file. |
| * gm2-libs/SEnvironment.mod: New file. |
| * gm2-libs/SFIO.def: New file. |
| * gm2-libs/SFIO.mod: New file. |
| * gm2-libs/SMathLib0.def: New file. |
| * gm2-libs/SMathLib0.mod: New file. |
| * gm2-libs/SYSTEM.def: New file. |
| * gm2-libs/SYSTEM.mod: New file. |
| * gm2-libs/Scan.def: New file. |
| * gm2-libs/Scan.mod: New file. |
| * gm2-libs/Selective.def: New file. |
| * gm2-libs/StdIO.def: New file. |
| * gm2-libs/StdIO.mod: New file. |
| * gm2-libs/Storage.def: New file. |
| * gm2-libs/Storage.mod: New file. |
| * gm2-libs/StrCase.def: New file. |
| * gm2-libs/StrCase.mod: New file. |
| * gm2-libs/StrIO.def: New file. |
| * gm2-libs/StrIO.mod: New file. |
| * gm2-libs/StrLib.def: New file. |
| * gm2-libs/StrLib.mod: New file. |
| * gm2-libs/StringConvert.def: New file. |
| * gm2-libs/StringConvert.mod: New file. |
| * gm2-libs/SysExceptions.def: New file. |
| * gm2-libs/SysStorage.def: New file. |
| * gm2-libs/SysStorage.mod: New file. |
| * gm2-libs/TimeString.def: New file. |
| * gm2-libs/TimeString.mod: New file. |
| * gm2-libs/UnixArgs.def: New file. |
| * gm2-libs/cbuiltin.def: New file. |
| * gm2-libs/cgetopt.def: New file. |
| * gm2-libs/config-host: New file. |
| * gm2-libs/config-host.in: New file. |
| * gm2-libs/cxxabi.def: New file. |
| * gm2-libs/dtoa.def: New file. |
| * gm2-libs/errno.def: New file. |
| * gm2-libs/gdbif.def: New file. |
| * gm2-libs/gdbif.mod: New file. |
| * gm2-libs/gm2-libs-host.h.in: New file. |
| * gm2-libs/ldtoa.def: New file. |
| * gm2-libs/libc.def: New file. |
| * gm2-libs/libm.def: New file. |
| * gm2-libs/sckt.def: New file. |
| * gm2-libs/termios.def: New file. |
| * gm2-libs/wrapc.def: New file. |
| * gm2config.h.in: New file. |
| * gm2spec.cc: New file. |
| * gm2version.h: New file. |
| * init/README: New file. |
| * init/mcinit: New file. |
| * init/ppginit: New file. |
| * lang-specs.h: New file. |
| * lang.opt: New file. |
| * m2-tree.def: New file. |
| * m2-tree.h: New file. |
| * m2.flex: New file. |
| * m2pp.cc: New file. |
| * m2pp.h: New file. |
| * mc-boot-ch/GBuiltins.c: New file. |
| * mc-boot-ch/GM2LINK.c: New file. |
| * mc-boot-ch/GRTco.c: New file. |
| * mc-boot-ch/GSYSTEM.c: New file. |
| * mc-boot-ch/GSelective.c: New file. |
| * mc-boot-ch/GSysExceptions.c: New file. |
| * mc-boot-ch/GUnixArgs.cc: New file. |
| * mc-boot-ch/Gabort.c: New file. |
| * mc-boot-ch/Gcbuiltin.c: New file. |
| * mc-boot-ch/Gdtoa.c: New file. |
| * mc-boot-ch/Gerrno.c: New file. |
| * mc-boot-ch/Gldtoa.c: New file. |
| * mc-boot-ch/Glibc.c: New file. |
| * mc-boot-ch/Glibm.c: New file. |
| * mc-boot-ch/Gmcrts.c: New file. |
| * mc-boot-ch/Gmcrts.h: New file. |
| * mc-boot-ch/Gnetwork.h: New file. |
| * mc-boot-ch/Gtermios.cc: New file. |
| * mc-boot-ch/Gwrapc.c: New file. |
| * mc-boot-ch/README: New file. |
| * mc-boot-ch/m2rts.h: New file. |
| * mc-boot-ch/network.c: New file. |
| * mc-boot/GASCII.c: New file. |
| * mc-boot/GASCII.h: New file. |
| * mc-boot/GArgs.c: New file. |
| * mc-boot/GArgs.h: New file. |
| * mc-boot/GAssertion.c: New file. |
| * mc-boot/GAssertion.h: New file. |
| * mc-boot/GBreak.c: New file. |
| * mc-boot/GBreak.h: New file. |
| * mc-boot/GCOROUTINES.h: New file. |
| * mc-boot/GCmdArgs.c: New file. |
| * mc-boot/GCmdArgs.h: New file. |
| * mc-boot/GDebug.c: New file. |
| * mc-boot/GDebug.h: New file. |
| * mc-boot/GDynamicStrings.c: New file. |
| * mc-boot/GDynamicStrings.h: New file. |
| * mc-boot/GEnvironment.c: New file. |
| * mc-boot/GEnvironment.h: New file. |
| * mc-boot/GFIO.c: New file. |
| * mc-boot/GFIO.h: New file. |
| * mc-boot/GFormatStrings.c: New file. |
| * mc-boot/GFormatStrings.h: New file. |
| * mc-boot/GFpuIO.c: New file. |
| * mc-boot/GFpuIO.h: New file. |
| * mc-boot/GIO.c: New file. |
| * mc-boot/GIO.h: New file. |
| * mc-boot/GIndexing.c: New file. |
| * mc-boot/GIndexing.h: New file. |
| * mc-boot/GM2Dependent.c: New file. |
| * mc-boot/GM2Dependent.h: New file. |
| * mc-boot/GM2EXCEPTION.c: New file. |
| * mc-boot/GM2EXCEPTION.h: New file. |
| * mc-boot/GM2LINK.h: New file. |
| * mc-boot/GM2RTS.c: New file. |
| * mc-boot/GM2RTS.h: New file. |
| * mc-boot/GMemUtils.c: New file. |
| * mc-boot/GMemUtils.h: New file. |
| * mc-boot/GNumberIO.c: New file. |
| * mc-boot/GNumberIO.h: New file. |
| * mc-boot/GPushBackInput.c: New file. |
| * mc-boot/GPushBackInput.h: New file. |
| * mc-boot/GRTExceptions.c: New file. |
| * mc-boot/GRTExceptions.h: New file. |
| * mc-boot/GRTco.h: New file. |
| * mc-boot/GRTint.c: New file. |
| * mc-boot/GRTint.h: New file. |
| * mc-boot/GSArgs.c: New file. |
| * mc-boot/GSArgs.h: New file. |
| * mc-boot/GSFIO.c: New file. |
| * mc-boot/GSFIO.h: New file. |
| * mc-boot/GSYSTEM.h: New file. |
| * mc-boot/GSelective.h: New file. |
| * mc-boot/GStdIO.c: New file. |
| * mc-boot/GStdIO.h: New file. |
| * mc-boot/GStorage.c: New file. |
| * mc-boot/GStorage.h: New file. |
| * mc-boot/GStrCase.c: New file. |
| * mc-boot/GStrCase.h: New file. |
| * mc-boot/GStrIO.c: New file. |
| * mc-boot/GStrIO.h: New file. |
| * mc-boot/GStrLib.c: New file. |
| * mc-boot/GStrLib.h: New file. |
| * mc-boot/GStringConvert.c: New file. |
| * mc-boot/GStringConvert.h: New file. |
| * mc-boot/GSysExceptions.h: New file. |
| * mc-boot/GSysStorage.c: New file. |
| * mc-boot/GSysStorage.h: New file. |
| * mc-boot/GTimeString.c: New file. |
| * mc-boot/GTimeString.h: New file. |
| * mc-boot/GUnixArgs.h: New file. |
| * mc-boot/Galists.c: New file. |
| * mc-boot/Galists.h: New file. |
| * mc-boot/Gdecl.c: New file. |
| * mc-boot/Gdecl.h: New file. |
| * mc-boot/Gdtoa.h: New file. |
| * mc-boot/Gerrno.h: New file. |
| * mc-boot/Gkeyc.c: New file. |
| * mc-boot/Gkeyc.h: New file. |
| * mc-boot/Gldtoa.h: New file. |
| * mc-boot/Glibc.h: New file. |
| * mc-boot/Glibm.h: New file. |
| * mc-boot/Glists.c: New file. |
| * mc-boot/Glists.h: New file. |
| * mc-boot/GmcComment.c: New file. |
| * mc-boot/GmcComment.h: New file. |
| * mc-boot/GmcComp.c: New file. |
| * mc-boot/GmcComp.h: New file. |
| * mc-boot/GmcDebug.c: New file. |
| * mc-boot/GmcDebug.h: New file. |
| * mc-boot/GmcError.c: New file. |
| * mc-boot/GmcError.h: New file. |
| * mc-boot/GmcFileName.c: New file. |
| * mc-boot/GmcFileName.h: New file. |
| * mc-boot/GmcLexBuf.c: New file. |
| * mc-boot/GmcLexBuf.h: New file. |
| * mc-boot/GmcMetaError.c: New file. |
| * mc-boot/GmcMetaError.h: New file. |
| * mc-boot/GmcOptions.c: New file. |
| * mc-boot/GmcOptions.h: New file. |
| * mc-boot/GmcPreprocess.c: New file. |
| * mc-boot/GmcPreprocess.h: New file. |
| * mc-boot/GmcPretty.c: New file. |
| * mc-boot/GmcPretty.h: New file. |
| * mc-boot/GmcPrintf.c: New file. |
| * mc-boot/GmcPrintf.h: New file. |
| * mc-boot/GmcQuiet.c: New file. |
| * mc-boot/GmcQuiet.h: New file. |
| * mc-boot/GmcReserved.c: New file. |
| * mc-boot/GmcReserved.h: New file. |
| * mc-boot/GmcSearch.c: New file. |
| * mc-boot/GmcSearch.h: New file. |
| * mc-boot/GmcStack.c: New file. |
| * mc-boot/GmcStack.h: New file. |
| * mc-boot/GmcStream.c: New file. |
| * mc-boot/GmcStream.h: New file. |
| * mc-boot/Gmcflex.h: New file. |
| * mc-boot/Gmcp1.c: New file. |
| * mc-boot/Gmcp1.h: New file. |
| * mc-boot/Gmcp2.c: New file. |
| * mc-boot/Gmcp2.h: New file. |
| * mc-boot/Gmcp3.c: New file. |
| * mc-boot/Gmcp3.h: New file. |
| * mc-boot/Gmcp4.c: New file. |
| * mc-boot/Gmcp4.h: New file. |
| * mc-boot/Gmcp5.c: New file. |
| * mc-boot/Gmcp5.h: New file. |
| * mc-boot/GnameKey.c: New file. |
| * mc-boot/GnameKey.h: New file. |
| * mc-boot/Gpth.h: New file. |
| * mc-boot/GsymbolKey.c: New file. |
| * mc-boot/GsymbolKey.h: New file. |
| * mc-boot/Gtermios.h: New file. |
| * mc-boot/Gtop.c: New file. |
| * mc-boot/Gvarargs.c: New file. |
| * mc-boot/Gvarargs.h: New file. |
| * mc-boot/Gwlists.c: New file. |
| * mc-boot/Gwlists.h: New file. |
| * mc-boot/Gwrapc.h: New file. |
| * mc-boot/README: New file. |
| * mc/Indexing.def: New file. |
| * mc/Indexing.mod: New file. |
| * mc/README: New file. |
| * mc/alists.def: New file. |
| * mc/alists.mod: New file. |
| * mc/decl.def: New file. |
| * mc/decl.mod: New file. |
| * mc/decl.mod-extra: New file. |
| * mc/keyc.def: New file. |
| * mc/keyc.mod: New file. |
| * mc/lists.def: New file. |
| * mc/lists.mod: New file. |
| * mc/m2flex.def: New file. |
| * mc/mc.flex: New file. |
| * mc/mcComment.def: New file. |
| * mc/mcComment.h: New file. |
| * mc/mcComment.mod: New file. |
| * mc/mcComp.def: New file. |
| * mc/mcComp.mod: New file. |
| * mc/mcDebug.def: New file. |
| * mc/mcDebug.mod: New file. |
| * mc/mcError.def: New file. |
| * mc/mcError.mod: New file. |
| * mc/mcFileName.def: New file. |
| * mc/mcFileName.mod: New file. |
| * mc/mcLexBuf.def: New file. |
| * mc/mcLexBuf.h: New file. |
| * mc/mcLexBuf.mod: New file. |
| * mc/mcMetaError.def: New file. |
| * mc/mcMetaError.mod: New file. |
| * mc/mcOptions.def: New file. |
| * mc/mcOptions.mod: New file. |
| * mc/mcPreprocess.def: New file. |
| * mc/mcPreprocess.mod: New file. |
| * mc/mcPretty.def: New file. |
| * mc/mcPretty.mod: New file. |
| * mc/mcPrintf.def: New file. |
| * mc/mcPrintf.mod: New file. |
| * mc/mcQuiet.def: New file. |
| * mc/mcQuiet.mod: New file. |
| * mc/mcReserved.def: New file. |
| * mc/mcReserved.h: New file. |
| * mc/mcReserved.mod: New file. |
| * mc/mcSearch.def: New file. |
| * mc/mcSearch.mod: New file. |
| * mc/mcStack.def: New file. |
| * mc/mcStack.mod: New file. |
| * mc/mcStream.def: New file. |
| * mc/mcStream.mod: New file. |
| * mc/mcflex.def: New file. |
| * mc/mcp1.bnf: New file. |
| * mc/mcp1.def: New file. |
| * mc/mcp2.bnf: New file. |
| * mc/mcp2.def: New file. |
| * mc/mcp3.bnf: New file. |
| * mc/mcp3.def: New file. |
| * mc/mcp4.bnf: New file. |
| * mc/mcp4.def: New file. |
| * mc/mcp5.bnf: New file. |
| * mc/mcp5.def: New file. |
| * mc/nameKey.def: New file. |
| * mc/nameKey.mod: New file. |
| * mc/symbolKey.def: New file. |
| * mc/symbolKey.mod: New file. |
| * mc/top.mod: New file. |
| * mc/varargs.def: New file. |
| * mc/varargs.mod: New file. |
| * mc/wlists.def: New file. |
| * mc/wlists.mod: New file. |
| * pge-boot/GASCII.c: New file. |
| * pge-boot/GASCII.h: New file. |
| * pge-boot/GArgs.c: New file. |
| * pge-boot/GArgs.h: New file. |
| * pge-boot/GAssertion.c: New file. |
| * pge-boot/GAssertion.h: New file. |
| * pge-boot/GBreak.h: New file. |
| * pge-boot/GBuiltins.c: New file. |
| * pge-boot/GCmdArgs.h: New file. |
| * pge-boot/GDebug.c: New file. |
| * pge-boot/GDebug.h: New file. |
| * pge-boot/GDynamicStrings.c: New file. |
| * pge-boot/GDynamicStrings.h: New file. |
| * pge-boot/GEnvironment.h: New file. |
| * pge-boot/GFIO.c: New file. |
| * pge-boot/GFIO.h: New file. |
| * pge-boot/GFormatStrings.h: New file. |
| * pge-boot/GFpuIO.h: New file. |
| * pge-boot/GIO.c: New file. |
| * pge-boot/GIO.h: New file. |
| * pge-boot/GIndexing.c: New file. |
| * pge-boot/GIndexing.h: New file. |
| * pge-boot/GLists.c: New file. |
| * pge-boot/GLists.h: New file. |
| * pge-boot/GM2Dependent.c: New file. |
| * pge-boot/GM2Dependent.h: New file. |
| * pge-boot/GM2EXCEPTION.c: New file. |
| * pge-boot/GM2EXCEPTION.h: New file. |
| * pge-boot/GM2LINK.c: New file. |
| * pge-boot/GM2LINK.h: New file. |
| * pge-boot/GM2RTS.c: New file. |
| * pge-boot/GM2RTS.h: New file. |
| * pge-boot/GNameKey.c: New file. |
| * pge-boot/GNameKey.h: New file. |
| * pge-boot/GNumberIO.c: New file. |
| * pge-boot/GNumberIO.h: New file. |
| * pge-boot/GOutput.c: New file. |
| * pge-boot/GOutput.h: New file. |
| * pge-boot/GPushBackInput.c: New file. |
| * pge-boot/GPushBackInput.h: New file. |
| * pge-boot/GRTExceptions.c: New file. |
| * pge-boot/GRTExceptions.h: New file. |
| * pge-boot/GRTco.c: New file. |
| * pge-boot/GSArgs.h: New file. |
| * pge-boot/GSEnvironment.h: New file. |
| * pge-boot/GSFIO.c: New file. |
| * pge-boot/GSFIO.h: New file. |
| * pge-boot/GSYSTEM.c: New file. |
| * pge-boot/GSYSTEM.h: New file. |
| * pge-boot/GScan.h: New file. |
| * pge-boot/GSelective.c: New file. |
| * pge-boot/GStdIO.c: New file. |
| * pge-boot/GStdIO.h: New file. |
| * pge-boot/GStorage.c: New file. |
| * pge-boot/GStorage.h: New file. |
| * pge-boot/GStrCase.c: New file. |
| * pge-boot/GStrCase.h: New file. |
| * pge-boot/GStrIO.c: New file. |
| * pge-boot/GStrIO.h: New file. |
| * pge-boot/GStrLib.c: New file. |
| * pge-boot/GStrLib.h: New file. |
| * pge-boot/GStringConvert.h: New file. |
| * pge-boot/GSymbolKey.c: New file. |
| * pge-boot/GSymbolKey.h: New file. |
| * pge-boot/GSysExceptions.c: New file. |
| * pge-boot/GSysExceptions.h: New file. |
| * pge-boot/GSysStorage.c: New file. |
| * pge-boot/GSysStorage.h: New file. |
| * pge-boot/GTimeString.h: New file. |
| * pge-boot/GUnixArgs.cc: New file. |
| * pge-boot/GUnixArgs.h: New file. |
| * pge-boot/Gabort.c: New file. |
| * pge-boot/Gbnflex.c: New file. |
| * pge-boot/Gbnflex.h: New file. |
| * pge-boot/Gcbuiltin.c: New file. |
| * pge-boot/Gdtoa.c: New file. |
| * pge-boot/Gdtoa.h: New file. |
| * pge-boot/Gerrno.c: New file. |
| * pge-boot/Gerrno.h: New file. |
| * pge-boot/Gldtoa.c: New file. |
| * pge-boot/Gldtoa.h: New file. |
| * pge-boot/Glibc.c: New file. |
| * pge-boot/Glibc.h: New file. |
| * pge-boot/Glibm.c: New file. |
| * pge-boot/Glibm.h: New file. |
| * pge-boot/Gmcrts.c: New file. |
| * pge-boot/Gmcrts.h: New file. |
| * pge-boot/Gnetwork.h: New file. |
| * pge-boot/Gpge.c: New file. |
| * pge-boot/Gtermios.cc: New file. |
| * pge-boot/Gtermios.h: New file. |
| * pge-boot/Gwrapc.c: New file. |
| * pge-boot/Gwrapc.h: New file. |
| * pge-boot/README: New file. |
| * pge-boot/m2rts.h: New file. |
| * pge-boot/main.c: New file. |
| * pge-boot/network.c: New file. |
| * plugin/README: New file. |
| * plugin/m2rte.cc: New file. |
| * tools-src/README: New file. |
| * tools-src/boilerplate.py: New file. |
| * tools-src/buildpg: New file. |
| * tools-src/calcpath: New file. |
| * tools-src/def2doc.py: New file. |
| * tools-src/makeSystem: New file. |
| * tools-src/mklink.c: New file. |
| * tools-src/tidydates.py: New file. |
| * images/LICENSE.IMG: New file. |
| * images/gnupng: New file. |
| * images/gnu.eps: New file. |
| * version.c: New file. |
| * configure: Rebuilt. |
| * target-independent/Builtins.texi: New file. |
| * target-independent/SYSTEM-iso.texi: New file. |
| * target-independent/SYSTEM-pim.texi: New file. |
| * target-independent/gm2-libs.texi: New file. |
| * target-independent/readme.txt: New file. |