2022-06-28 21:42 ftp://ftp.de.debian.org/debian/pool/main/j/jansson/jansson_2.14.orig.tar.gz cppcheck-options: --library=posix --library=gnu --showtime=top5 --check-library --inconclusive --enable=style,information --template=daca2 -D__GNUC__ --platform=unix64 -rp=temp -j2 platform: Linux-5.4.0-110-generic-x86_64-with-glibc2.29 python: 3.8.10 client-version: 1.3.24 compiler: g++ (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0 cppcheck: head 2.8 head-info: 1852944 (2022-06-28 22:52:35 +0200) count: 53 53 elapsed-time: 2.5 2.3 head-timing-info: Overall time: 0s old-timing-info: Overall time: 0s head results: 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/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/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/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/utf.c:44:14: style: Condition '0x80<=u' is always true [knownConditionTrueFalse] jansson-2.14/src/utf.c:41:11: note: Assuming condition 'u<0x80' is false 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/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:845:5: error: va_list 'aq' used before va_start() was called. [va_list_usedBeforeStarted] 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/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:25: style: C-style pointer casting [cstyleCast] jansson-2.14/test/ossfuzz/json_load_dump_fuzzer.cc:64:25: style: C-style pointer casting [cstyleCast] jansson-2.14/test/ossfuzz/standaloneengine.cc:38:16: style: C-style pointer casting [cstyleCast] 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/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] diff: DONE