2026-01-25 03:02 ftp://ftp.de.debian.org/debian/pool/main/r/ruby-hiredis/ruby-hiredis_0.6.3.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --library=ruby --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 -j1 platform: Linux-6.8.0-90-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.69 compiler: g++ (Ubuntu 14.2.0-4ubuntu2~24.04) 14.2.0 cppcheck: head 2.19.0 head-info: cfddd3e (2026-01-24 12:34:07 +0100) count: 34 34 elapsed-time: 0.1 0.3 head-timing-info: old-timing-info: head results: hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:34:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable T_ARRAY [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:61:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable rb_eEOFError [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:188:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable REDIS_ERR_IO [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:241:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Qnil [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:267:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Qnil [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:293:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Qtrue [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:302:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable rb_eRuntimeError [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:316:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable T_ARRAY [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:347:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable rb_eRuntimeError [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:381:44: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable REDIS_ERR [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:456:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable rb_eRuntimeError [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:471:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable rb_eArgError [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:495:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable rb_eRuntimeError [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:502:65: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable rb_cObject [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:71:5: warning: If memory allocation fails, then there is a possible null pointer dereference: pc [nullPointerOutOfMemory] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:70:36: note: Assuming allocation function fails hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:70:36: note: Assignment 'pc=malloc(sizeof(*pc))', assigned value is 0 hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:71:5: note: Null pointer dereference hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:72:5: warning: If memory allocation fails, then there is a possible null pointer dereference: pc [nullPointerOutOfMemory] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:70:36: note: Assuming allocation function fails hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:70:36: note: Assignment 'pc=malloc(sizeof(*pc))', assigned value is 0 hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:72:5: note: Null pointer dereference hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:331:9: warning: If memory allocation fails, then there is a possible null pointer dereference: argv [nullPointerOutOfMemory] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:324:18: note: Assuming allocation function fails hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:324:18: note: Assignment 'argv=malloc(argc*sizeof(char*))', assigned value is 0 hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:331:9: note: Null pointer dereference hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:332:9: warning: If memory allocation fails, then there is a possible null pointer dereference: alen [nullPointerOutOfMemory] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:325:18: note: Assuming allocation function fails hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:325:18: note: Assignment 'alen=malloc(argc*sizeof(unsigned long))', assigned value is 0 hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:332:9: note: Null pointer dereference hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:480:13: warning: If memory allocation fails, then there is a possible null pointer dereference: ptr [nullPointerOutOfMemory] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:479:25: note: Assuming allocation function fails hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:479:25: note: Assignment 'ptr=malloc(sizeof(*ptr))', assigned value is 0 hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:480:13: note: Null pointer dereference hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:481:13: warning: If memory allocation fails, then there is a possible null pointer dereference: ptr [nullPointerOutOfMemory] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:479:25: note: Assuming allocation function fails hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:479:25: note: Assignment 'ptr=malloc(sizeof(*ptr))', assigned value is 0 hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:481:13: note: Null pointer dereference hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:501:27: style:inconclusive: Function 'InitConnection' argument 1 names different: declaration 'module' definition 'mod'. [funcArgNamesDifferent] hiredis-rb-0.6.3/ext/hiredis_ext/hiredis_ext.h:25:34: note: Function 'InitConnection' argument 1 names different: declaration 'module' definition 'mod'. hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:501:27: note: Function 'InitConnection' argument 1 names different: declaration 'module' definition 'mod'. hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:172:21: style: Variable 'timeout' can be declared as pointer to const [constVariablePointer] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:239:50: style: Parameter 'argv' can be declared as pointer to const. However it seems that 'connection_connect' is a callback function, if 'argv' is declared with const you might also need to cast function pointer(s). [constParameterCallback] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:505:51: note: You might need to cast the function pointer here hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:239:50: note: Parameter 'argv' can be declared as pointer to const hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:265:55: style: Parameter 'argv' can be declared as pointer to const. However it seems that 'connection_connect_unix' is a callback function, if 'argv' is declared with const you might also need to cast function pointer(s). [constParameterCallback] hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:506:56: note: You might need to cast the function pointer here hiredis-rb-0.6.3/ext/hiredis_ext/connection.c:265:55: note: Parameter 'argv' can be declared as pointer to const hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:14:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable T_ARRAY [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:30:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable REDIS_REPLY_ERROR [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:48:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Qnil [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:72:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable T_ARRAY [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:84:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable T_STRING [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:96:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable redisReader [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:105:57: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable rb_cObject [valueFlowBailoutIncompleteVar] hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:104:23: style:inconclusive: Function 'InitReader' argument 1 names different: declaration 'module' definition 'mod'. [funcArgNamesDifferent] hiredis-rb-0.6.3/ext/hiredis_ext/hiredis_ext.h:20:30: note: Function 'InitReader' argument 1 names different: declaration 'module' definition 'mod'. hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:104:23: note: Function 'InitReader' argument 1 names different: declaration 'module' definition 'mod'. hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:51:30: style: Parameter 'ptr' can be declared as pointer to const. However it seems that 'freeObject' is a callback function, if 'ptr' is declared with const you might also need to cast function pointer(s). [constParameterCallback] hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:61:5: note: You might need to cast the function pointer here hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:51:30: note: Parameter 'ptr' can be declared as pointer to const hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:64:38: style: Parameter 'reader' can be declared as pointer to const. However it seems that 'reader_mark' is a callback function, if 'reader' is declared with const you might also need to cast function pointer(s). [constParameterCallback] hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:78:36: note: You might need to cast the function pointer here hiredis-rb-0.6.3/ext/hiredis_ext/reader.c:64:38: note: Parameter 'reader' can be declared as pointer to const diff: DONE