2024-04-22 12:26 ftp://ftp.de.debian.org/debian/pool/main/t/tcc/tcc_0.9.27+git20200814.62c30a4a.orig.tar.bz2 cppcheck-options: --library=posix --library=gnu --library=bsd --library=motif --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning -D__GNUC__ --platform=unix64 -j4 platform: Linux-6.1.0-20-amd64-x86_64-with-glibc2.36 python: 3.11.2 client-version: 1.3.56 compiler: g++ (Debian 12.2.0-14) 12.2.0 cppcheck: head 2.14.0 head-info: ea2e716 (2024-04-21 15:59:20 +0200) count: 1570 1570 elapsed-time: 56.4 56.4 head-timing-info: old-timing-info: head results: arm-asm.c:40:28: style:inconclusive: Function 'gen_le16' argument 1 names different: declaration 'c' definition 'i'. [funcArgNamesDifferent] tcc.h:1646:27: note: Function 'gen_le16' argument 1 names different: declaration 'c' definition 'i'. arm-asm.c:40:28: note: Function 'gen_le16' argument 1 names different: declaration 'c' definition 'i'. arm-asm.c:46:28: style:inconclusive: Function 'gen_le32' argument 1 names different: declaration 'c' definition 'i'. [funcArgNamesDifferent] tcc.h:1647:27: note: Function 'gen_le32' argument 1 names different: declaration 'c' definition 'i'. arm-asm.c:46:28: note: Function 'gen_le32' argument 1 names different: declaration 'c' definition 'i'. arm-asm.c:52:36: style: Parameter 'pe' can be declared as pointer to const [constParameterPointer] arm-asm.c:57:35: style: Parameter 's1' can be declared as pointer to const [constParameterPointer] arm-asm.c:62:41: style: Parameter 'add_str' can be declared as pointer to const [constParameterPointer] arm-asm.c:62:58: style: Parameter 'sv' can be declared as pointer to const [constParameterPointer] arm-asm.c:68:39: style: Parameter 'operands' can be declared as pointer to const [constParameterPointer] arm-asm.c:70:35: style: Parameter 'clobber_regs' can be declared as pointer to const [constParameterPointer] arm-asm.c:75:50: style: Parameter 'operands' can be declared as pointer to const [constParameterPointer] arm-asm.c:78:42: style: Parameter 'pout_reg' can be declared as pointer to const [constParameterPointer] arm-asm.c:82:35: style: Parameter 'clobber_regs' can be declared as pointer to const [constParameterPointer] tcc.h:1618:48: style: Parameter 'p' can be declared as pointer to const [constParameterPointer] arm-link.c:186:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TCC_CPU_VERSION [valueFlowBailoutIncompleteVar] arm-gen.c:205:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_R0 [valueFlowBailoutIncompleteVar] arm-gen.c:211:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_R0 [valueFlowBailoutIncompleteVar] arm-gen.c:408:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_F0 [valueFlowBailoutIncompleteVar] arm-gen.c:416:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_R12 [valueFlowBailoutIncompleteVar] arm-gen.c:543:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_LR [valueFlowBailoutIncompleteVar] arm-gen.c:689:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_LR [valueFlowBailoutIncompleteVar] arm-gen.c:1051:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ARM_HARD_FLOAT [valueFlowBailoutIncompleteVar] arm-gen.c:1223:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_F0 [valueFlowBailoutIncompleteVar] arm-gen.c:1620:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOK___divsi3 [valueFlowBailoutIncompleteVar] arm-gen.c:2121:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOK___floatdisf [valueFlowBailoutIncompleteVar] arm-gen.c:2170:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOK___fixunssfsi [valueFlowBailoutIncompleteVar] arm-gen.c:2238:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_SP [valueFlowBailoutIncompleteVar] arm-gen.c:2247:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_SP [valueFlowBailoutIncompleteVar] arm64-gen.c:94:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_R30 [valueFlowBailoutIncompleteVar] arm64-gen.c:657:53: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable RC_R30 [valueFlowBailoutIncompleteVar] arm64-gen.c:1070:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable RC_R30 [valueFlowBailoutIncompleteVar] arm64-gen.c:1771:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOK___multf3 [valueFlowBailoutIncompleteVar] arm64-gen.c:1884:50: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOK___floatditf [valueFlowBailoutIncompleteVar] arm64-gen.c:1912:49: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOK___fixtfdi [valueFlowBailoutIncompleteVar] arm64-gen.c:1946:50: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOK___extenddftf2 [valueFlowBailoutIncompleteVar] arm64-link.c:282:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] arm64-link.c:135:22: style: Local variable 'off' shadows outer variable [shadowVariable] arm64-link.c:117:18: note: Shadowed declaration arm64-link.c:135:22: note: Shadow variable arm64-link.c:106:18: style: Variable 'p_end' can be declared as pointer to const [constVariablePointer] arm64-link.c:150:39: style: Parameter 'rel' can be declared as pointer to const [constParameterPointer] arm64-link.c:212:34: error: Shifting 32-bit value by 32 bits is undefined behaviour [shiftTooManyBits] arm64-link.c:216:34: error: Shifting 32-bit value by 48 bits is undefined behaviour [shiftTooManyBits] arm-link.c:199:19: portability: Shifting a negative value is technically undefined behaviour [shiftNegativeLHS] arm-link.c:290:24: portability: Shifting a negative value is technically undefined behaviour [shiftNegativeLHS] arm-link.c:291:25: portability: Shifting a negative value is technically undefined behaviour [shiftNegativeLHS] arm-link.c:292:25: portability: Shifting a negative value is technically undefined behaviour [shiftNegativeLHS] arm-link.c:295:28: portability: Shifting a negative value is technically undefined behaviour [shiftNegativeLHS] arm-link.c:296:28: portability: Shifting a negative value is technically undefined behaviour [shiftNegativeLHS] arm-link.c:102:87: style: Parameter 'attr' can be declared as pointer to const [constParameterPointer] arm-link.c:138:18: style: Variable 'p_end' can be declared as pointer to const [constVariablePointer] arm-link.c:165:16: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] arm-link.c:217:26: style: Variable 'plt' can be declared as pointer to const [constVariablePointer] arm-link.c:249:27: style: Variable 'name' can be declared as pointer to const [constVariablePointer] c67-link.c:119:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] c67-link.c:88:18: style: Condition 'pr2' is reassigned a value before the old one has been used. [redundantAssignment] i386-gen.c:964:18: note: vtop->r2 is assigned i386-gen.c:979:14: note: vtop->r2 is overwritten i386-gen.c:126:27: style:inconclusive: Function 'gen_le16' argument 1 names different: declaration 'c' definition 'v'. [funcArgNamesDifferent] tcc.h:1646:27: note: Function 'gen_le16' argument 1 names different: declaration 'c' definition 'v'. i386-gen.c:126:27: note: Function 'gen_le16' argument 1 names different: declaration 'c' definition 'v'. i386-gen.c:375:66: style:inconclusive: Function 'gfunc_sret' argument 4 names different: declaration 'align' definition 'ret_align'. [funcArgNamesDifferent] tcc.h:1596:66: note: Function 'gfunc_sret' argument 4 names different: declaration 'align' definition 'ret_align'. i386-gen.c:375:66: note: Function 'gfunc_sret' argument 4 names different: declaration 'align' definition 'ret_align'. i386-gen.c:483:18: style: Variable 'fastcall_regs_ptr' can be declared as pointer to const [constVariablePointer] i386-gen.c:523:14: style: Variable 'fastcall_regs_ptr' can be declared as pointer to const [constVariablePointer] lib/armflush.c:51:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __ARM_NR_cacheflush [valueFlowBailoutIncompleteVar] lib/bcheck.c:388:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:395:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:407:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:491:1: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:492:1: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:493:1: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:494:1: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:495:1: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:496:1: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:521:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:551:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:630:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:671:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:709:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:782:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __FUNCTION__ [valueFlowBailoutIncompleteVar] lib/bcheck.c:788:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __FUNCTION__ [valueFlowBailoutIncompleteVar] lib/bcheck.c:798:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:961:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1003:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1102:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1124:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1173:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1207:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1251:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1288:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1319:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1335:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1378:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1394:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1414:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1424:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1488:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1501:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1518:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1535:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1553:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1575:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1592:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1613:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/bcheck.c:1866:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] lib/armeabi.c:128:1: warning: Shifting signed 32-bit value by 31 bits is undefined behaviour. See condition at line 128. [shiftTooManyBitsSigned] lib/armeabi.c:128:1: note: Assuming that condition 'exp>63' is not redundant lib/armeabi.c:128:1: note: Shift lib/armeabi.c:131:1: warning: Shifting signed 32-bit value by 31 bits is undefined behaviour. See condition at line 131. [shiftTooManyBitsSigned] lib/armeabi.c:131:1: note: Assuming that condition 'exp>=32' is not redundant lib/armeabi.c:131:1: note: Shift lib/armeabi.c:197:1: warning: Shifting signed 32-bit value by 31 bits is undefined behaviour. See condition at line 197. [shiftTooManyBitsSigned] lib/armeabi.c:197:1: note: Assuming that condition 'exp>63' is not redundant lib/armeabi.c:197:1: note: Shift lib/armeabi.c:197:1: warning: Shifting 32-bit value by 32 bits is undefined behaviour. See condition at line 197. [shiftTooManyBits] lib/armeabi.c:197:1: note: Assuming that condition 'exp>=52' is not redundant lib/armeabi.c:197:1: note: high_shift is assigned 'exp-52' here. lib/armeabi.c:197:1: note: Shift lib/armeabi.c:197:1: warning: Shifting 32-bit value by 95 bits is undefined behaviour. See condition at line 197. [shiftTooManyBits] lib/armeabi.c:197:1: note: Assuming that condition 'exp>52-32' is not redundant lib/armeabi.c:197:1: note: high_shift is assigned 'exp-52-32' here. lib/armeabi.c:197:1: note: Shift lib/armeabi.c:200:1: warning: Shifting 32-bit value by 32 bits is undefined behaviour. See condition at line 200. [shiftTooManyBits] lib/armeabi.c:200:1: note: Assuming that condition 'exp>=52' is not redundant lib/armeabi.c:200:1: note: high_shift is assigned 'exp-52' here. lib/armeabi.c:200:1: note: Shift lib/armeabi.c:200:1: warning: Shifting signed 32-bit value by 31 bits is undefined behaviour. See condition at line 200. [shiftTooManyBitsSigned] lib/armeabi.c:200:1: note: Assuming that condition 'exp>=32' is not redundant lib/armeabi.c:200:1: note: Shift lib/armeabi.c:200:1: warning: Shifting 32-bit value by 95 bits is undefined behaviour. See condition at line 200. [shiftTooManyBits] lib/armeabi.c:200:1: note: Assuming that condition 'exp>52-32' is not redundant lib/armeabi.c:200:1: note: high_shift is assigned 'exp-52-32' here. lib/armeabi.c:200:1: note: Shift lib/armeabi.c:257:1: error: Shifting signed 32-bit value by 31 bits is undefined behaviour [shiftTooManyBitsSigned] lib/armeabi.c:257:1: warning: Shifting 32-bit value by 32 bits is undefined behaviour. See condition at line 257. [shiftTooManyBits] lib/armeabi.c:257:1: note: Assuming that condition 's<23' is not redundant lib/armeabi.c:257:1: note: Shift lib/armeabi.c:257:1: warning: Shifting 32-bit value by 4294967295 bits is undefined behaviour. See condition at line 257. [shiftTooManyBits] lib/armeabi.c:257:1: note: Assuming that condition 's<23' is not redundant lib/armeabi.c:257:1: note: Shift lib/armeabi.c:260:1: error: Shifting signed 32-bit value by 31 bits is undefined behaviour [shiftTooManyBitsSigned] lib/armeabi.c:260:1: warning: Shifting 32-bit value by 32 bits is undefined behaviour. See condition at line 260. [shiftTooManyBits] lib/armeabi.c:260:1: note: Assuming that condition 's<23' is not redundant lib/armeabi.c:260:1: note: Shift lib/armeabi.c:260:1: warning: Shifting 32-bit value by 4294967295 bits is undefined behaviour. See condition at line 260. [shiftTooManyBits] lib/armeabi.c:260:1: note: Assuming that condition 's<23' is not redundant lib/armeabi.c:260:1: note: Shift lib/armeabi.c:330:1: error: Shifting signed 32-bit value by 31 bits is undefined behaviour [shiftTooManyBitsSigned] lib/armeabi.c:330:1: warning: Shifting 32-bit value by 32 bits is undefined behaviour. See condition at line 330. [shiftTooManyBits] lib/armeabi.c:330:1: note: Assuming that condition 's<52-32' is not redundant lib/armeabi.c:330:1: note: high_shift is assigned 's-(52-32)' here. lib/armeabi.c:330:1: note: Shift lib/armeabi.c:330:1: warning: Shifting 32-bit value by 4294967295 bits is undefined behaviour. See condition at line 330. [shiftTooManyBits] lib/armeabi.c:330:1: note: Assuming that condition 's<52-32' is not redundant lib/armeabi.c:330:1: note: high_shift is assigned 's-(52-32)' here. lib/armeabi.c:330:1: note: Shift lib/armeabi.c:333:1: error: Shifting signed 32-bit value by 31 bits is undefined behaviour [shiftTooManyBitsSigned] lib/armeabi.c:333:1: warning: Shifting 32-bit value by 32 bits is undefined behaviour. See condition at line 333. [shiftTooManyBits] lib/armeabi.c:333:1: note: Assuming that condition 's<52-32' is not redundant lib/armeabi.c:333:1: note: high_shift is assigned 's-(52-32)' here. lib/armeabi.c:333:1: note: Shift lib/armeabi.c:333:1: warning: Shifting 32-bit value by 4294967295 bits is undefined behaviour. See condition at line 333. [shiftTooManyBits] lib/armeabi.c:333:1: note: Assuming that condition 's<52-32' is not redundant lib/armeabi.c:333:1: note: high_shift is assigned 's-(52-32)' here. lib/armeabi.c:333:1: note: Shift lib/armeabi.c:464:5: error: Shifting signed 32-bit value by 31 bits is undefined behaviour [shiftTooManyBitsSigned] lib/armeabi.c:464:5: warning: Shifting signed 32-bit value by 31 bits is undefined behaviour. See condition at line 464. [shiftTooManyBitsSigned] lib/armeabi.c:464:5: note: Assuming that condition 'shift>0' is not redundant lib/armeabi.c:464:5: note: Shift lib/armeabi.c:257:1: warning: Either the condition 's<23' is redundant or there is signed integer overflow for expression 's-23-1'. [integerOverflowCond] lib/armeabi.c:257:1: note: Assuming that condition 's<23' is not redundant lib/armeabi.c:257:1: note: Integer overflow lib/armeabi.c:260:1: warning: Either the condition 's<23' is redundant or there is signed integer overflow for expression 's-23-1'. [integerOverflowCond] lib/armeabi.c:260:1: note: Assuming that condition 's<23' is not redundant lib/armeabi.c:260:1: note: Integer overflow lib/armeabi.c:330:1: warning: Either the condition 's<52-32' is redundant or there is signed integer overflow for expression 'high_shift-1'. [integerOverflowCond] lib/armeabi.c:330:1: note: Assuming that condition 's<52-32' is not redundant lib/armeabi.c:330:1: note: high_shift is assigned 's-(52-32)' here. lib/armeabi.c:330:1: note: Integer overflow lib/armeabi.c:333:1: warning: Either the condition 's<52-32' is redundant or there is signed integer overflow for expression 'high_shift-1'. [integerOverflowCond] lib/armeabi.c:333:1: note: Assuming that condition 's<52-32' is not redundant lib/armeabi.c:333:1: note: high_shift is assigned 's-(52-32)' here. lib/armeabi.c:333:1: note: Integer overflow lib/armeabi.c:257:1: warning: Expression 's-23-1' can have a negative value. That is converted to an unsigned value and used in an unsigned calculation. [signConversionCond] lib/armeabi.c:257:1: note: Assuming that condition 's<23' is not redundant lib/armeabi.c:257:1: note: Negative value is converted to an unsigned value lib/armeabi.c:260:1: warning: Expression 's-23-1' can have a negative value. That is converted to an unsigned value and used in an unsigned calculation. [signConversionCond] lib/armeabi.c:260:1: note: Assuming that condition 's<23' is not redundant lib/armeabi.c:260:1: note: Negative value is converted to an unsigned value lib/armeabi.c:330:1: warning: Expression 'high_shift-1' can have a negative value. That is converted to an unsigned value and used in an unsigned calculation. [signConversionCond] lib/armeabi.c:330:1: note: Assuming that condition 's<52-32' is not redundant lib/armeabi.c:330:1: note: high_shift is assigned 's-(52-32)' here. lib/armeabi.c:330:1: note: Negative value is converted to an unsigned value lib/armeabi.c:333:1: warning: Expression 'high_shift-1' can have a negative value. That is converted to an unsigned value and used in an unsigned calculation. [signConversionCond] lib/armeabi.c:333:1: note: Assuming that condition 's<52-32' is not redundant lib/armeabi.c:333:1: note: high_shift is assigned 's-(52-32)' here. lib/armeabi.c:333:1: note: Negative value is converted to an unsigned value lib/bt-dll.c:65:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable STD_ERROR_HANDLE [valueFlowBailoutIncompleteVar] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bt_init' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::tcc_backtrace' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_ptr_indir1' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_ptr_indir2' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_ptr_indir4' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_ptr_indir8' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_ptr_indir12' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_ptr_indir16' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_local_new' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_local_delete' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_new_region' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_free' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_malloc' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_realloc' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_memcpy' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_memcmp' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_memmove' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_memset' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_strlen' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_strcpy' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_strncpy' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_strcmp' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_strncmp' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_strcat' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_strchr' is never used. [unusedStructMember] lib/bt-dll.c:45:17: style: struct member 'Anonymous0::__bound_strdup' is never used. [unusedStructMember] lib/bt-exe.c:19:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_rtctxt [valueFlowBailoutIncompleteVar] lib/bt-log.c:32:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] i386-asm.h:41:1: style: Expression '(X & 0xa6) == 0xf00' is always false. [comparisonError] i386-asm.h:42:1: style: Expression '(X & 0xa6) == 0xf00' is always false. [comparisonError] i386-asm.h:44:1: style: Expression '(X & 0x6c) == 0xf00' is always false. [comparisonError] i386-asm.h:45:1: style: Expression '(X & 0x6e) == 0xf00' is always false. [comparisonError] i386-asm.h:47:1: style: Expression '(X & 0xac) == 0xf00' is always false. [comparisonError] i386-asm.h:48:1: style: Expression '(X & 0xac) == 0xf00' is always false. [comparisonError] lib/bcheck.c:964:13: portability: %lx in format string (no. 4) requires 'unsigned long' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_uint] i386-asm.h:50:1: style: Expression '(X & 0xa4) == 0xf00' is always false. [comparisonError] lib/bcheck.c:989:13: portability: %lx in format string (no. 4) requires 'unsigned long' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_uint] i386-asm.h:51:1: style: Expression '(X & 0xa4) == 0xf00' is always false. [comparisonError] i386-asm.h:53:1: style: Expression '(X & 0xae) == 0xf00' is always false. [comparisonError] i386-asm.h:54:1: style: Expression '(X & 0xae) == 0xf00' is always false. [comparisonError] i386-asm.h:56:1: style: Expression '(X & 0xaa) == 0xf00' is always false. [comparisonError] i386-asm.h:57:1: style: Expression '(X & 0xaa) == 0xf00' is always false. [comparisonError] i386-asm.h:100:1: style: Expression '(X & 0xa0) == 0xf00' is always false. [comparisonError] i386-asm.h:101:1: style: Expression '(X & 0xa2) == 0xf00' is always false. [comparisonError] i386-asm.h:102:1: style: Expression '(X & 0x88) == 0xf00' is always false. [comparisonError] i386-asm.h:103:1: style: Expression '(X & 0x8a) == 0xf00' is always false. [comparisonError] i386-asm.h:104:1: style: Expression '(X & 0xb0) == 0xf00' is always false. [comparisonError] i386-asm.h:105:1: style: Expression '(X & 0xc6) == 0xf00' is always false. [comparisonError] i386-asm.h:107:1: style: Expression '(X & 0x8c) == 0xf00' is always false. [comparisonError] i386-asm.h:108:1: style: Expression '(X & 0x8e) == 0xf00' is always false. [comparisonError] i386-asm.h:123:1: style: Expression '(X & 0x50) == 0xf00' is always false. [comparisonError] i386-asm.h:124:1: style: Expression '(X & 0xff) == 0xf00' is always false. [comparisonError] i386-asm.h:125:1: style: Expression '(X & 0x6a) == 0xf00' is always false. [comparisonError] i386-asm.h:126:1: style: Expression '(X & 0x68) == 0xf00' is always false. [comparisonError] i386-asm.h:127:1: style: Expression '(X & 0x6) == 0xf00' is always false. [comparisonError] i386-asm.h:129:1: style: Expression '(X & 0x58) == 0xf00' is always false. [comparisonError] i386-asm.h:130:1: style: Expression '(X & 0x8f) == 0xf00' is always false. [comparisonError] i386-asm.h:131:1: style: Expression '(X & 0x7) == 0xf00' is always false. [comparisonError] i386-asm.h:133:1: style: Expression '(X & 0x90) == 0xf00' is always false. [comparisonError] i386-asm.h:134:1: style: Expression '(X & 0x90) == 0xf00' is always false. [comparisonError] i386-asm.h:135:1: style: Expression '(X & 0x86) == 0xf00' is always false. [comparisonError] i386-asm.h:136:1: style: Expression '(X & 0x86) == 0xf00' is always false. [comparisonError] i386-asm.h:138:1: style: Expression '(X & 0xe4) == 0xf00' is always false. [comparisonError] i386-asm.h:139:1: style: Expression '(X & 0xe4) == 0xf00' is always false. [comparisonError] i386-asm.h:140:1: style: Expression '(X & 0xec) == 0xf00' is always false. [comparisonError] i386-asm.h:141:1: style: Expression '(X & 0xec) == 0xf00' is always false. [comparisonError] i386-asm.h:143:1: style: Expression '(X & 0xe6) == 0xf00' is always false. [comparisonError] i386-asm.h:144:1: style: Expression '(X & 0xe6) == 0xf00' is always false. [comparisonError] i386-asm.h:145:1: style: Expression '(X & 0xee) == 0xf00' is always false. [comparisonError] i386-asm.h:146:1: style: Expression '(X & 0xee) == 0xf00' is always false. [comparisonError] i386-asm.h:148:1: style: Expression '(X & 0x8d) == 0xf00' is always false. [comparisonError] i386-asm.h:150:1: style: Expression '(X & 0xc4) == 0xf00' is always false. [comparisonError] i386-asm.h:151:1: style: Expression '(X & 0xc5) == 0xf00' is always false. [comparisonError] i386-asm.h:157:1: style: Expression '(X & 0x0) == 0xf00' is always false. [comparisonError] i386-asm.h:158:1: style: Expression '(X & 0x2) == 0xf00' is always false. [comparisonError] i386-asm.h:159:1: style: Expression '(X & 0x4) == 0xf00' is always false. [comparisonError] i386-asm.h:160:1: style: Expression '(X & 0x83) == 0xf00' is always false. [comparisonError] i386-asm.h:161:1: style: Expression '(X & 0x80) == 0xf00' is always false. [comparisonError] i386-asm.h:163:1: style: Expression '(X & 0x84) == 0xf00' is always false. [comparisonError] i386-asm.h:164:1: style: Expression '(X & 0x84) == 0xf00' is always false. [comparisonError] i386-asm.h:165:1: style: Expression '(X & 0xa8) == 0xf00' is always false. [comparisonError] i386-asm.h:166:1: style: Expression '(X & 0xf6) == 0xf00' is always false. [comparisonError] i386-asm.h:168:1: style: Expression '(X & 0x40) == 0xf00' is always false. [comparisonError] i386-asm.h:169:1: style: Expression '(X & 0xfe) == 0xf00' is always false. [comparisonError] i386-asm.h:170:1: style: Expression '(X & 0x48) == 0xf00' is always false. [comparisonError] i386-asm.h:171:1: style: Expression '(X & 0xfe) == 0xf00' is always false. [comparisonError] i386-asm.h:173:1: style: Expression '(X & 0xf6) == 0xf00' is always false. [comparisonError] i386-asm.h:174:1: style: Expression '(X & 0xf6) == 0xf00' is always false. [comparisonError] i386-asm.h:176:1: style: Expression '(X & 0xf6) == 0xf00' is always false. [comparisonError] i386-asm.h:177:1: style: Expression '(X & 0xf6) == 0xf00' is always false. [comparisonError] i386-asm.h:180:1: style: Expression '(X & 0x6b) == 0xf00' is always false. [comparisonError] i386-asm.h:181:1: style: Expression '(X & 0x6b) == 0xf00' is always false. [comparisonError] i386-asm.h:182:1: style: Expression '(X & 0x69) == 0xf00' is always false. [comparisonError] i386-asm.h:183:1: style: Expression '(X & 0x69) == 0xf00' is always false. [comparisonError] i386-asm.h:185:1: style: Expression '(X & 0xf6) == 0xf00' is always false. [comparisonError] i386-asm.h:186:1: style: Expression '(X & 0xf6) == 0xf00' is always false. [comparisonError] i386-asm.h:187:1: style: Expression '(X & 0xf6) == 0xf00' is always false. [comparisonError] i386-asm.h:188:1: style: Expression '(X & 0xf6) == 0xf00' is always false. [comparisonError] i386-asm.h:191:1: style: Expression '(X & 0xc0) == 0xf00' is always false. [comparisonError] i386-asm.h:192:1: style: Expression '(X & 0xd2) == 0xf00' is always false. [comparisonError] i386-asm.h:193:1: style: Expression '(X & 0xd0) == 0xf00' is always false. [comparisonError] i386-asm.h:202:1: style: Expression '(X & 0xff) == 0xf00' is always false. [comparisonError] i386-asm.h:203:1: style: Expression '(X & 0xe8) == 0xf00' is always false. [comparisonError] i386-asm.h:204:1: style: Expression '(X & 0xff) == 0xf00' is always false. [comparisonError] i386-asm.h:205:1: style: Expression '(X & 0xeb) == 0xf00' is always false. [comparisonError] i386-asm.h:207:1: style: Expression '(X & 0x9a) == 0xf00' is always false. [comparisonError] i386-asm.h:208:1: style: Expression '(X & 0xff) == 0xf00' is always false. [comparisonError] i386-asm.h:209:1: style: Expression '(X & 0xea) == 0xf00' is always false. [comparisonError] i386-asm.h:210:1: style: Expression '(X & 0xff) == 0xf00' is always false. [comparisonError] i386-asm.h:212:1: style: Expression '(X & 0xcd) == 0xf00' is always false. [comparisonError] i386-asm.h:215:5: style: Expression '(X & 0xc8) == 0xf00' is always false. [comparisonError] i386-asm.h:219:1: style: Expression '(X & 0xc2) == 0xf00' is always false. [comparisonError] i386-asm.h:220:1: style: Expression '(X & 0xc2) == 0xf00' is always false. [comparisonError] i386-asm.h:222:1: style: Expression '(X & 0xca) == 0xf00' is always false. [comparisonError] i386-asm.h:224:1: style: Expression '(X & 0x70) == 0xf00' is always false. [comparisonError] i386-asm.h:225:5: style: Expression '(X & 0xe0) == 0xf00' is always false. [comparisonError] i386-asm.h:226:5: style: Expression '(X & 0xe0) == 0xf00' is always false. [comparisonError] i386-asm.h:227:5: style: Expression '(X & 0xe1) == 0xf00' is always false. [comparisonError] i386-asm.h:228:5: style: Expression '(X & 0xe1) == 0xf00' is always false. [comparisonError] i386-asm.h:229:5: style: Expression '(X & 0xe2) == 0xf00' is always false. [comparisonError] i386-asm.h:230:5: style: Expression '(X & 0xe3) == 0xf00' is always false. [comparisonError] i386-asm.h:234:1: style: Expression '(X & 0xd8d9) == 0xf00' is always false. [comparisonError] i386-asm.h:236:1: style: Expression '(X & 0xd8c0) == 0xf00' is always false. [comparisonError] i386-asm.h:237:1: style: Expression '(X & 0xd8c0) == 0xf00' is always false. [comparisonError] i386-asm.h:238:1: style: Expression '(X & 0xdcc0) == 0xf00' is always false. [comparisonError] i386-asm.h:239:1: style: Expression '(X & 0xdcc8) == 0xf00' is always false. [comparisonError] i386-asm.h:240:1: style: Expression '(X & 0xdec1) == 0xf00' is always false. [comparisonError] i386-asm.h:241:1: style: Expression '(X & 0xdec0) == 0xf00' is always false. [comparisonError] i386-asm.h:242:1: style: Expression '(X & 0xdec0) == 0xf00' is always false. [comparisonError] i386-asm.h:243:1: style: Expression '(X & 0xdec0) == 0xf00' is always false. [comparisonError] i386-asm.h:244:1: style: Expression '(X & 0xdec1) == 0xf00' is always false. [comparisonError] i386-asm.h:245:1: style: Expression '(X & 0xd8) == 0xf00' is always false. [comparisonError] i386-asm.h:246:1: style: Expression '(X & 0xda) == 0xf00' is always false. [comparisonError] i386-asm.h:247:1: style: Expression '(X & 0xdc) == 0xf00' is always false. [comparisonError] i386-asm.h:248:1: style: Expression '(X & 0xde) == 0xf00' is always false. [comparisonError] i386-asm.h:284:5: style: Expression '(X & 0xd9c0) == 0xf00' is always false. [comparisonError] i386-asm.h:285:5: style: Expression '(X & 0xd9c0) == 0xf00' is always false. [comparisonError] i386-asm.h:286:5: style: Expression '(X & 0xd9) == 0xf00' is always false. [comparisonError] i386-asm.h:287:1: style: Expression '(X & 0xdd) == 0xf00' is always false. [comparisonError] i386-asm.h:288:5: style: Expression '(X & 0xdb) == 0xf00' is always false. [comparisonError] i386-asm.h:289:5: style: Expression '(X & 0xdf) == 0xf00' is always false. [comparisonError] i386-asm.h:290:5: style: Expression '(X & 0xdf) == 0xf00' is always false. [comparisonError] i386-asm.h:291:5: style: Expression '(X & 0xdb) == 0xf00' is always false. [comparisonError] i386-asm.h:292:5: style: Expression '(X & 0xdf) == 0xf00' is always false. [comparisonError] i386-asm.h:295:5: style: Expression '(X & 0xddd0) == 0xf00' is always false. [comparisonError] i386-asm.h:296:5: style: Expression '(X & 0xddd0) == 0xf00' is always false. [comparisonError] i386-asm.h:297:5: style: Expression '(X & 0xd9) == 0xf00' is always false. [comparisonError] i386-asm.h:298:5: style: Expression '(X & 0xd9) == 0xf00' is always false. [comparisonError] i386-asm.h:299:1: style: Expression '(X & 0xdd) == 0xf00' is always false. [comparisonError] i386-asm.h:300:5: style: Expression '(X & 0xdd) == 0xf00' is always false. [comparisonError] i386-asm.h:301:5: style: Expression '(X & 0xdf) == 0xf00' is always false. [comparisonError] i386-asm.h:302:5: style: Expression '(X & 0xdf) == 0xf00' is always false. [comparisonError] i386-asm.h:303:5: style: Expression '(X & 0xdb) == 0xf00' is always false. [comparisonError] i386-asm.h:304:5: style: Expression '(X & 0xdb) == 0xf00' is always false. [comparisonError] i386-asm.h:306:5: style: Expression '(X & 0xddd8) == 0xf00' is always false. [comparisonError] i386-asm.h:307:5: style: Expression '(X & 0xdf) == 0xf00' is always false. [comparisonError] i386-asm.h:308:5: style: Expression '(X & 0xdf) == 0xf00' is always false. [comparisonError] i386-asm.h:309:5: style: Expression '(X & 0xdb) == 0xf00' is always false. [comparisonError] i386-asm.h:310:5: style: Expression '(X & 0xdf) == 0xf00' is always false. [comparisonError] i386-asm.h:314:1: style: Expression '(X & 0xd9c8) == 0xf00' is always false. [comparisonError] i386-asm.h:317:5: style: Expression '(X & 0xdde0) == 0xf00' is always false. [comparisonError] i386-asm.h:318:5: style: Expression '(X & 0xdde8) == 0xf00' is always false. [comparisonError] i386-asm.h:320:5: style: Expression '(X & 0xdbe3) == 0xf00' is always false. [comparisonError] i386-asm.h:321:5: style: Expression '(X & 0xd9) == 0xf00' is always false. [comparisonError] i386-asm.h:322:5: style: Expression '(X & 0xd9) == 0xf00' is always false. [comparisonError] i386-asm.h:323:5: style: Expression '(X & 0xd9) == 0xf00' is always false. [comparisonError] i386-asm.h:326:1: style: Expression '(X & 0xdd) == 0xf00' is always false. [comparisonError] i386-asm.h:329:1: style: Expression '(X & 0xdd) == 0xf00' is always false. [comparisonError] i386-asm.h:330:5: style: Expression '(X & 0xdbe2) == 0xf00' is always false. [comparisonError] i386-asm.h:331:5: style: Expression '(X & 0xd9) == 0xf00' is always false. [comparisonError] i386-asm.h:332:5: style: Expression '(X & 0xd9) == 0xf00' is always false. [comparisonError] i386-asm.h:333:5: style: Expression '(X & 0xd9) == 0xf00' is always false. [comparisonError] i386-asm.h:334:5: style: Expression '(X & 0xdd) == 0xf00' is always false. [comparisonError] i386-asm.h:335:5: style: Expression '(X & 0xdd) == 0xf00' is always false. [comparisonError] i386-asm.h:336:5: style: Expression '(X & 0xdd) == 0xf00' is always false. [comparisonError] i386-asm.h:337:5: style: Expression '(X & 0xddc0) == 0xf00' is always false. [comparisonError] i386-asm.h:343:5: style: Expression '(X & 0x63) == 0xf00' is always false. [comparisonError] i386-asm.h:365:5: style: Expression '(X & 0x62) == 0xf00' is always false. [comparisonError] i386-asm.h:366:5: style: Expression '(X & 0x6662) == 0xf00' is always false. [comparisonError] i386-asm.h:373:5: style: Expression '(X & 0xdac0) == 0xf00' is always false. [comparisonError] i386-asm.h:374:5: style: Expression '(X & 0xdac8) == 0xf00' is always false. [comparisonError] i386-asm.h:375:5: style: Expression '(X & 0xdad0) == 0xf00' is always false. [comparisonError] i386-asm.h:376:5: style: Expression '(X & 0xdad8) == 0xf00' is always false. [comparisonError] i386-asm.h:377:5: style: Expression '(X & 0xdbc0) == 0xf00' is always false. [comparisonError] i386-asm.h:378:5: style: Expression '(X & 0xdbc8) == 0xf00' is always false. [comparisonError] i386-asm.h:379:5: style: Expression '(X & 0xdbd0) == 0xf00' is always false. [comparisonError] i386-asm.h:380:5: style: Expression '(X & 0xdbd8) == 0xf00' is always false. [comparisonError] i386-asm.h:382:5: style: Expression '(X & 0xdbe8) == 0xf00' is always false. [comparisonError] i386-asm.h:383:5: style: Expression '(X & 0xdbf0) == 0xf00' is always false. [comparisonError] lib/bcheck.c:368:31: style:inconclusive: Function '__bound_never_fatal' argument 1 names different: declaration 'no_check' definition 'neverfatal'. [funcArgNamesDifferent] lib/bcheck.c:202:31: note: Function '__bound_never_fatal' argument 1 names different: declaration 'no_check' definition 'neverfatal'. lib/bcheck.c:368:31: note: Function '__bound_never_fatal' argument 1 names different: declaration 'no_check' definition 'neverfatal'. lib/bcheck.c:1376:28: style:inconclusive: Function '__bound_memcpy' argument 1 names different: declaration 'dst' definition 'dest'. [funcArgNamesDifferent] lib/bcheck.c:224:39: note: Function '__bound_memcpy' argument 1 names different: declaration 'dst' definition 'dest'. lib/bcheck.c:1376:28: note: Function '__bound_memcpy' argument 1 names different: declaration 'dst' definition 'dest'. lib/bcheck.c:1376:58: style:inconclusive: Function '__bound_memcpy' argument 3 names different: declaration 'size' definition 'n'. [funcArgNamesDifferent] lib/bcheck.c:224:68: note: Function '__bound_memcpy' argument 3 names different: declaration 'size' definition 'n'. lib/bcheck.c:1376:58: note: Function '__bound_memcpy' argument 3 names different: declaration 'size' definition 'n'. lib/bcheck.c:1388:59: style:inconclusive: Function '__bound_memcmp' argument 3 names different: declaration 'size' definition 'n'. [funcArgNamesDifferent] lib/bcheck.c:225:70: note: Function '__bound_memcmp' argument 3 names different: declaration 'size' definition 'n'. lib/bcheck.c:1388:59: note: Function '__bound_memcmp' argument 3 names different: declaration 'size' definition 'n'. lib/bcheck.c:1412:29: style:inconclusive: Function '__bound_memmove' argument 1 names different: declaration 'dst' definition 'dest'. [funcArgNamesDifferent] lib/bcheck.c:226:40: note: Function '__bound_memmove' argument 1 names different: declaration 'dst' definition 'dest'. lib/bcheck.c:1412:29: note: Function '__bound_memmove' argument 1 names different: declaration 'dst' definition 'dest'. lib/bcheck.c:1412:59: style:inconclusive: Function '__bound_memmove' argument 3 names different: declaration 'size' definition 'n'. [funcArgNamesDifferent] lib/bcheck.c:226:69: note: Function '__bound_memmove' argument 3 names different: declaration 'size' definition 'n'. lib/bcheck.c:1412:59: note: Function '__bound_memmove' argument 3 names different: declaration 'size' definition 'n'. lib/bcheck.c:1422:28: style:inconclusive: Function '__bound_memset' argument 1 names different: declaration 'dst' definition 's'. [funcArgNamesDifferent] lib/bcheck.c:227:39: note: Function '__bound_memset' argument 1 names different: declaration 'dst' definition 's'. lib/bcheck.c:1422:28: note: Function '__bound_memset' argument 1 names different: declaration 'dst' definition 's'. lib/bcheck.c:1422:45: style:inconclusive: Function '__bound_memset' argument 3 names different: declaration 'size' definition 'n'. [funcArgNamesDifferent] lib/bcheck.c:227:58: note: Function '__bound_memset' argument 3 names different: declaration 'size' definition 'n'. lib/bcheck.c:1422:45: note: Function '__bound_memset' argument 3 names different: declaration 'size' definition 'n'. lib/bcheck.c:1496:28: style:inconclusive: Function '__bound_strcpy' argument 1 names different: declaration 'dst' definition 'dest'. [funcArgNamesDifferent] lib/bcheck.c:229:39: note: Function '__bound_strcpy' argument 1 names different: declaration 'dst' definition 'dest'. lib/bcheck.c:1496:28: note: Function '__bound_strcpy' argument 1 names different: declaration 'dst' definition 'dest'. lib/bcheck.c:1513:29: style:inconclusive: Function '__bound_strncpy' argument 1 names different: declaration 'dst' definition 'dest'. [funcArgNamesDifferent] lib/bcheck.c:230:40: note: Function '__bound_strncpy' argument 1 names different: declaration 'dst' definition 'dest'. lib/bcheck.c:1513:29: note: Function '__bound_strncpy' argument 1 names different: declaration 'dst' definition 'dest'. lib/bcheck.c:1587:34: style:inconclusive: Function '__bound_strchr' argument 1 names different: declaration 'string' definition 's'. [funcArgNamesDifferent] lib/bcheck.c:234:45: note: Function '__bound_strchr' argument 1 names different: declaration 'string' definition 's'. lib/bcheck.c:1587:34: note: Function '__bound_strchr' argument 1 names different: declaration 'string' definition 's'. lib/bcheck.c:1587:41: style:inconclusive: Function '__bound_strchr' argument 2 names different: declaration 'ch' definition 'c'. [funcArgNamesDifferent] lib/bcheck.c:234:57: note: Function '__bound_strchr' argument 2 names different: declaration 'ch' definition 'c'. lib/bcheck.c:1587:41: note: Function '__bound_strchr' argument 2 names different: declaration 'ch' definition 'c'. lib/bcheck.c:738:39: style: Local variable 'last' shadows outer variable [shadowVariable] lib/bcheck.c:718:32: note: Shadowed declaration lib/bcheck.c:738:39: note: Shadow variable lib/bcheck.c:739:39: style: Local variable 'cur' shadows outer variable [shadowVariable] lib/bcheck.c:717:32: note: Shadowed declaration lib/bcheck.c:739:39: note: Shadow variable lib/bcheck.c:393:43: style: Parameter 'ptr' can be declared as pointer to const [constParameterPointer] lib/bcheck.c:703:11: style: Variable 'e' can be declared as pointer to const [constVariablePointer] lib/bcheck.c:1314:27: style: Parameter 'start' can be declared as pointer to const [constParameterPointer] lib/bcheck.c:405:18: portability: 'p' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] lib/bcheck.c:428:21: portability: 'p' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] lib/bcheck.c:431:26: portability: 'p' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] lib/bcheck.c:438:22: portability: 'p' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] lib/bcheck.c:442:14: portability: 'p' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] lib/bcheck.c:491:1: portability: 'p' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] lib/bcheck.c:492:1: portability: 'p' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] lib/bcheck.c:493:1: portability: 'p' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] lib/bcheck.c:494:1: portability: 'p' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] lib/bcheck.c:495:1: portability: 'p' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] lib/bcheck.c:496:1: portability: 'p' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] i386-asm.c:275:9: style: Statements following noreturn function 'expect()' will never be executed. [unreachableCode] i386-asm.c:1184:13: style: Statements following noreturn function '_tcc_error()' will never be executed. [unreachableCode] i386-asm.c:353:14: style: Local variable 'indir' shadows outer function [shadowFunction] tcc.h:1466:14: note: Shadowed declaration i386-asm.c:353:14: note: Shadow variable i386-asm.c:800:17: style: Local variable 'op1' shadows outer variable [shadowVariable] i386-asm.c:683:47: note: Shadowed declaration i386-asm.c:800:17: note: Shadow variable i386-asm.c:504:13: style: Variable 'esym' can be declared as pointer to const [constVariablePointer] lib/libtcc1.c:143:0: error: #error unsupported CPU type [preprocessorErrorDirective] i386-asm.c:1032:10: style: Variable 'esym' can be declared as pointer to const [constVariablePointer] i386-asm.c:1596:35: style: Parameter 'clobber_regs' can be declared as pointer to const [constParameterPointer] i386-asm.c:1701:15: style: Variable 'ts' can be declared as pointer to const [constVariablePointer] i386-asm.c:1502:17: style: Variable 'val' is assigned a value that is never used. [unreadVariable] c67-gen.c:1598:26: error: Array 'ParamLocOnStack[10]' accessed at index 10, which is out of bounds. [arrayIndexOutOfBounds] c67-gen.c:1589:20: note: Assuming that condition 't<10' is not redundant c67-gen.c:1598:26: note: Array index out of bounds c67-gen.c:1769:23: error: Array 'ParamLocOnStack[10]' accessed at index 10, which is out of bounds. [arrayIndexOutOfBounds] c67-gen.c:1761:17: note: Assuming that condition 't<10' is not redundant c67-gen.c:1769:23: note: Array index out of bounds c67-gen.c:390:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:395:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:399:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:401:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:402:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:406:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:410:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:412:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:413:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:417:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:421:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:423:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:424:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:428:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:432:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:434:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:435:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:439:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:443:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:445:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:446:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:450:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:454:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:456:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:461:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:465:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:467:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:472:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:476:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:478:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:483:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:490:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:495:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:501:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:506:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:517:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:521:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:523:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:524:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:528:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:532:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:535:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:539:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:543:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:545:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:546:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:550:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:554:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:556:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:557:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:561:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:565:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:567:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:568:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:569:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:572:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:576:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:578:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:579:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:583:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:587:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:589:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:594:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:598:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:605:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:609:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:611:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:616:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:620:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:622:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:627:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:631:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:633:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:635:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:638:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:642:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:644:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:649:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:655:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:660:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:672:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:684:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:696:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:710:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:722:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:734:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:746:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:758:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:770:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:782:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:794:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:797:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:798:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:800:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:801:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:807:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:809:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:814:17: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:819:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:820:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:822:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:827:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:832:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:833:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:835:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:840:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:845:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:846:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:848:38: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:853:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:858:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:859:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:861:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:866:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:871:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:872:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:874:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:879:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:884:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:885:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:887:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:892:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:897:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:898:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:900:38: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:905:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:910:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:911:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:913:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:918:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:923:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:924:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:926:38: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:927:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:931:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:938:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:939:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:946:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:953:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:954:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:961:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:968:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:969:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:976:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:983:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:984:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:991:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:998:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:999:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1006:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1013:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1014:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1021:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1028:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1029:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1036:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1043:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1044:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1051:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1058:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1059:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1066:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1073:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1074:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1079:20: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1081:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1088:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1089:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1094:20: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1096:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1103:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1104:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1109:19: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1111:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1118:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1119:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1126:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1133:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1134:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1141:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1148:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1149:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1156:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1161:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1162:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1171:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1172:18: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1176:31: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1179:24: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] c67-gen.c:1867:66: style:inconclusive: Function 'gfunc_sret' argument 4 names different: declaration 'align' definition 'ret_align'. [funcArgNamesDifferent] tcc.h:1596:66: note: Function 'gfunc_sret' argument 4 names different: declaration 'align' definition 'ret_align'. c67-gen.c:1867:66: note: Function 'gfunc_sret' argument 4 names different: declaration 'align' definition 'ret_align'. c67-gen.c:2102:29: style:inconclusive: Function 'gjmp_append' argument 1 names different: declaration 'n' definition 'n0'. [funcArgNamesDifferent] tcc.h:1604:29: note: Function 'gjmp_append' argument 1 names different: declaration 'n' definition 'n0'. c67-gen.c:2102:29: note: Function 'gjmp_append' argument 1 names different: declaration 'n' definition 'n0'. c67-gen.c:2530:35: style: Parameter 'type' can be declared as pointer to const [constParameterPointer] c67-gen.c:1159:8: style: Variable 'xpath' is assigned a value that is never used. [unreadVariable] c67-gen.c:1169:8: style: Variable 'xpath' is assigned a value that is never used. [unreadVariable] c67-gen.c:2133:6: style: Variable 'opc' is assigned a value that is never used. [unreadVariable] c67-gen.c:2294:8: style: Variable 'fc' is assigned a value that is never used. [unreadVariable] riscv64-asm.c:40:28: style:inconclusive: Function 'gen_le16' argument 1 names different: declaration 'c' definition 'i'. [funcArgNamesDifferent] tcc.h:1646:27: note: Function 'gen_le16' argument 1 names different: declaration 'c' definition 'i'. riscv64-asm.c:40:28: note: Function 'gen_le16' argument 1 names different: declaration 'c' definition 'i'. riscv64-asm.c:46:28: style:inconclusive: Function 'gen_le32' argument 1 names different: declaration 'c' definition 'i'. [funcArgNamesDifferent] tcc.h:1647:27: note: Function 'gen_le32' argument 1 names different: declaration 'c' definition 'i'. riscv64-asm.c:46:28: note: Function 'gen_le32' argument 1 names different: declaration 'c' definition 'i'. riscv64-asm.c:52:36: style: Parameter 'pe' can be declared as pointer to const [constParameterPointer] riscv64-asm.c:57:35: style: Parameter 's1' can be declared as pointer to const [constParameterPointer] riscv64-asm.c:62:41: style: Parameter 'add_str' can be declared as pointer to const [constParameterPointer] riscv64-asm.c:62:58: style: Parameter 'sv' can be declared as pointer to const [constParameterPointer] riscv64-asm.c:68:39: style: Parameter 'operands' can be declared as pointer to const [constParameterPointer] riscv64-asm.c:70:35: style: Parameter 'clobber_regs' can be declared as pointer to const [constParameterPointer] riscv64-asm.c:75:50: style: Parameter 'operands' can be declared as pointer to const [constParameterPointer] riscv64-asm.c:78:42: style: Parameter 'pout_reg' can be declared as pointer to const [constParameterPointer] riscv64-asm.c:82:35: style: Parameter 'clobber_regs' can be declared as pointer to const [constParameterPointer] lib/lib-arm64.c:165:37: style:inconclusive: Boolean expression 'error==2' is used in bitwise operation. Did you mean '&&'? [bitwiseOnBoolean] lib/lib-arm64.c:137:19: style: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition] lib/lib-arm64.c:142:45: style: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition] lib/lib-arm64.c:308:67: style: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition] lib/lib-arm64.c:444:26: style: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition] lib/lib-arm64.c:446:27: style: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition] lib/lib-arm64.c:476:40: style: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition] lib/lib-arm64.c:478:27: style: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition] riscv64-link.c:344:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] riscv64-link.c:145:22: style: Local variable 'off' shadows outer variable [shadowVariable] riscv64-link.c:128:18: note: Shadowed declaration riscv64-link.c:145:22: note: Shadow variable riscv64-link.c:117:18: style: Variable 'p_end' can be declared as pointer to const [constVariablePointer] riscv64-link.c:163:39: style: Parameter 'rel' can be declared as pointer to const [constParameterPointer] riscv64-link.c:169:16: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] riscv64-gen.c:374:45: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __FUNCTION__ [valueFlowBailoutIncompleteVar] riscv64-gen.c:1024:60: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable r [valueFlowBailoutIncompleteVar] riscv64-gen.c:1111:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOK___multf3 [valueFlowBailoutIncompleteVar] riscv64-gen.c:1209:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOK___floatditf [valueFlowBailoutIncompleteVar] riscv64-gen.c:1235:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOK___fixtfdi [valueFlowBailoutIncompleteVar] riscv64-gen.c:1262:51: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOK___extenddftf2 [valueFlowBailoutIncompleteVar] tcc.c:28:23: error: There is an unknown macro here somewhere. Configuration is required. If TCC_VERSION is a macro then please configure it. [unknownMacro] tcccoff.c:97:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable COFF_C67_MAGIC [valueFlowBailoutIncompleteVar] tcccoff.c:832:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable STYP_TEXT [valueFlowBailoutIncompleteVar] tcccoff.c:878:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FILHSZ [valueFlowBailoutIncompleteVar] tccasm.c:618:17: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] tccasm.c:627:21: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] tccasm.c:612:25: style: Local variable 'size' shadows outer variable [shadowVariable] tccasm.c:492:23: note: Shadowed declaration tccasm.c:612:25: note: Shadow variable tccasm.c:678:27: style: Local variable 'n' shadows outer variable [shadowVariable] tccasm.c:492:9: note: Shadowed declaration tccasm.c:678:27: note: Shadow variable tccasm.c:730:20: style: Local variable 'size' shadows outer variable [shadowVariable] tccasm.c:492:23: note: Shadowed declaration tccasm.c:730:20: note: Shadow variable tccasm.c:899:22: style: Local variable 'sec' shadows outer variable [shadowVariable] tccasm.c:493:14: note: Shadowed declaration tccasm.c:899:22: note: Shadow variable tccasm.c:30:15: style: Variable 'ts' can be declared as pointer to const [constVariablePointer] tccasm.c:101:41: style: Parameter 'csym' can be declared as pointer to const [constParameterPointer] tccasm.c:112:52: style: Parameter 'sec' can be declared as pointer to const [constParameterPointer] tccasm.c:201:14: style: Variable 'esym' can be declared as pointer to const [constVariablePointer] tccasm.c:322:11: style: Variable 'esym1' can be declared as pointer to const [constVariablePointer] tccasm.c:322:19: style: Variable 'esym2' can be declared as pointer to const [constVariablePointer] tccasm.c:448:13: style: Variable 'esym' can be declared as pointer to const [constVariablePointer] tccasm.c:680:14: style: Variable 'esym' can be declared as pointer to const [constVariablePointer] tccasm.c:809:18: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tccasm.c:1019:53: style: Parameter 'str' can be declared as pointer to const [constParameterPointer] tccasm.c:1039:41: style: Parameter 'operands' can be declared as pointer to const [constParameterPointer] tccasm.c:1043:15: style: Variable 'ts' can be declared as pointer to const [constVariablePointer] tccasm.c:1078:59: style: Parameter 'in_str' can be declared as pointer to const [constParameterPointer] tccasm.c:115:27: error: Uninitialized variable: buf [uninitvar] tccelf.c:101:57: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable n_value [valueFlowBailoutIncompleteVar] tccelf.c:777:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable r_offset [valueFlowBailoutIncompleteVar] tccelf.c:804:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_SLINE [valueFlowBailoutIncompleteVar] tccelf.c:831:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable n_value [valueFlowBailoutIncompleteVar] tccelf.c:1006:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable n_value [valueFlowBailoutIncompleteVar] tccelf.c:2289:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_WRONLY [valueFlowBailoutIncompleteVar] tcccoff.c:511:6: style: Local variable 'i' shadows outer variable [shadowVariable] tcccoff.c:86:9: note: Shadowed declaration tcccoff.c:511:6: note: Shadow variable tcccoff.c:85:22: style: Variable 'sdata' can be declared as pointer to const [constVariablePointer] tcccoff.c:85:30: style: Variable 'sbss' can be declared as pointer to const [constVariablePointer] tcccoff.c:196:22: style: Variable 'sym_end' can be declared as pointer to const [constVariablePointer] tcccoff.c:381:22: style: Variable 'sym_end' can be declared as pointer to const [constVariablePointer] tcccoff.c:697:11: style: Variable 'name' can be declared as pointer to const [constVariablePointer] tcccoff.c:777:11: style: Variable 'name' can be declared as pointer to const [constVariablePointer] tcccoff.c:817:32: style: Parameter 'sect' can be declared as pointer to const [constParameterPointer] tcccoff.c:342:11: style: Variable 'coff_sec' is assigned a value that is never used. [unreadVariable] tccpp.c:2481:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] tccpp.c:3892:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LINE_MACRO_OUTPUT_FORMAT_NONE [valueFlowBailoutIncompleteVar] tccpp.c:4004:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LINE_MACRO_OUTPUT_FORMAT_P10 [valueFlowBailoutIncompleteVar] tccgen.c:414:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_SO [valueFlowBailoutIncompleteVar] tccgen.c:446:60: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable debug_sym [valueFlowBailoutIncompleteVar] tccgen.c:463:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_LBRAC [valueFlowBailoutIncompleteVar] tccgen.c:550:43: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_LSYM [valueFlowBailoutIncompleteVar] tccgen.c:626:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_LBRAC [valueFlowBailoutIncompleteVar] tccgen.c:644:62: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_LSYM [valueFlowBailoutIncompleteVar] tccgen.c:661:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_GSYM [valueFlowBailoutIncompleteVar] tccgen.c:686:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_SOL [valueFlowBailoutIncompleteVar] tccgen.c:702:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_SLINE [valueFlowBailoutIncompleteVar] tccgen.c:719:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_LBRAC [valueFlowBailoutIncompleteVar] tccgen.c:736:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_RBRAC [valueFlowBailoutIncompleteVar] tccgen.c:754:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_BINCL [valueFlowBailoutIncompleteVar] tccgen.c:763:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_EINCL [valueFlowBailoutIncompleteVar] tccgen.c:6876:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_LBRAC [valueFlowBailoutIncompleteVar] tccgen.c:6903:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable N_RBRAC [valueFlowBailoutIncompleteVar] tccgen.c:7123:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable v2 [valueFlowBailoutIncompleteVar] libtcc.c:157:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] libtcc.c:576:75: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] libtcc.c:681:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDONLY [valueFlowBailoutIncompleteVar] libtcc.c:801:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] libtcc.c:1778:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDONLY [valueFlowBailoutIncompleteVar] libtcc.c:2032:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TCC_VERSION [valueFlowBailoutIncompleteVar] libtcc.c:2112:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] riscv64-gen.c:515:32: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] riscv64-gen.c:992:45: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] riscv64-gen.c:1027:37: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] riscv64-gen.c:969:16: style: The comparison 'fc == vtop->c.i' is always true because 'fc' and 'vtop->c.i' represent the same value. [knownConditionTrueFalse] riscv64-gen.c:968:25: note: 'fc' is assigned value 'vtop->c.i' here. riscv64-gen.c:969:16: note: The comparison 'fc == vtop->c.i' is always true because 'fc' and 'vtop->c.i' represent the same value. riscv64-gen.c:1057:22: style: Same expression on both sides of '|'. [duplicateExpression] riscv64-gen.c:1060:22: style: Same expression on both sides of '|'. [duplicateExpression] riscv64-gen.c:261:25: portability: Shifting a negative value is technically undefined behaviour [shiftNegativeLHS] riscv64-gen.c:595:42: portability: Shifting a negative value is technically undefined behaviour [shiftNegativeLHS] riscv64-gen.c:137:28: style:inconclusive: Function 'gsym_addr' argument 1 names different: declaration 't' definition 't_'. [funcArgNamesDifferent] tcc.h:1592:28: note: Function 'gsym_addr' argument 1 names different: declaration 't' definition 't_'. riscv64-gen.c:137:28: note: Function 'gsym_addr' argument 1 names different: declaration 't' definition 't_'. riscv64-gen.c:137:36: style:inconclusive: Function 'gsym_addr' argument 2 names different: declaration 'a' definition 'a_'. [funcArgNamesDifferent] tcc.h:1592:35: note: Function 'gsym_addr' argument 2 names different: declaration 'a' definition 'a_'. riscv64-gen.c:137:36: note: Function 'gsym_addr' argument 2 names different: declaration 'a' definition 'a_'. riscv64-gen.c:348:35: style:inconclusive: Function 'store' argument 2 names different: declaration 'v' definition 'sv'. [funcArgNamesDifferent] tcc.h:1595:35: note: Function 'store' argument 2 names different: declaration 'v' definition 'sv'. riscv64-gen.c:348:35: note: Function 'store' argument 2 names different: declaration 'v' definition 'sv'. riscv64-gen.c:806:29: style:inconclusive: Function 'gfunc_sret' argument 4 names different: declaration 'align' definition 'ret_align'. [funcArgNamesDifferent] tcc.h:1596:66: note: Function 'gfunc_sret' argument 4 names different: declaration 'align' definition 'ret_align'. riscv64-gen.c:806:29: note: Function 'gfunc_sret' argument 4 names different: declaration 'align' definition 'ret_align'. riscv64-gen.c:1254:31: style:inconclusive: Function 'gen_cvt_ftof' argument 1 names different: declaration 't' definition 'dt'. [funcArgNamesDifferent] tcc.h:1609:31: note: Function 'gen_cvt_ftof' argument 1 names different: declaration 't' definition 'dt'. riscv64-gen.c:1254:31: note: Function 'gen_cvt_ftof' argument 1 names different: declaration 't' definition 'dt'. riscv64-gen.c:143:18: style: Local variable 'next' shadows outer function [shadowFunction] tcc.h:1367:14: note: Shadowed declaration riscv64-gen.c:143:18: note: Shadow variable riscv64-gen.c:1317:35: style: Parameter 'type' can be declared as pointer to const [constParameterPointer] riscv64-gen.c:714:41: warning: Either the condition 'stack_add>=0x1000' is redundant or there is signed integer overflow for expression 'stack_add<<20'. [integerOverflowCond] riscv64-gen.c:712:23: note: Assuming that condition 'stack_add>=0x1000' is not redundant riscv64-gen.c:714:41: note: Integer overflow riscv64-gen.c:653:18: style: Variable 'size' is assigned a value that is never used. [unreadVariable] riscv64-gen.c:729:20: style: Variable 'param_addr' is assigned a value that is never used. [unreadVariable] tccmacho.c:380:80: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable n_value [valueFlowBailoutIncompleteVar] tccmacho.c:797:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_WRONLY [valueFlowBailoutIncompleteVar] tccmacho.c:922:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDONLY [valueFlowBailoutIncompleteVar] tccmacho.c:656:29: style: Condition 'seg->vmaddr==-1' is always false [knownConditionTrueFalse] tccmacho.c:387:9: portability: %llx in format string (no. 3) requires 'unsigned long long' but the argument type is 'Elf32_Addr {aka unsigned int}'. [invalidPrintfArgType_uint] tccmacho.c:387:9: warning: %d in format string (no. 4) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] tccmacho.c:387:9: warning: %d in format string (no. 5) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] tccmacho.c:387:9: warning: %d in format string (no. 6) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] tccmacho.c:683:17: warning: %llx in format string (no. 1) requires 'unsigned long long' but the argument type is 'unsigned long'. [invalidPrintfArgType_uint] tccmacho.c:690:21: warning: %lld in format string (no. 1) requires 'long long' but the argument type is 'unsigned long'. [invalidPrintfArgType_sint] tccmacho.c:702:15: portability: %llx in format string (no. 4) requires 'unsigned long long' but the argument type is 'Elf32_Addr {aka unsigned int}'. [invalidPrintfArgType_uint] tccmacho.c:895:5: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] tccmacho.c:913:13: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] tccmacho.c:969:9: warning: %llx in format string (no. 5) requires 'unsigned long long' but the argument type is 'unsigned long'. [invalidPrintfArgType_uint] tccmacho.c:812:13: style: Local variable 'i' shadows outer variable [shadowVariable] tccmacho.c:786:9: note: Shadowed declaration tccmacho.c:812:13: note: Shadow variable tccmacho.c:262:72: style: Parameter 'name' can be declared as pointer to const [constParameterPointer] tccmacho.c:275:82: style: Parameter 'name' can be declared as pointer to const [constParameterPointer] tccmacho.c:296:49: style: Parameter 'name' can be declared as pointer to const [constParameterPointer] tccmacho.c:313:16: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tccmacho.c:473:13: style: Variable 'sa' can be declared as pointer to const [constVariablePointer] tccmacho.c:474:13: style: Variable 'sb' can be declared as pointer to const [constVariablePointer] tccmacho.c:902:36: style: Variable 'sc' can be declared as pointer to const [constVariablePointer] tccmacho.c:911:35: style: Variable 'dc' can be declared as pointer to const [constVariablePointer] tccmacho.c:936:38: style: Variable 'dc' can be declared as pointer to const [constVariablePointer] tccmacho.c:968:26: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tccmacho.c:46:21: style: struct member 'fat_arch::size' is never used. [unusedStructMember] tccmacho.c:47:21: style: struct member 'fat_arch::align' is never used. [unusedStructMember] tccmacho.c:94:21: style: struct member 'segment_command_64::cmd' is never used. [unusedStructMember] tccmacho.c:104:21: style: struct member 'segment_command_64::flags' is never used. [unusedStructMember] tccmacho.c:114:21: style: struct member 'section_64::reloff' is never used. [unusedStructMember] tccmacho.c:115:21: style: struct member 'section_64::nreloc' is never used. [unusedStructMember] tccmacho.c:117:21: style: struct member 'section_64::reserved1' is never used. [unusedStructMember] tccmacho.c:118:21: style: struct member 'section_64::reserved2' is never used. [unusedStructMember] tccmacho.c:119:21: style: struct member 'section_64::reserved3' is never used. [unusedStructMember] tccmacho.c:144:21: style: struct member 'dylinker_command::cmd' is never used. [unusedStructMember] tccmacho.c:146:21: style: struct member 'dylinker_command::cmdsize' is never used. [unusedStructMember] tccmacho.c:193:15: style: struct member 'entry_point_command::cmd' is never used. [unusedStructMember] tccmacho.c:194:15: style: struct member 'entry_point_command::cmdsize' is never used. [unusedStructMember] tccmacho.c:196:15: style: struct member 'entry_point_command::stacksize' is never used. [unusedStructMember] tccmacho.c:244:32: style: struct member 'macho::wdata' is never used. [unusedStructMember] tccpe.c:378:71: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ST_PE_STDCALL [valueFlowBailoutIncompleteVar] tccpe.c:395:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ST_PE_STDCALL [valueFlowBailoutIncompleteVar] tccpe.c:617:78: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] tccpe.c:828:64: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable name [valueFlowBailoutIncompleteVar] tccpe.c:925:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ST_PE_EXPORT [valueFlowBailoutIncompleteVar] tccpe.c:1311:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ST_PE_EXPORT [valueFlowBailoutIncompleteVar] tccpe.c:1565:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDONLY [valueFlowBailoutIncompleteVar] tccpe.c:417:18: style: Condition '0==a' is always true [knownConditionTrueFalse] tccpe.c:392:13: note: Assignment 'a=0', assigned value is 0 tccpe.c:417:18: note: Condition '0==a' is always true tccpe.c:1584:42: style: Checking if unsigned expression 'oh.NumberOfRvaAndSizes' is less than zero. [unsignedLessThanZero] tccpe.c:1592:42: style: Checking if unsigned expression 'oh.NumberOfRvaAndSizes' is less than zero. [unsignedLessThanZero] tccpe.c:845:29: style: Local variable 'name' shadows outer variable [shadowVariable] tccpe.c:823:21: note: Shadowed declaration tccpe.c:845:29: note: Shadow variable tccpe.c:1102:15: style: Local variable 'o' shadows outer function [shadowFunction] tcc.h:1612:14: note: Shadowed declaration tccpe.c:1102:15: note: Shadow variable tccpe.c:375:60: style: Parameter 'sym' can be declared as pointer to const [constParameterPointer] tccpe.c:444:44: style: Parameter 'pe' can be declared as pointer to const [constParameterPointer] tccpe.c:449:47: style: Parameter 'pe' can be declared as pointer to const [constParameterPointer] tccpe.c:759:16: style: Variable 'isym' can be declared as pointer to const [constVariablePointer] tccpe.c:843:28: style: Variable 'imp_sym' can be declared as pointer to const [constVariablePointer] tccpe.c:1010:21: style: Variable 'rel_end' can be declared as pointer to const [constVariablePointer] tccpe.c:1065:38: style: Parameter 's' can be declared as pointer to const [constParameterPointer] tccpe.c:1221:21: style: Variable 'rel_end' can be declared as pointer to const [constVariablePointer] tccpe.c:1943:39: style: Parameter 's1' can be declared as pointer to const [constParameterPointer] tccpe.c:72:10: style: struct member '_IMAGE_DOS_HEADER::e_magic' is never used. [unusedStructMember] tccpe.c:73:10: style: struct member '_IMAGE_DOS_HEADER::e_cblp' is never used. [unusedStructMember] tccpe.c:74:10: style: struct member '_IMAGE_DOS_HEADER::e_cp' is never used. [unusedStructMember] tccpe.c:75:10: style: struct member '_IMAGE_DOS_HEADER::e_crlc' is never used. [unusedStructMember] tccpe.c:76:10: style: struct member '_IMAGE_DOS_HEADER::e_cparhdr' is never used. [unusedStructMember] tccpe.c:77:10: style: struct member '_IMAGE_DOS_HEADER::e_minalloc' is never used. [unusedStructMember] tccpe.c:78:10: style: struct member '_IMAGE_DOS_HEADER::e_maxalloc' is never used. [unusedStructMember] tccpe.c:79:10: style: struct member '_IMAGE_DOS_HEADER::e_ss' is never used. [unusedStructMember] tccpe.c:80:10: style: struct member '_IMAGE_DOS_HEADER::e_sp' is never used. [unusedStructMember] tccpe.c:81:10: style: struct member '_IMAGE_DOS_HEADER::e_csum' is never used. [unusedStructMember] tccpe.c:82:10: style: struct member '_IMAGE_DOS_HEADER::e_ip' is never used. [unusedStructMember] tccpe.c:83:10: style: struct member '_IMAGE_DOS_HEADER::e_cs' is never used. [unusedStructMember] tccpe.c:84:10: style: struct member '_IMAGE_DOS_HEADER::e_lfarlc' is never used. [unusedStructMember] tccpe.c:85:10: style: struct member '_IMAGE_DOS_HEADER::e_ovno' is never used. [unusedStructMember] tccpe.c:86:10: style: struct member '_IMAGE_DOS_HEADER::e_res' is never used. [unusedStructMember] tccpe.c:87:10: style: struct member '_IMAGE_DOS_HEADER::e_oemid' is never used. [unusedStructMember] tccpe.c:88:10: style: struct member '_IMAGE_DOS_HEADER::e_oeminfo' is never used. [unusedStructMember] tccpe.c:89:10: style: struct member '_IMAGE_DOS_HEADER::e_res2' is never used. [unusedStructMember] tccpe.c:99:13: style: struct member '_IMAGE_FILE_HEADER::TimeDateStamp' is never used. [unusedStructMember] tccpe.c:100:13: style: struct member '_IMAGE_FILE_HEADER::PointerToSymbolTable' is never used. [unusedStructMember] tccpe.c:101:13: style: struct member '_IMAGE_FILE_HEADER::NumberOfSymbols' is never used. [unusedStructMember] tccpe.c:102:13: style: struct member '_IMAGE_FILE_HEADER::SizeOfOptionalHeader' is never used. [unusedStructMember] tccpe.c:117:13: style: struct member '_IMAGE_OPTIONAL_HEADER::Magic' is never used. [unusedStructMember] tccpe.c:118:13: style: struct member '_IMAGE_OPTIONAL_HEADER::MajorLinkerVersion' is never used. [unusedStructMember] tccpe.c:119:13: style: struct member '_IMAGE_OPTIONAL_HEADER::MinorLinkerVersion' is never used. [unusedStructMember] tccpe.c:122:13: style: struct member '_IMAGE_OPTIONAL_HEADER::SizeOfUninitializedData' is never used. [unusedStructMember] tccpe.c:130:13: style: struct member '_IMAGE_OPTIONAL_HEADER::SectionAlignment' is never used. [unusedStructMember] tccpe.c:131:13: style: struct member '_IMAGE_OPTIONAL_HEADER::FileAlignment' is never used. [unusedStructMember] tccpe.c:132:13: style: struct member '_IMAGE_OPTIONAL_HEADER::MajorOperatingSystemVersion' is never used. [unusedStructMember] tccpe.c:133:13: style: struct member '_IMAGE_OPTIONAL_HEADER::MinorOperatingSystemVersion' is never used. [unusedStructMember] tccpe.c:134:13: style: struct member '_IMAGE_OPTIONAL_HEADER::MajorImageVersion' is never used. [unusedStructMember] tccpe.c:135:13: style: struct member '_IMAGE_OPTIONAL_HEADER::MinorImageVersion' is never used. [unusedStructMember] tccpe.c:136:13: style: struct member '_IMAGE_OPTIONAL_HEADER::MajorSubsystemVersion' is never used. [unusedStructMember] tccpe.c:137:13: style: struct member '_IMAGE_OPTIONAL_HEADER::MinorSubsystemVersion' is never used. [unusedStructMember] tccpe.c:138:13: style: struct member '_IMAGE_OPTIONAL_HEADER::Win32VersionValue' is never used. [unusedStructMember] tccpe.c:143:13: style: struct member '_IMAGE_OPTIONAL_HEADER::DllCharacteristics' is never used. [unusedStructMember] tccpe.c:145:14: style: struct member '_IMAGE_OPTIONAL_HEADER::SizeOfStackCommit' is never used. [unusedStructMember] tccpe.c:146:14: style: struct member '_IMAGE_OPTIONAL_HEADER::SizeOfHeapReserve' is never used. [unusedStructMember] tccpe.c:147:14: style: struct member '_IMAGE_OPTIONAL_HEADER::SizeOfHeapCommit' is never used. [unusedStructMember] tccpe.c:148:13: style: struct member '_IMAGE_OPTIONAL_HEADER::LoaderFlags' is never used. [unusedStructMember] tccpe.c:176:21: style: union member 'Anonymous9::PhysicalAddress' is never used. [unusedStructMember] tccpe.c:217:13: style: struct member '_IMAGE_BASE_RELOCATION::VirtualAddress' is never used. [unusedStructMember] tccpe.c:218:13: style: struct member '_IMAGE_BASE_RELOCATION::SizeOfBlock' is never used. [unusedStructMember] tccpe.c:283:11: style: struct member 'pe_rsrc_reloc::size' is never used. [unusedStructMember] tccelf.c:112:38: style:inconclusive: Function 'tccelf_delete' argument 1 names different: declaration 's' definition 's1'. [funcArgNamesDifferent] tcc.h:1498:38: note: Function 'tccelf_delete' argument 1 names different: declaration 's' definition 's1'. tccelf.c:112:38: note: Function 'tccelf_delete' argument 1 names different: declaration 's' definition 's1'. tccelf.c:486:39: style:inconclusive: Function 'get_sym_addr' argument 1 names different: declaration 's' definition 's1'. [funcArgNamesDifferent] tcc.h:1548:39: note: Function 'get_sym_addr' argument 1 names different: declaration 's' definition 's1'. tccelf.c:486:39: note: Function 'get_sym_addr' argument 1 names different: declaration 's' definition 's1'. tccelf.c:762:44: style:inconclusive: Function 'squeeze_multi_relocs' argument 1 names different: declaration 'sec' definition 's'. [funcArgNamesDifferent] tcc.h:1546:44: note: Function 'squeeze_multi_relocs' argument 1 names different: declaration 'sec' definition 's'. tccelf.c:762:44: note: Function 'squeeze_multi_relocs' argument 1 names different: declaration 'sec' definition 's'. tccelf.c:364:26: style: Local variable 'g' shadows outer function [shadowFunction] tcc.h:1645:14: note: Shadowed declaration tccelf.c:364:26: note: Shadow variable tccelf.c:1661:11: style: Local variable 'index' shadows outer variable [shadowVariable] tccelf.c:1635:20: note: Shadowed declaration tccelf.c:1661:11: note: Shadow variable tccelf.c:2795:18: style: Local variable 'o' shadows outer function [shadowFunction] tcc.h:1612:14: note: Shadowed declaration tccelf.c:2795:18: note: Shadow variable tccelf.c:2872:26: style: Local variable 'sym_index' shadows outer variable [shadowVariable] tccelf.c:2652:47: note: Shadowed declaration tccelf.c:2872:26: note: Shadow variable tccelf.c:3112:14: style: Local variable 'next' shadows outer function [shadowFunction] tcc.h:1367:14: note: Shadowed declaration tccelf.c:3112:14: note: Shadow variable tccelf.c:3346:15: style: Local variable 'ch' shadows outer variable [shadowVariable] tcc.h:1316:13: note: Shadowed declaration tccelf.c:3346:15: note: Shadow variable tccelf.c:193:18: style: Variable 'sr' can be declared as pointer to const [constVariablePointer] tccelf.c:196:23: style: Variable 'rel_end' can be declared as pointer to const [constVariablePointer] tccelf.c:382:20: style: Variable 'strtab' can be declared as pointer to const [constVariablePointer] tccelf.c:463:16: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tccelf.c:489:16: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tccelf.c:982:16: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tccelf.c:1018:14: style: Variable 's' can be declared as pointer to const [constVariablePointer] tccelf.c:1107:16: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tccelf.c:1198:16: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tccelf.c:1200:22: style: Variable 'attr' can be declared as pointer to const [constVariablePointer] tccelf.c:1227:32: style: Variable 'esym' can be declared as pointer to const [constVariablePointer] tccelf.c:1538:14: style: Variable 's' can be declared as pointer to const [constVariablePointer] tccelf.c:1558:53: style: Parameter 'rel' can be declared as pointer to const [constParameterPointer] tccelf.c:1561:16: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tccelf.c:1562:22: style: Variable 'attr' can be declared as pointer to const [constVariablePointer] tccelf.c:1613:17: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tccelf.c:1614:23: style: Variable 'attr' can be declared as pointer to const [constVariablePointer] tccelf.c:1636:22: style: Variable 'esym' can be declared as pointer to const [constVariablePointer] tccelf.c:1680:39: style: Variable 'dynname' can be declared as pointer to const [constVariablePointer] tccelf.c:1722:16: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tccelf.c:2015:72: style: Parameter 'interp' can be declared as pointer to const [constParameterPointer] tccelf.c:2016:43: style: Parameter 'dynamic' can be declared as pointer to const [constParameterPointer] tccelf.c:2063:14: style: Variable 's' can be declared as pointer to const [constVariablePointer] tccelf.c:2158:74: style: Parameter 'phdr' can be declared as pointer to const [constParameterPointer] tccelf.c:2159:50: style: Parameter 'sec_order' can be declared as pointer to const [constParameterPointer] tccelf.c:2476:27: style: Variable 'dllref' can be declared as pointer to const [constVariablePointer] tccelf.c:2656:11: style: Variable 'sh_name' can be declared as pointer to const [constVariablePointer] tccelf.c:2656:21: style: Variable 'name' can be declared as pointer to const [constVariablePointer] tccelf.c:2794:23: style: Variable 'b' can be declared as pointer to const [constVariablePointer] tccelf.c:2971:16: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tccelf.c:3055:73: style: Parameter 'lib' can be declared as pointer to const [constParameterPointer] tccelf.c:3055:84: style: Parameter 'version' can be declared as pointer to const [constParameterPointer] tccelf.c:3121:24: style: Variable 'verdaux' can be declared as pointer to const [constVariablePointer] tccelf.c:3190:29: style: Variable 'sh1' can be declared as pointer to const [constVariablePointer] tcctools.c:64:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] tcctools.c:133:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] tcctools.c:102:11: style: Local variable 'file' shadows outer variable [shadowVariable] tcc.h:1315:30: note: Shadowed declaration tcctools.c:102:11: note: Shadow variable tcctools.c:92:17: style: Variable 'ehdr' can be declared as pointer to const [constVariablePointer] tcctools.c:93:17: style: Variable 'shdr' can be declared as pointer to const [constVariablePointer] tcctools.c:94:16: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] tcctools.c:96:17: style: Variable 'shstr' can be declared as pointer to const [constVariablePointer] tcctools.c:96:41: style: Variable 'strtab' can be declared as pointer to const [constVariablePointer] tcctools.c:102:11: style: Variable 'file' can be declared as pointer to const [constVariablePointer] tcctools.c:485:11: style: Variable 'a0' can be declared as pointer to const [constVariablePointer] tcctools.c:38:10: style: struct member 'ArHdr::ar_date' is never used. [unusedStructMember] tcctools.c:39:10: style: struct member 'ArHdr::ar_uid' is never used. [unusedStructMember] tcctools.c:40:10: style: struct member 'ArHdr::ar_gid' is never used. [unusedStructMember] tcctools.c:43:10: style: struct member 'ArHdr::ar_fmag' is never used. [unusedStructMember] tccpp.c:560:22: error: Returning pointer to local variable 'p' that will be invalid when returning. [returnDanglingLifetime] tccpp.c:560:23: note: Passed to 'strcpy'. tccpp.c:491:11: note: Variable created here. tccpp.c:560:22: note: Returning pointer to local variable 'p' that will be invalid when returning. tccpp.c:562:22: error: Returning pointer to local variable 'p' that will be invalid when returning. [returnDanglingLifetime] tccpp.c:562:23: note: Passed to 'strcpy'. tccpp.c:491:11: note: Variable created here. tccpp.c:562:22: note: Returning pointer to local variable 'p' that will be invalid when returning. tccpp.c:564:22: error: Returning pointer to local variable 'p' that will be invalid when returning. [returnDanglingLifetime] tccpp.c:564:23: note: Passed to 'strcpy'. tccpp.c:491:11: note: Variable created here. tccpp.c:564:22: note: Returning pointer to local variable 'p' that will be invalid when returning. tccpp.c:566:22: error: Returning pointer to local variable 'p' that will be invalid when returning. [returnDanglingLifetime] tccpp.c:566:23: note: Passed to 'strcpy'. tccpp.c:491:11: note: Variable created here. tccpp.c:566:22: note: Returning pointer to local variable 'p' that will be invalid when returning. tccpp.c:3326:14: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] tccpp.c:4029:13: style: Condition 'level' is always false [knownConditionTrueFalse] tccpp.c:4023:14: note: iptr is assigned 's1->include_stack_ptr' here. tccpp.c:4025:17: note: Assuming condition is false tccpp.c:4028:39: note: Assignment 'level=s1->include_stack_ptr-iptr', assigned value is 0 tccpp.c:4029:13: note: Condition 'level' is always false tccpp.c:591:13: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/abitest.c:51:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TCC_OUTPUT_MEMORY [valueFlowBailoutIncompleteVar] tests/abitest.c:663:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] tccpp.c:263:47: warning: Either the condition 'p' is redundant or there is overflow in pointer subtraction. [nullPointerArithmeticRedundantCheck] tccpp.c:264:21: note: Assuming that condition 'p' is not redundant tccpp.c:263:47: note: Null pointer subtraction tccpp.c:282:43: warning: Either the condition 'p' is redundant or there is overflow in pointer subtraction. [nullPointerArithmeticRedundantCheck] tccpp.c:283:17: note: Assuming that condition 'p' is not redundant tccpp.c:282:43: note: Null pointer subtraction tccpp.c:303:39: warning: Either the condition 'p' is redundant or there is overflow in pointer subtraction. [nullPointerArithmeticRedundantCheck] tccpp.c:304:13: note: Assuming that condition 'p' is not redundant tccpp.c:303:39: note: Null pointer subtraction tccpp.c:388:34: style:inconclusive: Function 'cstr_printf' argument 1 names different: declaration 'cs' definition 'cstr'. [funcArgNamesDifferent] tcc.h:1248:34: note: Function 'cstr_printf' argument 1 names different: declaration 'cs' definition 'cstr'. tccpp.c:388:34: note: Function 'cstr_printf' argument 1 names different: declaration 'cs' definition 'cstr'. tccpp.c:1087:40: style:inconclusive: Function 'tok_str_free' argument 1 names different: declaration 's' definition 'str'. [funcArgNamesDifferent] tcc.h:1354:40: note: Function 'tok_str_free' argument 1 names different: declaration 's' definition 'str'. tccpp.c:1087:40: note: Function 'tok_str_free' argument 1 names different: declaration 's' definition 'str'. tccpp.c:177:16: style: Local variable 'next' shadows outer function [shadowFunction] tcc.h:1367:14: note: Shadowed declaration tccpp.c:177:16: note: Shadow variable tccpp.c:292:38: style: Local variable 'next' shadows outer function [shadowFunction] tcc.h:1367:14: note: Shadowed declaration tccpp.c:292:38: note: Shadow variable tccpp.c:1331:14: style: Local variable 'o' shadows outer function [shadowFunction] tcc.h:1612:14: note: Shadowed declaration tccpp.c:1331:14: note: Shadow variable tccpp.c:2155:17: style: Local variable 'skip' shadows outer function [shadowFunction] tcc.h:1374:14: note: Shadowed declaration tccpp.c:2155:17: note: Shadow variable tccpp.c:2306:45: style: Local variable 'ch' shadows outer variable [shadowVariable] tcc.h:1316:13: note: Shadowed declaration tccpp.c:2306:45: note: Shadow variable tccpp.c:3052:37: style: Local variable 's' shadows outer variable [shadowVariable] tccpp.c:3025:10: note: Shadowed declaration tccpp.c:3052:37: note: Shadow variable tccpp.c:3264:34: style: Local variable 'p' shadows outer variable [shadowVariable] tccpp.c:3238:16: note: Shadowed declaration tccpp.c:3264:34: note: Shadow variable tccpp.c:1073:39: style: Parameter 's' can be declared as pointer to const [constParameterPointer] tccpp.c:1331:14: style: Variable 'o' can be declared as pointer to const [constVariablePointer] tccpp.c:1344:32: style: Parameter 's' can be declared as pointer to const [constParameterPointer] tccpp.c:1360:32: style: Parameter 'b' can be declared as pointer to const [constParameterPointer] tccpp.c:1846:28: style: Variable 'e' can be declared as pointer to const [constVariablePointer] tccpp.c:3305:11: style: Variable 'cstrval' can be declared as pointer to const [constVariablePointer] tccpp.c:3323:20: style: Variable 'tm' can be declared as pointer to const [constVariablePointer] tccpp.c:748:21: style: Variable 'c' is assigned a value that is never used. [unreadVariable] tccpp.c:753:25: style: Variable 'c' is assigned a value that is never used. [unreadVariable] tccpp.c:3354:17: style: Variable 'spc' is assigned a value that is never used. [unreadVariable] tests/asm-c-connect-1.c:32:26: style: Parameter 'argv' can be declared as const array [constParameter] tests/abitest.c:405:57: style: union member 'two_member_union_test_type_u::y' is never used. [unusedStructMember] tests/abitest.c:561:27: style: struct member 'stdarg_many_test_struct_type::a' is never used. [unusedStructMember] tests/abitest.c:561:30: style: struct member 'stdarg_many_test_struct_type::b' is never used. [unusedStructMember] tests/abitest.c:596:27: style: struct member 'stdarg_struct_test_struct_type::a' is never used. [unusedStructMember] tests/abitest.c:596:30: style: struct member 'stdarg_struct_test_struct_type::b' is never used. [unusedStructMember] tests/abitest.c:596:33: style: struct member 'stdarg_struct_test_struct_type::c' is never used. [unusedStructMember] tests/abitest.c:490:19: style: Variable 'x' is assigned a value that is never used. [unreadVariable] tests/bug.c:9:9: style: Condition 'r!=0xffff0066' is always true [knownConditionTrueFalse] tests/bug.c:7:19: note: Assignment 'c=(char)0xffffffff', assigned value is -1 tests/bug.c:8:30: note: Assignment 'r=(unsigned short)c^(char)0x99999999', assigned value is 102 tests/bug.c:9:9: note: Condition 'r!=0xffff0066' is always true tests/bug.c:8:30: warning: When using 'char' variables in bit operations, sign extension can generate unexpected results. [charBitOp] tests/libtcc_test.c:58:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] tests/boundtest.c:27:19: error: Array 'tab[100]' accessed at index 100, which is out of bounds. [arrayIndexOutOfBounds] tests/boundtest.c:26:14: note: Assuming that condition 'i<100+1' is not redundant tests/boundtest.c:27:19: note: Array index out of bounds tests/boundtest.c:70:20: error: Array 'tab4[20]' accessed at index 20, which is out of bounds. [arrayIndexOutOfBounds] tests/boundtest.c:69:14: note: Assuming that condition 'i<21' is not redundant tests/boundtest.c:70:20: note: Array index out of bounds tests/boundtest.c:86:20: error: Array 'tab4[20]' accessed at index 20, which is out of bounds. [arrayIndexOutOfBounds] tests/boundtest.c:85:14: note: Assuming that condition 'i<21' is not redundant tests/boundtest.c:86:20: note: Array index out of bounds tests/boundtest.c:126:19: error: Array 'tab[10]' accessed at index 10, which is out of bounds. [arrayIndexOutOfBounds] tests/boundtest.c:125:14: note: Assuming that condition 'i<11' is not redundant tests/boundtest.c:126:19: note: Array index out of bounds tests/boundtest.c:196:6: error: Array 'p[99]' accessed at index 99, which is out of bounds. [arrayIndexOutOfBounds] tests/boundtest.c:239:19: error: Array 'tab[100]' accessed at index 100, which is out of bounds. [arrayIndexOutOfBounds] tests/boundtest.c:238:14: note: Assuming that condition 'i<100+1' is not redundant tests/boundtest.c:239:19: note: Array index out of bounds tests/boundtest.c:148:12: error: Buffer is accessed out of bounds: tab [bufferAccessOutOfBounds] tests/boundtest.c:195:12: error: Buffer is accessed out of bounds: p [bufferAccessOutOfBounds] tests/boundtest.c:193:13: note: Assign p, buffer with size 99 tests/boundtest.c:195:12: note: Buffer overrun tests/boundtest.c:290:14: style: Condition 'argc>=2' is always true [knownConditionTrueFalse] tests/boundtest.c:281:14: note: Assuming that condition 'argc<2' is not redundant tests/boundtest.c:290:14: note: Condition 'argc>=2' is always true tests/boundtest.c:101:13: warning: %x in format string (no. 2) requires 'unsigned int' but the argument type is 'signed int *'. [invalidPrintfArgType_uint] tests/boundtest.c:158:5: error: Memory pointed to by 'ptr' is freed twice. [doubleFree] tests/boundtest.c:157:5: note: Memory pointed to by 'ptr' is freed twice. tests/boundtest.c:158:5: note: Memory pointed to by 'ptr' is freed twice. tests/boundtest.c:213:34: error: Dereferencing 'p' after it is deallocated / released [deallocuse] tests/boundtest.c:229:34: error: Dereferencing 'p' after it is deallocated / released [deallocuse] tests/boundtest.c:213:44: error: Allocation with malloc, strcpy doesn't release it. [leakNoVarFunctionCall] tests/boundtest.c:229:44: error: Allocation with malloc, strcpy doesn't release it. [leakNoVarFunctionCall] tests/boundtest.c:111:9: style: Local variable 'tab' shadows outer variable [shadowVariable] tests/boundtest.c:9:5: note: Shadowed declaration tests/boundtest.c:111:9: note: Shadow variable tests/boundtest.c:123:10: style: Local variable 'tab' shadows outer variable [shadowVariable] tests/boundtest.c:9:5: note: Shadowed declaration tests/boundtest.c:123:10: note: Shadow variable tests/boundtest.c:134:10: style: Local variable 'tab' shadows outer variable [shadowVariable] tests/boundtest.c:9:5: note: Shadowed declaration tests/boundtest.c:134:10: note: Shadow variable tests/boundtest.c:146:10: style: Local variable 'tab' shadows outer variable [shadowVariable] tests/boundtest.c:9:5: note: Shadowed declaration tests/boundtest.c:146:10: note: Shadow variable tests/boundtest.c:166:10: style: Local variable 'tab' shadows outer variable [shadowVariable] tests/boundtest.c:9:5: note: Shadowed declaration tests/boundtest.c:166:10: note: Shadow variable tests/boundtest.c:237:9: style: Local variable 'tab' shadows outer variable [shadowVariable] tests/boundtest.c:9:5: note: Shadowed declaration tests/boundtest.c:237:9: note: Shadow variable tests/boundtest.c:96:10: style: Variable 'p' can be declared as pointer to const [constVariablePointer] tests/boundtest.c:111:9: style: Variable 'tab' can be declared as const array [constVariable] tests/boundtest.c:123:10: style: Variable 'tab' can be declared as const array [constVariable] tests/boundtest.c:205:11: style: Variable 'demo' can be declared as pointer to const [constVariablePointer] tests/boundtest.c:221:11: style: Variable 'demo' can be declared as pointer to const [constVariablePointer] tests/boundtest.c:237:9: style: Variable 'tab' can be declared as const array [constVariable] tests/boundtest.c:138:17: error: Uninitialized variable: tab1 [uninitvar] tests/boundtest.c:55:20: error: Memory is allocated but not initialized: tab4[i] [uninitdata] tests/boundtest.c:70:20: error: Memory is allocated but not initialized: tab4[i] [uninitdata] tests/boundtest.c:114:19: error: Uninitialized variable: tab[i] [legacyUninitvar] tests/boundtest.c:126:19: error: Uninitialized variable: tab[i] [legacyUninitvar] tests/boundtest.c:239:19: error: Uninitialized variable: tab[i] [legacyUninitvar] tests/boundtest.c:111:9: style: Variable 'tab' is not assigned a value. [unassignedVariable] tests/boundtest.c:123:10: style: Variable 'tab' is not assigned a value. [unassignedVariable] tests/boundtest.c:156:11: style: Variable 'ptr' is allocated memory that is never used. [unusedAllocatedMemory] tests/boundtest.c:165:15: style: Variable 'pad1' is assigned a value that is never used. [unreadVariable] tests/boundtest.c:167:15: style: Variable 'pad2' is assigned a value that is never used. [unreadVariable] tests/boundtest.c:237:9: style: Variable 'tab' is not assigned a value. [unassignedVariable] tests/libtcc_test_mt.c:41:31: debug: Function::addArguments found argument 'x' with varid 0. [varid0] tests/misc/c2str.c:29:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] tests/libtcc_test_mt.c:117:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] tests/libtcc_test_mt.c:131:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TCC_RELOCATE_AUTO [valueFlowBailoutIncompleteVar] tests/libtcc_test_mt.c:216:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] tests/libtcc_test_mt.c:253:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] tests/libtcc_test_mt.c:53:5: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] tests/pp/03.c:13:1: error: syntax error [syntaxError] tests/pp/04.c:4:1: error: syntax error [syntaxError] tests/pp/08.c:4:1: error: syntax error [syntaxError] tests/pp/10.c:9:1: error: Unmatched ')'. Configuration: '__GNUC__=1'. [syntaxError] tests/pp/11.c:31:1: error: syntax error [syntaxError] tests/pp/14.c:5:1: error: syntax error: keyword 'return' is not allowed in global scope [syntaxError] tests/pp/15.c:6:1: error: syntax error: keyword 'return' is not allowed in global scope [syntaxError] tests/pp/17.c:14:1: error: There is an unknown macro here somewhere. Configuration is required. If X180 is a macro then please configure it. [unknownMacro] tests/pp/pp-counter.c:19:4: error: syntax error [syntaxError] tests/tcctest.c:4069:32: error: No pair for character ("). Can't process file. File is either invalid or unicode, which is currently not supported. [syntaxError] tests/tests2/03_struct.c:5:25: style: Parameter 'this' can be declared as pointer to const [constParameterPointer] tests/tests2/08_while.c:11:6: style: Variable 't' is assigned a value that is never used. [unreadVariable] tests/tests2/09_do_while.c:11:6: style: Variable 't' is assigned a value that is never used. [unreadVariable] tests/tests2/100_c99array-decls.c:21:24: error: syntax error [syntaxError] tests/testfp.c:22:5: warning: %d in format string (no. 2) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] tests/tests2/102_alignas.c:26:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable i1 [valueFlowBailoutIncompleteVar] tests/tests2/103_implicit_memmove.c:5:33: style: Parameter 'b' can be declared as pointer to const [constParameterPointer] tests/tests2/103_implicit_memmove.c:12:35: style: Parameter 'b' can be declared as pointer to const [constParameterPointer] tests/tests2/103_implicit_memmove.c:4:16: style: struct member 'S::a' is never used. [unusedStructMember] tests/tests2/103_implicit_memmove.c:4:18: style: struct member 'S::b' is never used. [unusedStructMember] tests/tests2/103_implicit_memmove.c:4:20: style: struct member 'S::c' is never used. [unusedStructMember] tests/tests2/103_implicit_memmove.c:4:22: style: struct member 'S::d' is never used. [unusedStructMember] tests/tests2/103_implicit_memmove.c:4:25: style: struct member 'S::e' is never used. [unusedStructMember] tests/tests2/104+_inline.c:11:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable inline_inline_2decl_only [valueFlowBailoutIncompleteVar] tests/tests2/106_pthread.c:13:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PTHREAD_PROCESS_SHARED [valueFlowBailoutIncompleteVar] tests/tests2/106_pthread.c:8:7: style: Unused variable: ret [unusedVariable] tests/tests2/109_float_struct_calling.c:7:10: style: struct member 'Point::y' is never used. [unusedStructMember] tests/tests2/109_float_struct_calling.c:11:17: style: struct member 'Rect::top_left' is never used. [unusedStructMember] tests/tests2/10_pointer.c:13:9: style: Variable 'b' can be declared as pointer to const [constVariablePointer] tests/tests2/10_pointer.c:28:18: style: Variable 'tsar' can be declared as pointer to const [constVariablePointer] tests/tests2/10_pointer.c:14:8: style: Unused variable: c [unusedVariable] tests/tests2/111_conversion.c:11:11: error: Overlapping read/write of union is undefined behavior [overlappingWriteUnion] tests/tests2/113_btdll.c:31:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __FUNCTION__ [valueFlowBailoutIncompleteVar] tccgen.c:1355:22: style:inconclusive: Boolean expression 'op<2' is used in bitwise operation. Did you mean '&&'? [bitwiseOnBoolean] tccgen.c:3452:34: style:inconclusive: Boolean expression 'dbt!=10' is used in bitwise operation. Did you mean '||'? [bitwiseOnBoolean] tccgen.c:1784:41: warning: Either the condition 'r<0x0030' is redundant or the array 'reg_classes[5]' is accessed at index 47, which is out of bounds. [arrayIndexOutOfBoundsCond] tccgen.c:1784:15: note: Assuming that condition 'r<0x0030' is not redundant tccgen.c:1784:41: note: Array index out of bounds tccgen.c:1787:41: warning: Either the condition 'r<0x0030' is redundant or the array 'reg_classes[5]' is accessed at index 47, which is out of bounds. [arrayIndexOutOfBoundsCond] tccgen.c:1787:15: note: Assuming that condition 'r<0x0030' is not redundant tccgen.c:1787:41: note: Array index out of bounds tccgen.c:2189:70: warning: Either the condition 'r<0x0030' is redundant or the array 'reg_classes[5]' is accessed at index 47, which is out of bounds. [arrayIndexOutOfBoundsCond] tccgen.c:2189:43: note: Assuming that condition 'r<0x0030' is not redundant tccgen.c:2189:70: note: Array index out of bounds tccgen.c:2190:63: warning: Either the condition 'vtop->r2<0x0030' is redundant or the array 'reg_classes[5]' is accessed at index 47, which is out of bounds. [arrayIndexOutOfBoundsCond] tccgen.c:2190:36: note: Assuming that condition 'vtop->r2<0x0030' is not redundant tccgen.c:2190:63: note: Array index out of bounds tests/tests2/114_bound_signal.c:54:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] tests/tests2/114_bound_signal.c:97:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SIG_SETMASK [valueFlowBailoutIncompleteVar] tests/tests2/114_bound_signal.c:103:9: style: Statements following noreturn function 'siglongjmp()' will never be executed. [unreachableCode] tests/tests2/114_bound_signal.c:41:18: style: Parameter 'unused' can be declared as pointer to const. However it seems that 'high_load' is a callback function, if 'unused' is declared with const you might also need to cast function pointer(s). [constParameterCallback] tests/tests2/114_bound_signal.c:82:32: note: You might need to cast the function pointer here tests/tests2/114_bound_signal.c:41:18: note: Parameter 'unused' can be declared as pointer to const tests/tests2/114_bound_signal.c:68:9: style: Unused variable: i [unusedVariable] tccgen.c:3452:34: style: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition] tests/tests2/115_bound_setjmp.c:19:13: style: Local variable 'jmp' shadows outer variable [shadowVariable] tests/tests2/115_bound_setjmp.c:9:16: note: Shadowed declaration tests/tests2/115_bound_setjmp.c:19:13: note: Shadow variable tests/tests2/115_bound_setjmp.c:34:13: style: Local variable 'jmp' shadows outer variable [shadowVariable] tests/tests2/115_bound_setjmp.c:9:16: note: Shadowed declaration tests/tests2/115_bound_setjmp.c:34:13: note: Shadow variable tests/tests2/117_gcc_test.c:5:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable a [valueFlowBailoutIncompleteVar] tests/tests2/117_gcc_test.c:29:48: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PROT_READ [valueFlowBailoutIncompleteVar] tests/tests2/117_gcc_test.c:129:13: style: Condition 'tst()>0' is always false [knownConditionTrueFalse] tests/tests2/117_gcc_test.c:122:16: note: Assignment 'value=3', assigned value is 3 tests/tests2/117_gcc_test.c:129:10: note: Calling function 'tst' returns -3 tests/tests2/117_gcc_test.c:129:13: note: Condition 'tst()>0' is always false tests/tests2/117_gcc_test.c:139:11: style: Condition 'j.f!=i.f' is always false [knownConditionTrueFalse] tests/tests2/117_gcc_test.c:138:18: note: Assignment 'j.f=5', assigned value is 5 tests/tests2/117_gcc_test.c:139:11: note: Condition 'j.f!=i.f' is always false tests/tests2/117_gcc_test.c:12:11: style: Same expression in both branches of ternary operator. [duplicateExpressionTernary] tests/tests2/117_gcc_test.c:7:1: style: Label 'a' is not used. [unusedLabel] tests/tests2/117_gcc_test.c:17:7: style: Local variable 'i' shadows outer variable [shadowVariable] tests/tests2/117_gcc_test.c:133:34: note: Shadowed declaration tests/tests2/117_gcc_test.c:17:7: note: Shadow variable tests/tests2/117_gcc_test.c:12:5: warning: Redundant code: Found unused result of ternary operator. [constStatement] tests/tests2/117_gcc_test.c:29:9: style: Variable 'addr' can be declared as pointer to const [constVariablePointer] tests/tests2/117_gcc_test.c:20:9: error: Shifting 32-bit value by 32 bits is undefined behaviour [shiftTooManyBits] tests/tests2/117_gcc_test.c:21:9: error: Shifting 64-bit value by 64 bits is undefined behaviour [shiftTooManyBits] tests/tests2/117_gcc_test.c:20:9: error: Signed integer overflow for expression 'i<<32'. [integerOverflow] tests/tests2/117_gcc_test.c:17:11: note: Assignment 'i=1', assigned value is 1 tests/tests2/117_gcc_test.c:20:9: note: Integer overflow tests/tests2/117_gcc_test.c:45:10: error: Uninitialized variable: ret [uninitvar] tests/tests2/117_gcc_test.c:20:5: style: Variable 'i' is assigned a value that is never used. [unreadVariable] tests/tests2/117_gcc_test.c:21:5: style: Variable 'l' is assigned a value that is never used. [unreadVariable] tests/tests2/11_precedence.c:24:21: style: Redundant condition: e. 'e || (e && f)' is equivalent to 'e' [redundantCondition] tests/tests2/11_precedence.c:28:26: warning: Result of operator '|' is always true if one operand is non-zero. Did you intend to use '&'? [badBitmaskCheck] tests/tests2/11_precedence.c:30:33: style: Condition 'a==b' is always false [knownConditionTrueFalse] tests/tests2/11_precedence.c:15:8: note: Assignment 'a=12', assigned value is 12 tests/tests2/11_precedence.c:30:33: note: Condition 'a==b' is always false tests/tests2/11_precedence.c:31:33: style: Condition 'a!=b' is always true [knownConditionTrueFalse] tests/tests2/11_precedence.c:15:8: note: Assignment 'a=12', assigned value is 12 tests/tests2/11_precedence.c:31:33: note: Condition 'a!=b' is always true tests/tests2/11_precedence.c:32:21: style: Condition 'a!=b' is always true [knownConditionTrueFalse] tests/tests2/11_precedence.c:15:8: note: Assignment 'a=12', assigned value is 12 tests/tests2/11_precedence.c:32:21: note: Condition 'a!=b' is always true tests/tests2/11_precedence.c:32:31: style: Condition 'c!=d' is always true [knownConditionTrueFalse] tests/tests2/11_precedence.c:17:8: note: Assignment 'c=56', assigned value is 56 tests/tests2/11_precedence.c:32:31: note: Condition 'c!=d' is always true tests/tests2/11_precedence.c:25:26: style: Same expression on both sides of '&&'. [duplicateExpression] tests/tests2/11_precedence.c:26:21: style: Same expression on both sides of '&&'. [duplicateExpression] tests/tests2/11_precedence.c:28:26: style: Same expression on both sides of '|'. [duplicateExpression] tests/tests2/11_precedence.c:30:25: style: Same expression on both sides of '=='. [duplicateExpression] tests/tests2/11_precedence.c:31:25: style: Same expression on both sides of '!='. [duplicateExpression] tests/tests2/11_precedence.c:24:21: style: Argument 'e||e&&f' to function printf is always 0. It does not matter what value 'f' has. [knownArgument] tests/tests2/11_precedence.c:19:8: note: Assignment 'e=0', assigned value is 0 tests/tests2/11_precedence.c:24:21: note: Argument 'e||e&&f' to function printf is always 0. It does not matter what value 'f' has. tests/tests2/11_precedence.c:26:26: style: Argument 'e&&e||f' to function printf is always 1. It does not matter what value 'e' has. [knownArgument] tests/tests2/11_precedence.c:20:8: note: Assignment 'f=1', assigned value is 1 tests/tests2/11_precedence.c:26:26: note: Argument 'e&&e||f' to function printf is always 1. It does not matter what value 'e' has. tests/tests2/11_precedence.c:27:26: style: Argument 'e&&f||f' to function printf is always 1. It does not matter what value 'f' has. [knownArgument] tests/tests2/11_precedence.c:20:8: note: Assignment 'f=1', assigned value is 1 tests/tests2/11_precedence.c:27:26: note: Argument 'e&&f||f' to function printf is always 1. It does not matter what value 'f' has. tests/tests2/11_precedence.c:12:8: style: Unused variable: x [unusedVariable] tccgen.c:2691:24: style: Condition 'l1==-1' is always false [knownConditionTrueFalse] tccgen.c:2697:33: style: Condition 'l2==-1' is always false [knownConditionTrueFalse] tccgen.c:2711:33: style: Condition 'l2==-1' is always false [knownConditionTrueFalse] tccgen.c:4641:24: style: Condition 'll==(int)ll' is always true [knownConditionTrueFalse] tccgen.c:4640:20: note: ll is assigned 'ss->enum_val' here. tccgen.c:4641:24: note: Condition 'll==(int)ll' is always true tccgen.c:6619:32: style: Condition '(unsigned int)c!=wc' is always true [knownConditionTrueFalse] tests/tests2/14_if.c:7:8: style: Condition 'a' is always true [knownConditionTrueFalse] tests/tests2/14_if.c:5:12: note: Assignment 'a=1', assigned value is 1 tests/tests2/14_if.c:7:8: note: Condition 'a' is always true tests/tests2/14_if.c:13:8: style: Condition 'b' is always false [knownConditionTrueFalse] tests/tests2/14_if.c:12:12: note: Assignment 'b=0', assigned value is 0 tests/tests2/14_if.c:13:8: note: Condition 'b' is always false tests/tests2/17_enum.c:45:49: style: Parameter 'p' can be declared as pointer to const [constParameterPointer] tests/tests2/17_enum.c:24:11: style: struct member 'Sforward_use::fmember' is never used. [unusedStructMember] tests/tests2/19_pointer_arithmetic.c:15:10: style: Condition 'b==NULL' is always false [knownConditionTrueFalse] tests/tests2/19_pointer_arithmetic.c:20:10: style: Condition 'c==NULL' is always true [knownConditionTrueFalse] tests/tests2/19_pointer_arithmetic.c:11:8: note: Assignment 'c=NULL', assigned value is 0 tests/tests2/19_pointer_arithmetic.c:20:10: note: Condition 'c==NULL' is always true tests/tests2/19_pointer_arithmetic.c:6:9: style: Variable 'b' can be declared as pointer to const [constVariablePointer] tests/tests2/19_pointer_arithmetic.c:7:9: style: Variable 'c' can be declared as pointer to const [constVariablePointer] tests/tests2/20_pointer_comparison.c:18:21: style: Condition 'd==e' is always true [knownConditionTrueFalse] tests/tests2/20_pointer_comparison.c:17:6: note: d is assigned 'e' here. tests/tests2/20_pointer_comparison.c:18:21: note: Condition 'd==e' is always true tests/tests2/20_pointer_comparison.c:19:21: style: Condition 'd!=e' is always false [knownConditionTrueFalse] tests/tests2/20_pointer_comparison.c:17:6: note: d is assigned 'e' here. tests/tests2/20_pointer_comparison.c:19:21: note: Condition 'd!=e' is always false tests/tests2/20_pointer_comparison.c:7:9: style: Variable 'd' can be declared as pointer to const [constVariablePointer] tests/tests2/21_char_array.c:21:10: style: Variable 'src' can be declared as pointer to const [constVariablePointer] tests/tests2/21_char_array.c:6:11: style: Variable 'y' is assigned a value that is never used. [unreadVariable] tests/tests2/21_char_array.c:13:6: style: Variable 'c' is assigned a value that is never used. [unreadVariable] tests/tests2/22_floating_point.c:31:40: style: Same expression on both sides of '<'. [duplicateExpression] tests/tests2/22_floating_point.c:31:55: style: Same expression on both sides of '<='. [duplicateExpression] tests/tests2/22_floating_point.c:31:87: style: Same expression on both sides of '>='. [duplicateExpression] tests/tests2/22_floating_point.c:31:103: style: Same expression on both sides of '>'. [duplicateExpression] tests/tests2/27_sizeof.c:9:4: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/27_sizeof.c:10:4: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/27_sizeof.c:11:4: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/27_sizeof.c:13:4: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/27_sizeof.c:13:26: warning: Found calculation inside sizeof(). [sizeofCalculation] tests/tests2/28_strings.c:18:4: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/30_hanoi.c:88:8: style: Unused variable: i [unusedVariable] tccgen.c:2596:37: error: Division by zero. [zerodiv] tccgen.c:613:28: style: Local variable 'next' shadows outer function [shadowFunction] tcc.h:1367:14: note: Shadowed declaration tccgen.c:613:28: note: Shadow variable tccgen.c:2033:12: style: Local variable 'o' shadows outer function [shadowFunction] tcc.h:1612:14: note: Shadowed declaration tccgen.c:2033:12: note: Shadow variable tccgen.c:2066:18: style: Local variable 'o' shadows outer function [shadowFunction] tcc.h:1612:14: note: Shadowed declaration tccgen.c:2066:18: note: Shadow variable tccgen.c:4673:9: style: Local variable 'v' shadows outer variable [shadowVariable] tccgen.c:4549:9: note: Shadowed declaration tccgen.c:4673:9: note: Shadow variable tccgen.c:4786:51: style: Local variable 'g' shadows outer function [shadowFunction] tcc.h:1645:14: note: Shadowed declaration tccgen.c:4786:51: note: Shadow variable tests/tests2/33_ternary_op.c:20:46: error: AST broken: '(' has improper operand. [internalAstError] tccgen.c:4833:19: style: Local variable 'n' shadows outer variable [shadowVariable] tccgen.c:4786:54: note: Shadowed declaration tccgen.c:4833:19: note: Shadow variable tccgen.c:6426:45: style: Local variable 'g' shadows outer function [shadowFunction] tcc.h:1645:14: note: Shadowed declaration tccgen.c:6426:45: note: Shadow variable tccgen.c:6821:10: style: Local variable 'g' shadows outer function [shadowFunction] tcc.h:1645:14: note: Shadowed declaration tccgen.c:6821:10: note: Shadow variable tccgen.c:6938:18: style: Local variable 'o' shadows outer function [shadowFunction] tcc.h:1612:14: note: Shadowed declaration tccgen.c:6938:18: note: Shadow variable tccgen.c:8068:27: style: Local variable 'v' shadows outer argument [shadowArgument] tccgen.c:7874:54: note: Shadowed declaration tccgen.c:8068:27: note: Shadow variable tccgen.c:8281:7: style: Local variable 'v' shadows outer variable [shadowVariable] tccgen.c:8223:9: note: Shadowed declaration tccgen.c:8281:7: note: Shadow variable tccgen.c:555:14: style: Variable 'e' can be declared as pointer to const [constVariablePointer] tccgen.c:634:70: style: Parameter 'e' can be declared as pointer to const [constParameterPointer] tccgen.c:695:19: style: Variable 'f' can be declared as pointer to const [constVariablePointer] tccgen.c:769:36: style: Parameter 's1' can be declared as pointer to const [constParameterPointer] tccgen.c:834:29: style: Parameter 's' can be declared as pointer to const [constParameterPointer] tccgen.c:1193:26: style: Parameter 'type' can be declared as pointer to const [constParameterPointer] tccgen.c:1193:47: style: Parameter 'vc' can be declared as pointer to const [constParameterPointer] tccgen.c:1285:29: style: Parameter 'v' can be declared as pointer to const [constParameterPointer] tccgen.c:1471:63: style: Parameter 'sa1' can be declared as pointer to const [constParameterPointer] tccgen.c:1490:66: style: Parameter 'fa1' can be declared as pointer to const [constParameterPointer] tccgen.c:1603:27: style: Parameter 's0' can be declared as pointer to const [constParameterPointer] tccgen.c:1667:17: style: Variable 'p1' can be declared as pointer to const [constVariablePointer] tccgen.c:1683:17: style: Variable 'p1' can be declared as pointer to const [constVariablePointer] tccgen.c:5335:47: style: Parameter 'arg' can be declared as pointer to const [constParameterPointer] tccgen.c:6723:20: style: Variable 'p' can be declared as pointer to const [constVariablePointer] tccgen.c:6780:41: style: Parameter 'stop' can be declared as pointer to const [constParameterPointer] tccgen.c:6853:37: style: Parameter 'o' can be declared as pointer to const [constParameterPointer] tccgen.c:7330:32: style: Parameter 'sec' can be declared as pointer to const [constParameterPointer] tccgen.c:7361:10: style: Variable 's' can be declared as pointer to const [constVariablePointer] tccgen.c:7532:14: style: Variable 'esym' can be declared as pointer to const [constVariablePointer] tests/tests2/34_array_assignment.c:14:8: style: Variable 'b' can be declared as const array [constVariable] tests/tests2/34_array_assignment.c:18:28: error: Uninitialized variable: b [uninitvar] tests/tests2/35_sizeof.c:8:4: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/35_sizeof.c:8:4: portability: %d in format string (no. 2) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/35_sizeof.c:9:4: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/35_sizeof.c:9:4: portability: %d in format string (no. 2) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/36_array_initialisers.c:7:8: style: Variable 'Array' can be declared as const array [constVariable] tests/tests2/36_array_initialisers.c:12:8: style: Variable 'Array2' can be declared as const array [constVariable] tccgen.c:5844:21: style: double result is assigned to long double variable. If the variable is long double to avoid loss of information, then you have loss of information. [truncLongCastAssignment] tests/tests2/39_typedef.c:63:31: error: syntax error [syntaxError] tests/tests2/40_stdio.c:22:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] tests/tests2/42_function_pointer.c:17:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] tccgen.c:2535:11: style: Variable 't' is assigned a value that is never used. [unreadVariable] tests/tests2/44_scoped_declarations.c:9:13: style: Variable 'b' is assigned a value that is never used. [unreadVariable] tccgen.c:5878:12: style: Variable 'learn' is assigned a value that is never used. [unreadVariable] tests/tests2/46_grep.c:115:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] tests/tests2/46_grep.c:130:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] tests/tests2/46_grep.c:306:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] tests/tests2/46_grep.c:479:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] tests/tests2/46_grep.c:553:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] tests/tests2/48_nested_break.c:14:7: style:inconclusive: Statements following 'break' will never be executed. [unreachableCode] tests/tests2/51_static.c:8:15: style: Local variable 'fred' shadows outer variable [shadowVariable] tests/tests2/51_static.c:3:12: note: Shadowed declaration tests/tests2/51_static.c:8:15: note: Shadow variable tests/tests2/52_unnamed_enum.c:11:14: style: Unused variable: d [unusedVariable] tests/tests2/54_goto.c:7:4: style: Statements following 'goto' will never be executed. [unreachableCode] tests/tests2/54_goto.c:22:7: style: Statements following 'goto' will never be executed. [unreachableCode] tests/tests2/54_goto.c:37:4: style:inconclusive: Statements following 'goto' will never be executed. [unreachableCode] tests/tests2/54_goto.c:14:8: style: Variable 'b' is assigned a value that is never used. [unreadVariable] tests/tests2/54_goto.c:32:8: style: Unused variable: a [unusedVariable] tests/tests2/46_grep.c:307:4: portability: %ld in format string (no. 1) requires 'long' but the argument type is 'ptrdiff_t {aka signed int}'. [invalidPrintfArgType_sint] tests/tests2/46_grep.c:375:10: portability: %ld in format string (no. 1) requires 'long' but the argument type is 'ptrdiff_t {aka signed int}'. [invalidPrintfArgType_sint] tests/tests2/46_grep.c:107:17: style: Parameter 's' can be declared as pointer to const [constParameterPointer] tests/tests2/46_grep.c:113:17: style: Parameter 's' can be declared as pointer to const [constParameterPointer] tests/tests2/46_grep.c:128:18: style: Parameter 's' can be declared as pointer to const [constParameterPointer] tests/tests2/46_grep.c:301:19: style: Parameter 'message' can be declared as pointer to const [constParameterPointer] tests/tests2/46_grep.c:301:34: style: Parameter 'source' can be declared as pointer to const [constParameterPointer] tests/tests2/46_grep.c:301:48: style: Parameter 'stop' can be declared as pointer to const [constParameterPointer] tests/tests2/46_grep.c:477:18: style: Parameter 's' can be declared as pointer to const [constParameterPointer] tests/tests2/61_integers.c:9:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:10:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:11:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:12:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:13:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:14:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:15:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:16:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:17:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:18:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:19:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:20:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:24:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:25:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:26:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:27:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:28:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:29:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:30:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:31:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:32:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:33:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:34:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:35:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:39:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:40:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:41:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:42:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:43:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:44:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:45:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:46:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:47:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:48:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:49:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:50:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:54:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:55:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:56:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:57:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:58:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:59:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:60:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:61:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:62:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:63:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:64:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:65:5: warning: %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'. [invalidPrintfArgType_uint] tests/tests2/61_integers.c:36:54: warning: Expression '-2' has a negative value. That is converted to an unsigned value and used in an unsigned calculation. [signConversion] tests/tests2/61_integers.c:37:55: warning: Expression '-2' has a negative value. That is converted to an unsigned value and used in an unsigned calculation. [signConversion] tests/tests2/61_integers.c:66:59: warning: Expression '-2' has a negative value. That is converted to an unsigned value and used in an unsigned calculation. [signConversion] tests/tests2/61_integers.c:67:60: warning: Expression '-2' has a negative value. That is converted to an unsigned value and used in an unsigned calculation. [signConversion] tests/tests2/67_macro_concat.c:4:0: error: failed to expand 'Q', Invalid ## usage when expanding 'Q': Combining '+' and 'B' yields an invalid token. [preprocessorErrorDirective] tests/tests2/70_floating_point_literals.c:8:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable 0.123e [valueFlowBailoutIncompleteVar] tests/tests2/72_long_long_constant.c:7:13: style: Condition 'res<-2147483648LL' is always false [knownConditionTrueFalse] tests/tests2/72_long_long_constant.c:5:25: note: Assignment 'res=0', assigned value is 0 tests/tests2/72_long_long_constant.c:7:13: note: Condition 'res<-2147483648LL' is always false tests/tests2/72_long_long_constant.c:12:22: style: Condition '2147483647LL=0' is always true [knownConditionTrueFalse] tests/tests2/87_dead_code.c:76:7: note: Assignment 'i=1', assigned value is 1 tests/tests2/87_dead_code.c:84:9: note: Condition 'i>=0' is always true tests/tests2/87_dead_code.c:100:13: style: Condition 'j>=0' is always true [knownConditionTrueFalse] tests/tests2/87_dead_code.c:92:15: note: Assignment 'j=1', assigned value is 1 tests/tests2/87_dead_code.c:100:13: note: Condition 'j>=0' is always true tests/tests2/87_dead_code.c:113:9: style: Condition 'i>0' is always true [knownConditionTrueFalse] tests/tests2/87_dead_code.c:105:7: note: Assignment 'i=1', assigned value is 1 tests/tests2/87_dead_code.c:113:9: note: Condition 'i>0' is always true tests/tests2/87_dead_code.c:124:9: style: Condition 'i>0' is always true [knownConditionTrueFalse] tests/tests2/87_dead_code.c:116:7: note: Assignment 'i=1', assigned value is 1 tests/tests2/87_dead_code.c:124:9: note: Condition 'i>0' is always true tests/tests2/87_dead_code.c:16:8: warning: %ld in format string (no. 1) requires 'long' but the argument type is 'unsigned long'. [invalidPrintfArgType_sint] tests/tests2/87_dead_code.c:105:5: style: Variable 'i' is reassigned a value before the old one has been used. [redundantAssignment] tests/tests2/87_dead_code.c:101:0: note: i is assigned tests/tests2/87_dead_code.c:105:5: note: i is overwritten tests/tests2/88_codeopt.c:42:5: warning: Unused variable value '__ret' [constStatement] tests/tests2/88_codeopt.c:59:9: style: Variable 'r' can be declared as pointer to const [constVariablePointer] tests/tests2/88_codeopt.c:40:13: style: Variable 'x' is assigned a value that is never used. [unreadVariable] tests/tests2/88_codeopt.c:53:9: style: Variable 'ret' is assigned a value that is never used. [unreadVariable] tests/tests2/89_nocode_wanted.c:7:13: warning: %ld in format string (no. 1) requires 'long' but the argument type is 'unsigned long'. [invalidPrintfArgType_sint] tests/tests2/89_nocode_wanted.c:21:13: warning: %ld in format string (no. 1) requires 'long' but the argument type is 'unsigned long'. [invalidPrintfArgType_sint] tests/tests2/89_nocode_wanted.c:35:13: warning: %ld in format string (no. 1) requires 'long' but the argument type is 'unsigned long'. [invalidPrintfArgType_sint] tests/tests2/89_nocode_wanted.c:50:13: warning: %ld in format string (no. 1) requires 'long' but the argument type is 'unsigned long'. [invalidPrintfArgType_sint] tests/tests2/89_nocode_wanted.c:65:13: warning: %ld in format string (no. 1) requires 'long' but the argument type is 'unsigned long'. [invalidPrintfArgType_sint] tests/tests2/89_nocode_wanted.c:82:13: warning: %ld in format string (no. 1) requires 'long' but the argument type is 'unsigned long'. [invalidPrintfArgType_sint] tests/tests2/89_nocode_wanted.c:71:19: style: Variable 'i' is assigned a value that is never used. [unreadVariable] tests/tests2/90_struct-init.c:210:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable inc_global [valueFlowBailoutIncompleteVar] tests/tests2/90_struct-init.c:263:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable j [valueFlowBailoutIncompleteVar] tests/tests2/92_enum_bitfield.c:13:20: style: struct member 'tree_common::chain' is never used. [unusedStructMember] tests/tests2/92_enum_bitfield.c:14:20: style: struct member 'tree_common::type' is never used. [unusedStructMember] tests/tests2/92_enum_bitfield.c:16:12: style: struct member 'tree_common::side_effects_flag' is never used. [unusedStructMember] tests/tests2/93_integer_promotion.c:16:5: style: Checking if unsigned expression 's.ub-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:17:5: style: Checking if unsigned expression 's.u-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:18:5: style: Checking if unsigned expression 's.ullb-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:19:5: style: Checking if unsigned expression 's.ull-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:23:5: style: Checking if unsigned expression '(1?s.ub:1)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:24:5: style: Checking if unsigned expression '(1?s.u:1)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:25:5: style: Checking if unsigned expression '(1?s.ullb:1)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:26:5: style: Checking if unsigned expression '(1?s.ull:1)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:30:5: style: Checking if unsigned expression '(s.ub<<1)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:31:5: style: Checking if unsigned expression '(s.u<<1)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:32:5: style: Checking if unsigned expression '(s.ullb<<1)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:33:5: style: Checking if unsigned expression '(s.ull<<1)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:37:5: style: Checking if unsigned expression 's.ub-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:38:5: style: Checking if unsigned expression 's.u-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:39:5: style: Checking if unsigned expression 's.ullb-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:40:5: style: Checking if unsigned expression 's.ull-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:44:5: style: Checking if unsigned expression '(-s.ub)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:45:5: style: Checking if unsigned expression '(-s.u)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:46:5: style: Checking if unsigned expression '(-s.ullb)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:47:5: style: Checking if unsigned expression '(-s.ull)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:51:5: style: Checking if unsigned expression '(~s.ub)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:52:5: style: Checking if unsigned expression '(~s.u)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:53:5: style: Checking if unsigned expression '(~s.ullb)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:54:5: style: Checking if unsigned expression '(~s.ull)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:65:5: style: Checking if unsigned expression '((unsigned int)s.ub)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:66:5: style: Checking if unsigned expression '(-(unsigned int)s.ub)-100' is less than zero. [unsignedLessThanZero] tests/tests2/93_integer_promotion.c:67:5: style: Checking if unsigned expression '(~(unsigned int)s.ub)-100' is less than zero. [unsignedLessThanZero] tests/tests2/90_struct-init.c:180:19: style: Label 'a' is not used. [unusedLabel] tests/tests2/90_struct-init.c:171:24: style: Local variable 'phdr' shadows outer variable [shadowVariable] tests/tests2/90_struct-init.c:118:15: note: Shadowed declaration tests/tests2/90_struct-init.c:171:24: note: Shadow variable tests/tests2/90_struct-init.c:247:35: style: Parameter 'x' can be declared as pointer to const [constParameterPointer] tests/tests2/90_struct-init.c:110:7: style: struct member 'in6_addr::u' is never used. [unusedStructMember] tests/tests2/90_struct-init.c:108:5: style: union member 'Anonymous0::u6_addr8' is never used. [unusedStructMember] tests/tests2/90_struct-init.c:109:17: style: union member 'Anonymous0::u6_addr16' is never used. [unusedStructMember] tests/tests2/90_struct-init.c:242:32: style: struct member 'SEB::r' is never used. [unusedStructMember] tests/tests2/90_struct-init.c:243:32: style: struct member 'SEC::r' is never used. [unusedStructMember] tests/tests2/90_struct-init.c:244:32: style: struct member 'SED::r' is never used. [unusedStructMember] tests/tests2/94_generic.c:69:20: error: AST broken: '(' has improper operand. [internalAstError] tests/tests2/95_bitfields.c:27:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __s [valueFlowBailoutIncompleteVar] tests/tests2/95_bitfields.c:12:5: portability: %d in format string (no. 2) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/95_bitfields.c:27:5: portability: %d in format string (no. 2) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/95_bitfields.c:37:5: portability: %d in format string (no. 2) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/95_bitfields.c:52:5: portability: %d in format string (no. 2) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/95_bitfields.c:65:5: portability: %d in format string (no. 2) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/95_bitfields.c:77:5: portability: %d in format string (no. 2) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/95_bitfields.c:98:5: portability: %d in format string (no. 2) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] tests/tests2/95_bitfields.c:188:17: style: Parameter 'p' can be declared as pointer to const [constParameterPointer] tests/tests2/95_bitfields.c:12:5: warning:inconclusive: Found calculation inside sizeof(). [sizeofCalculation] tests/tests2/95_bitfields.c:27:5: warning:inconclusive: Found calculation inside sizeof(). [sizeofCalculation] tests/tests2/95_bitfields.c:37:5: warning:inconclusive: Found calculation inside sizeof(). [sizeofCalculation] tests/tests2/95_bitfields.c:52:5: warning:inconclusive: Found calculation inside sizeof(). [sizeofCalculation] tests/tests2/95_bitfields.c:65:5: warning:inconclusive: Found calculation inside sizeof(). [sizeofCalculation] tests/tests2/95_bitfields.c:77:5: warning:inconclusive: Found calculation inside sizeof(). [sizeofCalculation] tests/tests2/95_bitfields.c:98:5: warning:inconclusive: Found calculation inside sizeof(). [sizeofCalculation] tests/tests2/95_bitfields.c:65:5: style: int result is assigned to long variable. If the variable is long to avoid loss of information, then you have loss of information. [truncLongCastAssignment] tests/tests2/98_al_ax_extend.c:25:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _us [valueFlowBailoutIncompleteVar] tests/vla_test.c:80:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] tests/tests2/99_fastcall.c:176:5: style: Variable '_trap_handler' is reassigned a value before the old one has been used. [redundantAssignment] tests/tests2/99_fastcall.c:173:5: note: _trap_handler is assigned tests/tests2/99_fastcall.c:176:5: note: _trap_handler is overwritten tests/tests2/99_fastcall.c:179:5: style: Variable '_trap_handler' is reassigned a value before the old one has been used. [redundantAssignment] tests/tests2/99_fastcall.c:176:5: note: _trap_handler is assigned tests/tests2/99_fastcall.c:179:5: note: _trap_handler is overwritten tests/tests2/99_fastcall.c:182:5: style: Variable '_trap_handler' is reassigned a value before the old one has been used. [redundantAssignment] tests/tests2/99_fastcall.c:179:5: note: _trap_handler is assigned tests/tests2/99_fastcall.c:182:5: note: _trap_handler is overwritten tests/tests2/99_fastcall.c:185:5: style: Variable '_trap_handler' is reassigned a value before the old one has been used. [redundantAssignment] tests/tests2/99_fastcall.c:182:5: note: _trap_handler is assigned tests/tests2/99_fastcall.c:185:5: note: _trap_handler is overwritten tests/tests2/99_fastcall.c:188:5: style: Variable '_trap_handler' is reassigned a value before the old one has been used. [redundantAssignment] tests/tests2/99_fastcall.c:185:5: note: _trap_handler is assigned tests/tests2/99_fastcall.c:188:5: note: _trap_handler is overwritten tests/tests2/99_fastcall.c:43:14: style: struct member 'trapframe::edi' is never used. [unusedStructMember] tests/tests2/99_fastcall.c:43:19: style: struct member 'trapframe::esi' is never used. [unusedStructMember] tests/tests2/99_fastcall.c:43:24: style: struct member 'trapframe::ebp' is never used. [unusedStructMember] tests/tests2/99_fastcall.c:43:34: style: struct member 'trapframe::ebx' is never used. [unusedStructMember] tests/tests2/99_fastcall.c:43:49: style: struct member 'trapframe::eax' is never used. [unusedStructMember] tests/vla_test.c:58:8: style: Local variable 'test2' shadows outer function [shadowFunction] tests/vla_test.c:32:5: note: Shadowed declaration tests/vla_test.c:58:8: note: Shadow variable tests/vla_test.c:60:15: error: Subtracting pointers that point to different objects [subtractPointers] tests/vla_test.c:53:8: note: Variable declared here. tests/vla_test.c:60:11: note: Array decayed to pointer here. tests/vla_test.c:58:8: note: Variable declared here. tests/vla_test.c:60:16: note: Array decayed to pointer here. tests/vla_test.c:60:15: note: Subtracting pointers that point to different objects win32/examples/dll.c:12:44: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MB_ICONINFORMATION [valueFlowBailoutIncompleteVar] win32/examples/fib.c:6:6: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable n [valueFlowBailoutIncompleteVar] win32/examples/hello_win.c:46:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VK_ESCAPE [valueFlowBailoutIncompleteVar] win32/lib/crt1.c:70:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __argc [valueFlowBailoutIncompleteVar] win32/examples/hello_win.c:101:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CS_DBLCLKS [valueFlowBailoutIncompleteVar] win32/lib/crt1.c:86:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __argc [valueFlowBailoutIncompleteVar] win32/examples/hello_win.c:159:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SWP_NOSIZE [valueFlowBailoutIncompleteVar] win32/examples/hello_win.c:139:24: style:inconclusive: Function 'CenterWindow' argument 1 names different: declaration 'hWnd' definition 'hwnd_self'. [funcArgNamesDifferent] win32/examples/hello_win.c:15:24: note: Function 'CenterWindow' argument 1 names different: declaration 'hWnd' definition 'hwnd_self'. win32/examples/hello_win.c:139:24: note: Function 'CenterWindow' argument 1 names different: declaration 'hWnd' definition 'hwnd_self'. win32/lib/crt1.c:32:22: style: struct member '_startupinfo::newmode' is never used. [unusedStructMember] win32/lib/crt1.c:79:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __argc [valueFlowBailoutIncompleteVar] win32/lib/dllcrt1.c:12:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable DLL_PROCESS_ATTACH [valueFlowBailoutIncompleteVar] win32/lib/dllmain.c:7:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] win32/lib/wincrt1.c:39:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable STARTF_USESHOWWINDOW [valueFlowBailoutIncompleteVar] win32/lib/wincrt1.c:70:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __argc [valueFlowBailoutIncompleteVar] win32/lib/wincrt1.c:83:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __argc [valueFlowBailoutIncompleteVar] win32/lib/wincrt1.c:78:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __argc [valueFlowBailoutIncompleteVar] win32/lib/wincrt1.c:26:22: style: struct member '_startupinfo::newmode' is never used. [unusedStructMember] x86_64-link.c:145:18: style: Variable 'p_end' can be declared as pointer to const [constVariablePointer] x86_64-link.c:167:39: style: Parameter 'rel' can be declared as pointer to const [constParameterPointer] x86_64-gen.c:320:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_MEM [valueFlowBailoutIncompleteVar] x86_64-gen.c:344:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_MEM [valueFlowBailoutIncompleteVar] x86_64-gen.c:374:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_MEM [valueFlowBailoutIncompleteVar] x86_64-gen.c:576:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_R11 [valueFlowBailoutIncompleteVar] x86_64-gen.c:644:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_R11 [valueFlowBailoutIncompleteVar] x86_64-gen.c:1378:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable RC_XMM0 [valueFlowBailoutIncompleteVar] x86_64-gen.c:1764:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable RC_RCX [valueFlowBailoutIncompleteVar] x86_64-gen.c:1843:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_RAX [valueFlowBailoutIncompleteVar] x86_64-gen.c:2180:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_RSP [valueFlowBailoutIncompleteVar] x86_64-gen.c:2185:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TREG_RSP [valueFlowBailoutIncompleteVar] x86_64-gen.c:325:20: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] x86_64-gen.c:328:16: style: Operator '|' with one operand equal to zero is redundant. [badBitmaskCheck] x86_64-gen.c:2206:9: style: Condition 'use_call' is always false [knownConditionTrueFalse] x86_64-gen.c:2198:20: note: Assignment 'use_call=0', assigned value is 0 x86_64-gen.c:2206:9: note: Condition 'use_call' is always false x86_64-gen.c:344:39: warning: Possible null pointer dereference: sym [nullPointer] x86_64-gen.c:2185:43: note: Calling function 'gen_modrm64', 4th argument 'NULL' value is 0 x86_64-gen.c:344:39: note: Null pointer dereference x86_64-gen.c:1511:9: style: Variable 'sym' is reassigned a value before the old one has been used. [redundantAssignment] x86_64-gen.c:1439:9: note: sym is assigned x86_64-gen.c:1511:9: note: sym is overwritten x86_64-gen.c:1791:15: style: Variable 'r' is reassigned a value before the old one has been used. [redundantAssignment] x86_64-gen.c:1783:11: note: r is assigned x86_64-gen.c:1791:15: note: r is overwritten x86_64-gen.c:189:9: portability: Shifting a negative value is technically undefined behaviour [shiftNegativeLHS] x86_64-gen.c:190:9: portability: Shifting a negative value is technically undefined behaviour [shiftNegativeLHS] x86_64-gen.c:191:9: portability: Shifting a negative value is technically undefined behaviour [shiftNegativeLHS] x86_64-gen.c:180:27: style:inconclusive: Function 'gen_le16' argument 1 names different: declaration 'c' definition 'v'. [funcArgNamesDifferent] tcc.h:1646:27: note: Function 'gen_le16' argument 1 names different: declaration 'c' definition 'v'. x86_64-gen.c:180:27: note: Function 'gen_le16' argument 1 names different: declaration 'c' definition 'v'. x86_64-gen.c:1201:66: style:inconclusive: Function 'gfunc_sret' argument 4 names different: declaration 'align' definition 'ret_align'. [funcArgNamesDifferent] tcc.h:1596:66: note: Function 'gfunc_sret' argument 4 names different: declaration 'align' definition 'ret_align'. x86_64-gen.c:1201:66: note: Function 'gfunc_sret' argument 4 names different: declaration 'align' definition 'ret_align'. x86_64-gen.c:1895:16: style: Variable 'ft' is assigned a value that is never used. [unreadVariable] x86_64-gen.c:1896:16: style: Variable 'fc' is assigned a value that is never used. [unreadVariable] tccgen.c:6099:31: style: Condition 'ret_nregs<=0' is always true [knownConditionTrueFalse] tccgen.c:6097:39: note: Calling function 'gfunc_sret' returns 0 tccgen.c:6097:39: note: Assignment 'ret_nregs=gfunc_sret(&s->type,variadic,&ret.type,&ret_align,®size)', assigned value is 0 tccgen.c:6099:31: note: Condition 'ret_nregs<=0' is always true tccgen.c:6118:35: style: Condition 'ret_nregs<0' is always false [knownConditionTrueFalse] tccgen.c:6097:39: note: Calling function 'gfunc_sret' returns 0 tccgen.c:6097:39: note: Assignment 'ret_nregs=gfunc_sret(&s->type,variadic,&ret.type,&ret_align,®size)', assigned value is 0 tccgen.c:6118:35: note: Condition 'ret_nregs<0' is always false tccgen.c:6635:23: style: Condition 'ret_nregs<0' is always false [knownConditionTrueFalse] tccgen.c:6633:31: note: Calling function 'gfunc_sret' returns 0 tccgen.c:6633:31: note: Assignment 'ret_nregs=gfunc_sret(func_type,func_var,&ret_type,&ret_align,®size)', assigned value is 0 tccgen.c:6635:23: note: Condition 'ret_nregs<0' is always false tccgen.c:6639:22: style: Condition '0==ret_nregs' is always true [knownConditionTrueFalse] tccgen.c:6633:31: note: Calling function 'gfunc_sret' returns 0 tccgen.c:6633:31: note: Assignment 'ret_nregs=gfunc_sret(func_type,func_var,&ret_type,&ret_align,®size)', assigned value is 0 tccgen.c:6639:22: note: Condition '0==ret_nregs' is always true libtcc.c:747:59: style:inconclusive: Function 'tcc_compile_string' argument 2 names different: declaration 'buf' definition 'str'. [funcArgNamesDifferent] libtcc.h:61:59: note: Function 'tcc_compile_string' argument 2 names different: declaration 'buf' definition 'str'. libtcc.c:747:59: note: Function 'tcc_compile_string' argument 2 names different: declaration 'buf' definition 'str'. libtcc.c:753:44: style:inconclusive: Function 'tcc_define_symbol' argument 1 names different: declaration 's' definition 's1'. [funcArgNamesDifferent] libtcc.h:49:44: note: Function 'tcc_define_symbol' argument 1 names different: declaration 's' definition 's1'. libtcc.c:753:44: note: Function 'tcc_define_symbol' argument 1 names different: declaration 's' definition 's1'. libtcc.c:764:46: style:inconclusive: Function 'tcc_undefine_symbol' argument 1 names different: declaration 's' definition 's1'. [funcArgNamesDifferent] libtcc.h:52:46: note: Function 'tcc_undefine_symbol' argument 1 names different: declaration 's' definition 's1'. libtcc.c:764:46: note: Function 'tcc_undefine_symbol' argument 1 names different: declaration 's' definition 's1'. libtcc.c:987:37: style:inconclusive: Function 'tcc_delete' argument 1 names different: declaration 's' definition 's1'. [funcArgNamesDifferent] libtcc.h:22:37: note: Function 'tcc_delete' argument 1 names different: declaration 's' definition 's1'. libtcc.c:987:37: note: Function 'tcc_delete' argument 1 names different: declaration 's' definition 's1'. libtcc.c:1250:35: style:inconclusive: Function 'tcc_add_crt' argument 1 names different: declaration 's' definition 's1'. [funcArgNamesDifferent] tcc.h:1284:35: note: Function 'tcc_add_crt' argument 1 names different: declaration 's' definition 's1'. libtcc.c:1250:35: note: Function 'tcc_add_crt' argument 1 names different: declaration 's' definition 's1'. libtcc.c:1282:44: style:inconclusive: Function 'tcc_add_library_err' argument 1 names different: declaration 's' definition 's1'. [funcArgNamesDifferent] tcc.h:1296:44: note: Function 'tcc_add_library_err' argument 1 names different: declaration 's' definition 's1'. libtcc.c:1282:44: note: Function 'tcc_add_library_err' argument 1 names different: declaration 's' definition 's1'. libtcc.c:1282:60: style:inconclusive: Function 'tcc_add_library_err' argument 2 names different: declaration 'f' definition 'libname'. [funcArgNamesDifferent] tcc.h:1296:59: note: Function 'tcc_add_library_err' argument 2 names different: declaration 'f' definition 'libname'. libtcc.c:1282:60: note: Function 'tcc_add_library_err' argument 2 names different: declaration 'f' definition 'libname'. libtcc.c:1298:40: style:inconclusive: Function 'tcc_add_symbol' argument 1 names different: declaration 's' definition 's1'. [funcArgNamesDifferent] libtcc.h:81:40: note: Function 'tcc_add_symbol' argument 1 names different: declaration 's' definition 's1'. libtcc.c:1298:40: note: Function 'tcc_add_symbol' argument 1 names different: declaration 's' definition 's1'. libtcc.c:1797:47: style:inconclusive: Function 'tcc_parse_args' argument 2 names different: declaration 'argc' definition 'pargc'. [funcArgNamesDifferent] tcc.h:1298:47: note: Function 'tcc_parse_args' argument 2 names different: declaration 'argc' definition 'pargc'. libtcc.c:1797:47: note: Function 'tcc_parse_args' argument 2 names different: declaration 'argc' definition 'pargc'. libtcc.c:1797:62: style:inconclusive: Function 'tcc_parse_args' argument 3 names different: declaration 'argv' definition 'pargv'. [funcArgNamesDifferent] tcc.h:1298:61: note: Function 'tcc_parse_args' argument 3 names different: declaration 'argv' definition 'pargv'. libtcc.c:1797:62: note: Function 'tcc_parse_args' argument 3 names different: declaration 'argv' definition 'pargv'. libtcc.c:2097:57: style:inconclusive: Function 'tcc_set_options' argument 2 names different: declaration 'str' definition 'r'. [funcArgNamesDifferent] libtcc.h:37:57: note: Function 'tcc_set_options' argument 2 names different: declaration 'str' definition 'r'. libtcc.c:2097:57: note: Function 'tcc_set_options' argument 2 names different: declaration 'str' definition 'r'. libtcc.c:2106:41: style:inconclusive: Function 'tcc_print_stats' argument 1 names different: declaration 's' definition 's1'. [funcArgNamesDifferent] tcc.h:1297:41: note: Function 'tcc_print_stats' argument 1 names different: declaration 's' definition 's1'. libtcc.c:2106:41: note: Function 'tcc_print_stats' argument 1 names different: declaration 's' definition 's1'. libtcc.c:216:11: style: Variable 'b' can be declared as pointer to const [constVariablePointer] libtcc.c:460:38: style: Parameter 's' can be declared as pointer to const [constParameterPointer] libtcc.c:602:53: style: Parameter 's' can be declared as pointer to const [constParameterPointer] libtcc.c:607:48: style: Parameter 's' can be declared as pointer to const [constParameterPointer] libtcc.c:675:32: style: Parameter 's1' can be declared as pointer to const [constParameterPointer] libtcc.c:181:12: warning: Uninitialized variable: buf [uninitvar] tccpp.c:1867:25: note: Calling function 'pstrcpy', 1st argument 'buf1' value is libtcc.c:170:18: note: Assuming condition is false libtcc.c:181:12: note: Uninitialized variable: buf libtcc.c:626:1: error: va_list 'ap' was opened but not closed by va_end(). [va_end_missing] tests/tests2/101_cleanup.c:131:9: style: Condition 'chk' is always false [knownConditionTrueFalse] tests/tests2/101_cleanup.c:129:15: note: Assignment 'chk=0', assigned value is 0 tests/tests2/101_cleanup.c:131:9: note: Condition 'chk' is always false tests/tests2/101_cleanup.c:140:9: style: Condition '!chk' is always true [knownConditionTrueFalse] tests/tests2/101_cleanup.c:129:15: note: Assignment 'chk=0', assigned value is 0 tests/tests2/101_cleanup.c:140:9: note: Condition '!chk' is always true tests/tests2/101_cleanup.c:144:13: style: Condition '!chk' is always true [knownConditionTrueFalse] tests/tests2/101_cleanup.c:129:15: note: Assignment 'chk=0', assigned value is 0 tests/tests2/101_cleanup.c:144:13: note: Condition '!chk' is always true tests/tests2/101_cleanup.c:47:2: style: Statements following 'goto' will never be executed. [unreachableCode] tests/tests2/101_cleanup.c:59:3: style: Statements following 'goto' will never be executed. [unreachableCode] tests/tests2/101_cleanup.c:169:9: style: 'continue' is redundant since it is the last statement in a loop. [redundantContinue] tests/tests2/101_cleanup.c:31:43: style: Local variable 'stop_that' shadows outer variable [shadowVariable] tests/tests2/101_cleanup.c:27:46: note: Shadowed declaration tests/tests2/101_cleanup.c:31:43: note: Shadow variable tests/tests2/101_cleanup.c:44:43: style: Local variable 'stop_that' shadows outer variable [shadowVariable] tests/tests2/101_cleanup.c:27:46: note: Shadowed declaration tests/tests2/101_cleanup.c:44:43: note: Shadow variable tests/tests2/101_cleanup.c:109:45: style: Local variable 'that' shadows outer variable [shadowVariable] tests/tests2/101_cleanup.c:107:43: note: Shadowed declaration tests/tests2/101_cleanup.c:109:45: note: Shadow variable tests/tests2/101_cleanup.c:112:45: style: Local variable 'that' shadows outer variable [shadowVariable] tests/tests2/101_cleanup.c:107:43: note: Shadowed declaration tests/tests2/101_cleanup.c:112:45: note: Shadow variable tests/tests2/101_cleanup.c:135:54: style: Local variable 'stop_that' shadows outer variable [shadowVariable] tests/tests2/101_cleanup.c:128:46: note: Shadowed declaration tests/tests2/101_cleanup.c:135:54: note: Shadow variable tests/tests2/101_cleanup.c:142:50: style: Local variable 'stop_that' shadows outer variable [shadowVariable] tests/tests2/101_cleanup.c:128:46: note: Shadowed declaration tests/tests2/101_cleanup.c:142:50: note: Shadow variable tests/tests2/101_cleanup.c:4:23: style: Parameter 'i' can be declared as pointer to const [constParameterPointer] tests/tests2/101_cleanup.c:27:46: style: Variable 'stop_that' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:31:43: style: Variable 'stop_that' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:44:43: style: Variable 'stop_that' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:52:43: style: Variable 'cascade1' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:54:47: style: Variable 'cascade2' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:56:44: style: Variable 'cascade3' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:94:29: style: Parameter 'that' can be declared as pointer to const [constParameterPointer] tests/tests2/101_cleanup.c:107:43: style: Variable 'that' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:109:45: style: Variable 'that' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:112:45: style: Variable 'that' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:121:50: style: Variable 'stop_that' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:128:46: style: Variable 'stop_that' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:135:54: style: Variable 'stop_that' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:142:50: style: Variable 'stop_that' can be declared as pointer to const [constVariablePointer] tests/tests2/101_cleanup.c:47:12: style: Variable 'stop_that' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:59:12: style: Variable 'cascade3' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:27:46: style: Variable 'stop_that' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:31:43: style: Variable 'stop_that' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:52:43: style: Variable 'cascade1' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:54:47: style: Variable 'cascade2' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:68:47: style: Variable 'out' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:107:48: style: Variable 'that' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:109:50: style: Variable 'that' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:112:50: style: Variable 'that' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:121:50: style: Variable 'stop_that' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:135:64: style: Variable 'stop_that' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:128:46: style: Variable 'stop_that' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:142:50: style: Variable 'stop_that' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:163:44: style: Variable 'j' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:174:44: style: Variable 'j' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:186:42: style: Variable 'jj' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:159:38: style: Variable 'l' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:168:43: style: Variable 'j' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:180:35: style: Variable 'j' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:201:54: style: Variable 'oh_i' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:201:63: style: Variable 'o' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:196:53: style: Variable 'not_i' is not assigned a value. [unassignedVariable] tests/tests2/101_cleanup.c:208:49: style: Variable 'oh_i' is assigned a value that is never used. [unreadVariable] tests/tests2/101_cleanup.c:209:50: style: Variable 'f' is assigned a value that is never used. [unreadVariable] diff: DONE