https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108136
Bug ID: 108136 Summary: Modula2 meets cppcheck Product: gcc Version: 13.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: modula2 Assignee: gaius at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Target Milestone: --- I ran the C/C++ static analyser cppcheck over the source code of the Modula2 compiler and library. For errors, this one might be significant: trunk.d1/gcc/m2/pge-boot/GRTco.c:113:1: error: Found an exit path from function with non-void return type that has missing return statement [missingReturn] For style: trunk.d1/gcc/m2/mc-boot/GM2Dependent.c:453:15: style: Array index 'i' is used before limits check. [arrayIndexThenCheck] trunk.d1/gcc/m2/pge-boot/GM2Dependent.c:461:15: style: Array index 'i' is used before limits check. [arrayIndexThenCheck] trunk.d1/gcc/m2/mc-boot/GArgs.c:86:42: style: Array index 'j' is used before limits check. [arrayIndexThenCheck] trunk.d1/gcc/m2/pge-boot/GArgs.c:84:42: style: Array index 'j' is used before limits check. [arrayIndexThenCheck] trunk.d1/gcc/m2/mc-boot/Gkeyc.c:603:241: style: Same expression 'seenUIntMax' found multiple times in chain of '||' operators. [duplicateExpression] trunk.d1/gcc/m2/mc-boot/Gkeyc.c:603:128: style: Same expression 'seenUIntMin' found multiple times in chain of '||' operators. [duplicateExpression] for performance, relatively little: trunk.d1/gcc/m2/mc-boot/Gdecl.c:14011:58: performance: Function parameter 's' should be passed by const reference. [passedByValue] trunk.d1/gcc/m2/mc-boot/Gdecl.c:16906:57: performance: Function parameter 's' should be passed by const reference. [passedByValue] trunk.d1/gcc/m2/mc-boot/Gdecl.c:16918:64: performance: Function parameter 's' should be passed by const reference. [passedByValue]