2025-07-08 22:26 ftp://ftp.de.debian.org/debian/pool/main/j/jansson/jansson_2.14.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --library=libcurl --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=normalCheckLevelConditionExpressions -D__GNUC__ --platform=unix64 -j6 platform: Linux-6.1.0-37-amd64-x86_64-with-glibc2.36 python: 3.11.2 client-version: 1.3.67 compiler: g++ (Debian 12.2.0-14+deb12u1) 12.2.0 cppcheck: head 2.17.0 head-info: 8f3d36a (2025-07-08 11:07:56 +0200) count: 177 176 elapsed-time: 0.8 0.8 head-timing-info: old-timing-info: head results: jansson-2.14/examples/simple_parse.c:119:32: error: There is an unknown macro here somewhere. Configuration is required. If JSON_INTEGER_FORMAT is a macro then please configure it. [unknownMacro] jansson-2.14/doc/github_commits.c:38:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/doc/github_commits.c:55:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CURL_GLOBAL_ALL [valueFlowBailoutIncompleteVar] jansson-2.14/doc/github_commits.c:117:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/doc/github_commits.c:34:36: style: Parameter 'ptr' can be declared as pointer to const. However it seems that 'write_response' is a callback function, if 'ptr' is declared with const you might also need to cast function pointer(s). [constParameterCallback] jansson-2.14/doc/github_commits.c:72:51: note: You might need to cast the function pointer here jansson-2.14/doc/github_commits.c:34:36: note: Parameter 'ptr' can be declared as pointer to const jansson-2.14/doc/github_commits.c:108:26: style: Parameter 'argv' can be declared as const array [constParameter] jansson-2.14/src/hashtable_seed.c:181:9: style: Condition '!done' is always true [knownConditionTrueFalse] jansson-2.14/src/hashtable_seed.c:169:16: note: Assignment 'done=0', assigned value is 0 jansson-2.14/src/hashtable_seed.c:181:9: note: Condition '!done' is always true jansson-2.14/src/hashtable_seed.c:47:37: style: Parameter 'data' can be declared as pointer to const [constParameterPointer] jansson-2.14/src/memory.c:39:45: style:inconclusive: Function 'jsonp_strndup' argument 2 names different: declaration 'length' definition 'len'. [funcArgNamesDifferent] jansson-2.14/src/jansson_private.h:87:45: note: Function 'jsonp_strndup' argument 2 names different: declaration 'length' definition 'len'. jansson-2.14/src/memory.c:39:45: note: Function 'jsonp_strndup' argument 2 names different: declaration 'length' definition 'len'. jansson-2.14/src/strconv.c:66:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] jansson-2.14/src/load.c:159:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] jansson-2.14/src/load.c:503:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] jansson-2.14/src/load.c:780:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable JSON_PARSER_MAX_DEPTH [valueFlowBailoutIncompleteVar] jansson-2.14/src/load.c:895:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] jansson-2.14/src/load.c:936:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] jansson-2.14/src/load.c:973:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] jansson-2.14/src/load.c:1000:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] jansson-2.14/src/load.c:1045:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] jansson-2.14/src/load.c:1073:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] jansson-2.14/src/hashtable.c:57:74: style: Parameter 'bucket' can be declared as pointer to const [constParameterPointer] jansson-2.14/src/hashtable.c:261:13: style: Variable 'pair' can be declared as pointer to const [constVariablePointer] jansson-2.14/src/hashtable.c:314:13: style: Variable 'list' can be declared as pointer to const [constVariablePointer] jansson-2.14/src/hashtable.c:321:13: style: Variable 'pair' can be declared as pointer to const [constVariablePointer] jansson-2.14/src/hashtable.c:326:13: style: Variable 'pair' can be declared as pointer to const [constVariablePointer] jansson-2.14/src/hashtable.c:331:13: style: Variable 'pair' can be declared as pointer to const [constVariablePointer] jansson-2.14/src/strconv.c:79:63: style:inconclusive: Function 'jsonp_dtostr' argument 4 names different: declaration 'prec' definition 'precision'. [funcArgNamesDifferent] jansson-2.14/src/jansson_private.h:82:63: note: Function 'jsonp_dtostr' argument 4 names different: declaration 'prec' definition 'precision'. jansson-2.14/src/strconv.c:79:63: note: Function 'jsonp_dtostr' argument 4 names different: declaration 'prec' definition 'precision'. jansson-2.14/src/strconv.c:58:31: style: Parameter 'strbuffer' can be declared as pointer to const [constParameterPointer] jansson-2.14/src/utf.c:44:14: style: Condition '0x80<=u' is always true [knownConditionTrueFalse] jansson-2.14/src/utf.c:41:11: note: Assuming that condition 'u<0x80' is not redundant jansson-2.14/src/utf.c:44:14: note: Condition '0x80<=u' is always true jansson-2.14/src/utf.c:124:15: style: Checking if unsigned expression 'count' is less than zero. [unsignedLessThanZero] jansson-2.14/src/utf.c:116:53: style:inconclusive: Function 'utf8_iterate' argument 2 names different: declaration 'size' definition 'bufsize'. [funcArgNamesDifferent] jansson-2.14/src/utf.h:24:53: note: Function 'utf8_iterate' argument 2 names different: declaration 'size' definition 'bufsize'. jansson-2.14/src/utf.c:116:53: note: Function 'utf8_iterate' argument 2 names different: declaration 'size' definition 'bufsize'. jansson-2.14/test/ossfuzz/json_load_dump_fuzzer.cc:39:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/ossfuzz/json_load_dump_fuzzer.cc:39:3: portability: %zd in format string (no. 1) requires 'ssize_t' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] jansson-2.14/test/ossfuzz/json_load_dump_fuzzer.cc:47:24: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] jansson-2.14/test/ossfuzz/json_load_dump_fuzzer.cc:64:24: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] jansson-2.14/test/bin/json_process.c:162:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/bin/json_process.c:260:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/bin/json_process.c:363:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/ossfuzz/standaloneengine.cc:56:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/ossfuzz/standaloneengine.cc:38:16: style: C-style pointer casting [cstyleCast] jansson-2.14/src/value.c:350:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ordered_list [valueFlowBailoutIncompleteVar] jansson-2.14/src/value.c:455:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable entries [valueFlowBailoutIncompleteVar] jansson-2.14/src/value.c:770:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable value [valueFlowBailoutIncompleteVar] jansson-2.14/src/value.c:777:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable length [valueFlowBailoutIncompleteVar] jansson-2.14/src/value.c:899:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable value [valueFlowBailoutIncompleteVar] jansson-2.14/src/value.c:906:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable value [valueFlowBailoutIncompleteVar] jansson-2.14/src/value.c:942:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable value [valueFlowBailoutIncompleteVar] jansson-2.14/src/value.c:949:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable value [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_array.c:20:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_array.c:126:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_array.c:207:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_array.c:269:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_array.c:306:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_array.c:347:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_array.c:393:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_array.c:404:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/bin/json_process.c:86:17: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] jansson-2.14/test/bin/json_process.c:86:54: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] jansson-2.14/test/bin/json_process.c:74:17: warning: If memory allocation fails, then there is a possible null pointer dereference: buf [nullPointerOutOfMemory] jansson-2.14/test/bin/json_process.c:73:17: note: Assuming allocation function fails jansson-2.14/test/bin/json_process.c:73:17: note: Assignment 'buf=malloc(fsize+1)', assigned value is 0 jansson-2.14/test/bin/json_process.c:74:17: note: Null pointer dereference jansson-2.14/test/bin/json_process.c:77:5: warning: If memory allocation fails, then there is a possible null pointer dereference: buf [nullPointerOutOfMemory] jansson-2.14/test/bin/json_process.c:73:17: note: Assuming allocation function fails jansson-2.14/test/bin/json_process.c:73:17: note: Assignment 'buf=malloc(fsize+1)', assigned value is 0 jansson-2.14/test/bin/json_process.c:75:13: note: Assuming condition is false jansson-2.14/test/bin/json_process.c:77:5: note: Null pointer dereference jansson-2.14/test/bin/json_process.c:151:20: style: Parameter 'test_path' can be declared as pointer to const [constParameterPointer] jansson-2.14/test/bin/json_process.c:231:11: style: Variable 'value' can be declared as pointer to const [constVariablePointer] jansson-2.14/test/suites/api/test_chaos.c:51:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable JSON_STRICT [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_chaos.c:101:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_copy.c:16:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_copy.c:95:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_copy.c:178:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_copy.c:205:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_copy.c:236:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_copy.c:282:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_copy.c:336:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/src/pack_unpack.c:331:11: style: Variable 'str' can be declared as pointer to const [constVariablePointer] jansson-2.14/src/pack_unpack.c:561:17: style: Variable 'value' can be declared as pointer to const [constVariablePointer] jansson-2.14/test/suites/api/test_copy.c:250:17: style: Variable 'value1' can be declared as pointer to const [constVariablePointer] jansson-2.14/test/suites/api/test_copy.c:250:26: style: Variable 'value2' can be declared as pointer to const [constVariablePointer] jansson-2.14/test/suites/api/test_copy.c:296:17: style: Variable 'value1' can be declared as pointer to const [constVariablePointer] jansson-2.14/test/suites/api/test_copy.c:296:26: style: Variable 'value2' can be declared as pointer to const [constVariablePointer] jansson-2.14/test/suites/api/test_dump.c:30:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_dump.c:58:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_dump.c:103:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_dump.c:142:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_dump.c:182:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_dump.c:200:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable JSON_ENCODE_ANY [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_dump.c:214:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_dump.c:234:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_dump.c:290:45: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable JSON_COMPACT [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_dump_callback.c:37:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_dump.c:294:32: warning:inconclusive: If memory allocation fails, then there is a possible null pointer dereference: embed [nullPointerOutOfMemory] jansson-2.14/test/suites/api/test_dump.c:287:23: note: Assuming allocation function fails jansson-2.14/test/suites/api/test_dump.c:287:23: note: Assignment 'embed=calloc(1,psize)', assigned value is 0 jansson-2.14/test/suites/api/test_dump.c:292:19: note: Assuming condition is false jansson-2.14/test/suites/api/test_dump.c:294:32: note: Null pointer dereference jansson-2.14/test/suites/api/test_dump.c:282:15: style: Local variable 'embed' shadows outer function [shadowFunction] jansson-2.14/test/suites/api/test_dump.c:273:13: note: Shadowed declaration jansson-2.14/test/suites/api/test_dump.c:282:15: note: Shadow variable jansson-2.14/src/value.c:89:39: style:inconclusive: Function 'json_object_size' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:188:39: note: Function 'json_object_size' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:89:39: note: Function 'json_object_size' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:99:39: style:inconclusive: Function 'json_object_get' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:189:39: note: Function 'json_object_get' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:99:39: note: Function 'json_object_get' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:106:40: style:inconclusive: Function 'json_object_getn' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:191:40: note: Function 'json_object_getn' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:106:40: note: Function 'json_object_getn' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:116:41: style:inconclusive: Function 'json_object_set_new_nocheck' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:195:41: note: Function 'json_object_set_new_nocheck' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:116:41: note: Function 'json_object_set_new_nocheck' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:124:42: style:inconclusive: Function 'json_object_setn_new_nocheck' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:196:42: note: Function 'json_object_setn_new_nocheck' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:124:42: note: Function 'json_object_setn_new_nocheck' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:145:33: style:inconclusive: Function 'json_object_set_new' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:193:33: note: Function 'json_object_set_new' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:145:33: note: Function 'json_object_set_new' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:154:34: style:inconclusive: Function 'json_object_setn_new' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:194:34: note: Function 'json_object_setn_new' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:154:34: note: Function 'json_object_setn_new' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:163:29: style:inconclusive: Function 'json_object_del' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:198:29: note: Function 'json_object_del' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:163:29: note: Function 'json_object_del' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:170:30: style:inconclusive: Function 'json_object_deln' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:199:30: note: Function 'json_object_deln' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:170:30: note: Function 'json_object_deln' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:180:31: style:inconclusive: Function 'json_object_clear' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:200:31: note: Function 'json_object_clear' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:180:31: note: Function 'json_object_clear' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:285:32: style:inconclusive: Function 'json_object_iter' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:205:32: note: Function 'json_object_iter' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:285:32: note: Function 'json_object_iter' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:295:35: style:inconclusive: Function 'json_object_iter_at' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:206:35: note: Function 'json_object_iter_at' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:295:35: note: Function 'json_object_iter_at' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:305:37: style:inconclusive: Function 'json_object_iter_next' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:208:37: note: Function 'json_object_iter_next' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:305:37: note: Function 'json_object_iter_next' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:336:38: style:inconclusive: Function 'json_object_iter_set_new' argument 1 names different: declaration 'object' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:212:38: note: Function 'json_object_iter_set_new' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:336:38: note: Function 'json_object_iter_set_new' argument 1 names different: declaration 'object' definition 'json'. jansson-2.14/src/value.c:451:38: style:inconclusive: Function 'json_array_size' argument 1 names different: declaration 'array' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:289:38: note: Function 'json_array_size' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:451:38: note: Function 'json_array_size' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:458:38: style:inconclusive: Function 'json_array_get' argument 1 names different: declaration 'array' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:290:38: note: Function 'json_array_get' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:458:38: note: Function 'json_array_get' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:470:32: style:inconclusive: Function 'json_array_set_new' argument 1 names different: declaration 'array' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:292:32: note: Function 'json_array_set_new' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:470:32: note: Function 'json_array_set_new' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:528:35: style:inconclusive: Function 'json_array_append_new' argument 1 names different: declaration 'array' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:293:35: note: Function 'json_array_append_new' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:528:35: note: Function 'json_array_append_new' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:551:35: style:inconclusive: Function 'json_array_insert_new' argument 1 names different: declaration 'array' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:294:35: note: Function 'json_array_insert_new' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:551:35: note: Function 'json_array_insert_new' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:588:31: style:inconclusive: Function 'json_array_remove' argument 1 names different: declaration 'array' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:295:31: note: Function 'json_array_remove' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:588:31: note: Function 'json_array_remove' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:609:30: style:inconclusive: Function 'json_array_clear' argument 1 names different: declaration 'array' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:296:30: note: Function 'json_array_clear' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:609:30: note: Function 'json_array_clear' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:624:31: style:inconclusive: Function 'json_array_extend' argument 1 names different: declaration 'array' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:297:31: note: Function 'json_array_extend' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:624:31: note: Function 'json_array_extend' argument 1 names different: declaration 'array' definition 'json'. jansson-2.14/src/value.c:624:45: style:inconclusive: Function 'json_array_extend' argument 2 names different: declaration 'other' definition 'other_json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:297:46: note: Function 'json_array_extend' argument 2 names different: declaration 'other' definition 'other_json'. jansson-2.14/src/value.c:624:45: note: Function 'json_array_extend' argument 2 names different: declaration 'other' definition 'other_json'. jansson-2.14/src/value.c:766:45: style:inconclusive: Function 'json_string_value' argument 1 names different: declaration 'string' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:311:45: note: Function 'json_string_value' argument 1 names different: declaration 'string' definition 'json'. jansson-2.14/src/value.c:766:45: note: Function 'json_string_value' argument 1 names different: declaration 'string' definition 'json'. jansson-2.14/src/value.c:773:41: style:inconclusive: Function 'json_string_length' argument 1 names different: declaration 'string' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:312:41: note: Function 'json_string_length' argument 1 names different: declaration 'string' definition 'json'. jansson-2.14/src/value.c:773:41: note: Function 'json_string_length' argument 1 names different: declaration 'string' definition 'json'. jansson-2.14/src/value.c:780:37: style:inconclusive: Function 'json_string_set_nocheck' argument 1 names different: declaration 'string' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:319:37: note: Function 'json_string_set_nocheck' argument 1 names different: declaration 'string' definition 'json'. jansson-2.14/src/value.c:780:37: note: Function 'json_string_set_nocheck' argument 1 names different: declaration 'string' definition 'json'. jansson-2.14/src/value.c:787:38: style:inconclusive: Function 'json_string_setn_nocheck' argument 1 names different: declaration 'string' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:320:38: note: Function 'json_string_setn_nocheck' argument 1 names different: declaration 'string' definition 'json'. jansson-2.14/src/value.c:787:38: note: Function 'json_string_setn_nocheck' argument 1 names different: declaration 'string' definition 'json'. jansson-2.14/src/value.c:806:29: style:inconclusive: Function 'json_string_set' argument 1 names different: declaration 'string' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:317:29: note: Function 'json_string_set' argument 1 names different: declaration 'string' definition 'json'. jansson-2.14/src/value.c:806:29: note: Function 'json_string_set' argument 1 names different: declaration 'string' definition 'json'. jansson-2.14/src/value.c:813:30: style:inconclusive: Function 'json_string_setn' argument 1 names different: declaration 'string' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:318:30: note: Function 'json_string_setn' argument 1 names different: declaration 'string' definition 'json'. jansson-2.14/src/value.c:813:30: note: Function 'json_string_setn' argument 1 names different: declaration 'string' definition 'json'. jansson-2.14/src/value.c:895:45: style:inconclusive: Function 'json_integer_value' argument 1 names different: declaration 'integer' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:313:45: note: Function 'json_integer_value' argument 1 names different: declaration 'integer' definition 'json'. jansson-2.14/src/value.c:895:45: note: Function 'json_integer_value' argument 1 names different: declaration 'integer' definition 'json'. jansson-2.14/src/value.c:902:30: style:inconclusive: Function 'json_integer_set' argument 1 names different: declaration 'integer' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:321:30: note: Function 'json_integer_set' argument 1 names different: declaration 'integer' definition 'json'. jansson-2.14/src/value.c:902:30: note: Function 'json_integer_set' argument 1 names different: declaration 'integer' definition 'json'. jansson-2.14/src/value.c:938:38: style:inconclusive: Function 'json_real_value' argument 1 names different: declaration 'real' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:314:38: note: Function 'json_real_value' argument 1 names different: declaration 'real' definition 'json'. jansson-2.14/src/value.c:938:38: note: Function 'json_real_value' argument 1 names different: declaration 'real' definition 'json'. jansson-2.14/src/value.c:945:27: style:inconclusive: Function 'json_real_set' argument 1 names different: declaration 'real' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:322:27: note: Function 'json_real_set' argument 1 names different: declaration 'real' definition 'json'. jansson-2.14/src/value.c:945:27: note: Function 'json_real_set' argument 1 names different: declaration 'real' definition 'json'. jansson-2.14/src/value.c:1023:30: style:inconclusive: Function 'json_equal' argument 1 names different: declaration 'value1' definition 'json1'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:349:30: note: Function 'json_equal' argument 1 names different: declaration 'value1' definition 'json1'. jansson-2.14/src/value.c:1023:30: note: Function 'json_equal' argument 1 names different: declaration 'value1' definition 'json1'. jansson-2.14/src/value.c:1023:51: style:inconclusive: Function 'json_equal' argument 2 names different: declaration 'value2' definition 'json2'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:349:52: note: Function 'json_equal' argument 2 names different: declaration 'value2' definition 'json2'. jansson-2.14/src/value.c:1023:51: note: Function 'json_equal' argument 2 names different: declaration 'value2' definition 'json2'. jansson-2.14/src/value.c:1052:27: style:inconclusive: Function 'json_copy' argument 1 names different: declaration 'value' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:353:27: note: Function 'json_copy' argument 1 names different: declaration 'value' definition 'json'. jansson-2.14/src/value.c:1052:27: note: Function 'json_copy' argument 1 names different: declaration 'value' definition 'json'. jansson-2.14/src/value.c:1076:38: style:inconclusive: Function 'json_deep_copy' argument 1 names different: declaration 'value' definition 'json'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:354:38: note: Function 'json_deep_copy' argument 1 names different: declaration 'value' definition 'json'. jansson-2.14/src/value.c:1076:38: note: Function 'json_deep_copy' argument 1 names different: declaration 'value' definition 'json'. jansson-2.14/src/value.c:336:38: style: Parameter 'json' can be declared as pointer to const [constParameterPointer] jansson-2.14/src/value.c:653:17: style: Variable 'value1' can be declared as pointer to const [constVariablePointer] jansson-2.14/src/value.c:653:26: style: Variable 'value2' can be declared as pointer to const [constVariablePointer] jansson-2.14/src/value.c:665:40: style: Parameter 'array' can be declared as pointer to const [constParameterPointer] jansson-2.14/src/value.c:826:20: style: Variable 's1' can be declared as pointer to const [constVariablePointer] jansson-2.14/src/value.c:826:25: style: Variable 's2' can be declared as pointer to const [constVariablePointer] jansson-2.14/src/value.c:834:20: style: Variable 's' can be declared as pointer to const [constVariablePointer] jansson-2.14/src/value.c:845:5: error: va_list 'aq' used before va_start() was called. [va_list_usedBeforeStarted] jansson-2.14/test/suites/api/test_equal.c:15:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_equal.c:94:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_equal.c:126:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_equal.c:176:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_fixed_size.c:27:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_fixed_size.c:43:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_fixed_size.c:135:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_fixed_size.c:164:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_fixed_size.c:190:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_load_callback.c:46:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/src/dump.c:59:62: style: Parameter 'data' can be declared as pointer to const. However it seems that 'dump_to_fd' is a callback function, if 'data' is declared with const you might also need to cast function pointer(s). [constParameterCallback] jansson-2.14/src/dump.c:456:37: note: You might need to cast the function pointer here jansson-2.14/src/dump.c:59:62: note: Parameter 'data' can be declared as pointer to const jansson-2.14/test/suites/api/test_loadb.c:20:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_load.c:19:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_load.c:46:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_load.c:59:48: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable JSON_REJECT_DUPLICATES [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_load.c:72:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_load.c:87:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable JSON_DECODE_ANY [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_load.c:119:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable JSON_DECODE_INT_AS_REAL [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_load.c:154:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable JSON_ALLOW_NUL [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_load.c:173:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_load.c:194:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable JSON_DISABLE_EOF_CHECK [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_load.c:212:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_memory_funcs.c:52:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_memory_funcs.c:74:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_number.c:43:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_number.c:82:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_memory_funcs.c:86:7: warning: If memory allocation fails, then there is a possible null pointer dereference: (unsigned long*)ptr [nullPointerOutOfMemory] jansson-2.14/test/suites/api/test_memory_funcs.c:85:23: note: Assuming allocation function fails jansson-2.14/test/suites/api/test_memory_funcs.c:85:23: note: Assignment 'ptr=malloc(size+8)', assigned value is 0 jansson-2.14/test/suites/api/test_memory_funcs.c:86:7: note: Null pointer dereference jansson-2.14/test/suites/api/test_memory_funcs.c:87:24: error: If memory allocation fails: pointer addition with NULL pointer. [nullPointerArithmeticOutOfMemory] jansson-2.14/test/suites/api/test_memory_funcs.c:85:23: note: Assuming allocation function fails jansson-2.14/test/suites/api/test_memory_funcs.c:85:23: note: Assignment 'ptr=malloc(size+8)', assigned value is 0 jansson-2.14/test/suites/api/test_memory_funcs.c:87:24: note: Null pointer addition jansson-2.14/test/suites/api/test_fixed_size.c:189:40: warning:inconclusive: If memory allocation fails, then there is a possible null pointer dereference: out [nullPointerOutOfMemory] jansson-2.14/test/suites/api/test_fixed_size.c:185:17: note: Assuming allocation function fails jansson-2.14/test/suites/api/test_fixed_size.c:185:17: note: Assignment 'out=malloc(512)', assigned value is 0 jansson-2.14/test/suites/api/test_fixed_size.c:189:40: note: Null pointer dereference jansson-2.14/test/suites/api/test_sprintf.c:8:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_object.c:622:5: error: There is an unknown macro here somewhere. Configuration is required. If json_object_foreach is a macro then please configure it. [unknownMacro] jansson-2.14/test/suites/api/test_load.c:13:13: style: Variable 'json' can be declared as pointer to const [constVariablePointer] jansson-2.14/test/suites/api/test_load.c:39:13: style: Variable 'json' can be declared as pointer to const [constVariablePointer] jansson-2.14/test/suites/api/test_load.c:168:13: style: Variable 'json' can be declared as pointer to const [constVariablePointer] jansson-2.14/test/suites/api/test_load.c:210:13: style: Variable 'json' can be declared as pointer to const [constVariablePointer] jansson-2.14/test/suites/api/test_version.c:13:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable JANSSON_VERSION [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_version.c:21:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_simple.c:17:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_simple.c:67:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_pack.c:65:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/test/suites/api/test_unpack.c:32:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] jansson-2.14/src/load.c:902:32: style:inconclusive: Function 'json_loads' argument 1 names different: declaration 'input' definition 'string'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:366:32: note: Function 'json_loads' argument 1 names different: declaration 'input' definition 'string'. jansson-2.14/src/load.c:902:32: note: Function 'json_loads' argument 1 names different: declaration 'input' definition 'string'. jansson-2.14/src/load.c:1081:65: style:inconclusive: Function 'json_load_callback' argument 2 names different: declaration 'data' definition 'arg'. [funcArgNamesDifferent] jansson-2.14/src/jansson.h:376:65: note: Function 'json_load_callback' argument 2 names different: declaration 'data' definition 'arg'. jansson-2.14/src/load.c:1081:65: note: Function 'json_load_callback' argument 2 names different: declaration 'data' definition 'arg'. jansson-2.14/src/load.c:994:29: style: Parameter 'fd' can be declared as pointer to const. However it seems that 'fd_get_func' is a callback function, if 'fd' is declared with const you might also need to cast function pointer(s). [constParameterCallback] jansson-2.14/src/load.c:1022:34: note: You might need to cast the function pointer here jansson-2.14/src/load.c:994:29: note: Parameter 'fd' can be declared as pointer to const diff: head jansson-2.14/test/bin/json_process.c:86:54: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] head jansson-2.14/test/ossfuzz/json_load_dump_fuzzer.cc:47:24: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] 2.17.0 jansson-2.14/test/ossfuzz/json_load_dump_fuzzer.cc:47:25: style: C-style pointer casting [cstyleCast] head jansson-2.14/test/ossfuzz/json_load_dump_fuzzer.cc:64:24: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] 2.17.0 jansson-2.14/test/ossfuzz/json_load_dump_fuzzer.cc:64:25: style: C-style pointer casting [cstyleCast] 2.17.0 jansson-2.14/test/suites/api/test_memory_funcs.c:87:24: error: If memory allocation fail: pointer addition with NULL pointer. [nullPointerArithmeticOutOfMemory] jansson-2.14/test/suites/api/test_memory_funcs.c:85:23: note: Assuming allocation function fails jansson-2.14/test/suites/api/test_memory_funcs.c:85:23: note: Assignment 'ptr=malloc(size+8)', assigned value is 0 jansson-2.14/test/suites/api/test_memory_funcs.c:87:24: note: Null pointer addition head jansson-2.14/test/suites/api/test_memory_funcs.c:87:24: error: If memory allocation fails: pointer addition with NULL pointer. [nullPointerArithmeticOutOfMemory] jansson-2.14/test/suites/api/test_memory_funcs.c:85:23: note: Assuming allocation function fails jansson-2.14/test/suites/api/test_memory_funcs.c:85:23: note: Assignment 'ptr=malloc(size+8)', assigned value is 0 jansson-2.14/test/suites/api/test_memory_funcs.c:87:24: note: Null pointer addition DONE