2026-05-04 22:31 ftp://ftp.de.debian.org/debian/pool/main/r/ruby-gpgme/ruby-gpgme_2.0.26.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-1047-aws-aarch64-with-glibc2.35 python: 3.10.12 client-version: 1.4.0 compiler: g++ (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0 cppcheck: head 2.20.0 head-info: 519958a (2026-05-04 15:03:10 +0200) count: 88 87 elapsed-time: 0.3 0.2 head-timing-info: old-timing-info: head results: ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:228:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Qnil [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:246:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GPG_ERR_NO_ERROR [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:285:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:313:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:331:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Qnil [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:340:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Qnil [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:367:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GPG_ERR_NO_ERROR [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:382:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable rb_eArgError [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:398:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GPG_ERR_NO_ERROR [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:458:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:482:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GPG_ERR_NO_ERROR [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:498:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Qnil [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:518:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_data [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:531:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_data [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:544:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_data [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:555:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_data [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:565:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_data [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:576:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_data [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:588:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GPG_ERR_NO_ERROR [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:598:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:617:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:633:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:651:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:664:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:676:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:690:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:706:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:720:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:738:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:751:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:763:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:776:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:789:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:802:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:820:51: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Qnil [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:839:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:855:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Qnil [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:931:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:946:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Qnil [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:955:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1031:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1054:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1202:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1227:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1244:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1268:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1290:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1312:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1332:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1354:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1378:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1453:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1471:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1536:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1582:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1622:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1956:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1985:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2014:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2043:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2136:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2161:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2179:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2217:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2246:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2267:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2330:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2355:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2370:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2384:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2399:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2419:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2444:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2463:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2521:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2560:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2592:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2626:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2665:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2698:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gpgme_context [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2891:50: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable rb_cObject [valueFlowBailoutIncompleteVar] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:729:10: style: Condition 'result' is always true [knownConditionTrueFalse] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:404:16: style: Parameter 'handle' can be declared as pointer to const. However it seems that 'read_cb' is a callback function, if 'handle' is declared with const you might also need to cast function pointer(s). [constParameterCallback] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:464:13: note: You might need to cast the function pointer here ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:404:16: note: Parameter 'handle' can be declared as pointer to const ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:420:17: style: Parameter 'handle' can be declared as pointer to const. However it seems that 'write_cb' is a callback function, if 'handle' is declared with const you might also need to cast function pointer(s). [constParameterCallback] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:465:14: note: You might need to cast the function pointer here ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:420:17: note: Parameter 'handle' can be declared as pointer to const ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:444:16: style: Parameter 'handle' can be declared as pointer to const. However it seems that 'seek_cb' is a callback function, if 'handle' is declared with const you might also need to cast function pointer(s). [constParameterCallback] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:466:13: note: You might need to cast the function pointer here ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:444:16: note: Parameter 'handle' can be declared as pointer to const ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:810:22: style: Parameter 'hook' can be declared as pointer to const. However it seems that 'passphrase_cb' is a callback function, if 'hook' is declared with const you might also need to cast function pointer(s). [constParameterCallback] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:842:33: note: You might need to cast the function pointer here ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:810:22: note: Parameter 'hook' can be declared as pointer to const ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:907:20: style: Parameter 'hook' can be declared as pointer to const. However it seems that 'progress_cb' is a callback function, if 'hook' is declared with const you might also need to cast function pointer(s). [constParameterCallback] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:934:31: note: You might need to cast the function pointer here ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:907:20: note: Parameter 'hook' can be declared as pointer to const ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1931:16: style: Parameter 'hook' can be declared as pointer to const. However it seems that 'edit_cb' is a callback function, if 'hook' is declared with const you might also need to cast function pointer(s). [constParameterCallback] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:2056:45: note: You might need to cast the function pointer here ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:1931:16: note: Parameter 'hook' can be declared as pointer to const diff: head ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:810:22: style: Parameter 'hook' can be declared as pointer to const. However it seems that 'passphrase_cb' is a callback function, if 'hook' is declared with const you might also need to cast function pointer(s). [constParameterCallback] ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:842:33: note: You might need to cast the function pointer here ueno-ruby-gpgme-d0ce44f/ext/gpgme/gpgme_n.c:810:22: note: Parameter 'hook' can be declared as pointer to const DONE