2025-07-08 11:21 ftp://ftp.de.debian.org/debian/pool/main/g/gob2/gob2_2.0.20.orig.tar.xz cppcheck-options: --library=posix --library=gnu --library=bsd --library=gtk --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 -j3 platform: Linux-6.8.0-63-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.67 compiler: g++ (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0 cppcheck: head 2.17.0 head-info: 8f3d36a (2025-07-08 11:07:56 +0200) count: 346 362 elapsed-time: 0.3 0.4 head-timing-info: old-timing-info: head results: gob2-2.0.20/src/main.c:4322:50: error: There is an unknown macro here somewhere. Configuration is required. If PKGDATADIR is a macro then please configure it. [unknownMacro] lexer.c:1380:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] lexer.c:2709:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] lexer.c:2889:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] lexer.c:3034:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] lexer.c:3272:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] gob2-2.0.20/src/checks.c:200:7: style: g_strcasecmp has been deprecated since version 2.2 and should not be used in newly-written code. [prohibitedg_strcasecmpCalled] gob2-2.0.20/src/checks.c:419:8: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] gob2-2.0.20/src/checks.c:432:9: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] gob2-2.0.20/src/checks.c:36:34: style: Parameter 'node' can be declared as pointer to const [constParameterPointer] gob2-2.0.20/src/checks.c:38:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:44:12: style: Variable 'm' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:53:14: style: Variable 'v' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:79:12: style: Variable 'm' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:85:14: style: Variable 'v' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:94:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:171:40: style: Parameter 'node' can be declared as pointer to const [constParameterPointer] gob2-2.0.20/src/checks.c:173:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:179:12: style: Variable 'm' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:188:14: style: Variable 'a' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:192:14: style: Variable 'p' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:217:12: style: Variable 'm' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:223:14: style: Variable 'p' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:226:14: style: Variable 'a' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:235:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:239:12: style: Variable 'm' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:253:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:257:12: style: Variable 'm' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:276:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:280:12: style: Variable 'm' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:414:10: style: Variable 'ch' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:416:10: style: Variable 'p' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:484:10: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:488:15: style: Variable 'm' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:508:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:512:14: style: Variable 'v' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:529:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:533:12: style: Variable 'm' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:546:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:548:9: style: Variable 'n' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:549:13: style: Variable 'p' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:561:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:563:9: style: Variable 'n' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:564:13: style: Variable 'p' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:577:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:579:9: style: Variable 'n' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:580:13: style: Variable 'a' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:592:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:594:9: style: Variable 'n' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:595:13: style: Variable 'a' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:607:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:611:12: style: Variable 'm' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:623:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:627:14: style: Variable 'v' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:639:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:643:12: style: Variable 'm' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:655:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:659:14: style: Variable 'v' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:673:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:677:14: style: Variable 'v' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:691:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:695:14: style: Variable 'v' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:707:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/checks.c:711:14: style: Variable 'v' can be declared as pointer to const [constVariablePointer] lexer.c:2586:16: style: Condition 'yywrap()' is always true [knownConditionTrueFalse] lexer.c:2586:16: note: Calling function 'yywrap' returns 1 lexer.c:2586:16: note: Condition 'yywrap()' is always true lexer.c:2888:17: style: Condition 'yywrap()' is always true [knownConditionTrueFalse] lexer.c:2888:17: note: Calling function 'yywrap' returns 1 lexer.c:2888:17: note: Condition 'yywrap()' is always true lexer.c:3038:2: warning: Possible null pointer dereference: b [nullPointer] lexer.c:2931:17: note: Calling function 'yy_init_buffer', 1st argument '(yy_buffer_stack)?(yy_buffer_stack)[yy_buffer_stack_top]:NULL' value is 0 lexer.c:3038:2: note: Null pointer dereference lexer.c:3039:2: warning: Possible null pointer dereference: b [nullPointer] lexer.c:2931:17: note: Calling function 'yy_init_buffer', 1st argument '(yy_buffer_stack)?(yy_buffer_stack)[yy_buffer_stack_top]:NULL' value is 0 lexer.c:3039:2: note: Null pointer dereference lexer.c:2709:3: style: Redundant initialization for 'c'. The initialized value is overwritten before it is read. [redundantInitialization] lexer.c:2709:3: note: c is initialized lexer.c:2709:3: note: c is overwritten lexer.l:554:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:688:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:693:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:698:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:703:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:768:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:794:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:819:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:824:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:829:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:834:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:839:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:844:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:849:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:854:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:859:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:864:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:869:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:874:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:879:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:884:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:889:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:894:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:899:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:904:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:909:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:914:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:919:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:924:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:933:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:938:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:943:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:948:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:953:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:958:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:963:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:968:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:973:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:978:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:983:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:988:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:993:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:998:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:1008:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:1017:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:1029:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:1037:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:1059:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] gob2-2.0.20/src/str_test.c:13:13: style: Redundant assignment of 'test_good' to itself. [selfAssignment] lexer.l:1068:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] gob2-2.0.20/src/str_test.c:17:12: style: Redundant assignment of 'test_bad' to itself. [selfAssignment] lexer.l:1076:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:1084:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:1092:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:1101:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:1109:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:1122:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:1130:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.l:1149:2: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] lexer.c:2697:23: style: Checking if unsigned expression 'num_to_read' is less than zero. [unsignedLessThanZero] gob2-2.0.20/src/str_test.c:13:13: style: Variable 'test_good' is assigned a value that is never used. [unreadVariable] gob2-2.0.20/src/str_test.c:17:12: style: Variable 'test_bad' is assigned a value that is never used. [unreadVariable] lexer.c:2785:59: style:inconclusive: Function 'yy_try_NUL_trans' argument 1 names different: declaration 'current_state' definition 'yy_current_state'. [funcArgNamesDifferent] lexer.c:349:54: note: Function 'yy_try_NUL_trans' argument 1 names different: declaration 'current_state' definition 'yy_current_state'. lexer.c:2785:59: note: Function 'yy_try_NUL_trans' argument 1 names different: declaration 'current_state' definition 'yy_current_state'. lexer.c:2804:49: style:inconclusive: Function 'yyunput' argument 2 names different: declaration 'buf_ptr' definition 'yy_bp'. [funcArgNamesDifferent] lexer.c:1223:38: note: Function 'yyunput' argument 2 names different: declaration 'buf_ptr' definition 'yy_bp'. lexer.c:2804:49: note: Function 'yyunput' argument 2 names different: declaration 'buf_ptr' definition 'yy_bp'. lexer.c:3223:48: style:inconclusive: Function 'yy_scan_string' argument 1 names different: declaration 'yy_str' definition 'yystr'. [funcArgNamesDifferent] lexer.c:302:47: note: Function 'yy_scan_string' argument 1 names different: declaration 'yy_str' definition 'yystr'. lexer.c:3223:48: note: Function 'yy_scan_string' argument 1 names different: declaration 'yy_str' definition 'yystr'. lexer.c:3236:48: style:inconclusive: Function 'yy_scan_bytes' argument 1 names different: declaration 'bytes' definition 'yybytes'. [funcArgNamesDifferent] lexer.c:303:46: note: Function 'yy_scan_bytes' argument 1 names different: declaration 'bytes' definition 'yybytes'. lexer.c:3236:48: note: Function 'yy_scan_bytes' argument 1 names different: declaration 'bytes' definition 'yybytes'. lexer.c:3236:68: style:inconclusive: Function 'yy_scan_bytes' argument 2 names different: declaration 'len' definition '_yybytes_len'. [funcArgNamesDifferent] lexer.c:303:62: note: Function 'yy_scan_bytes' argument 2 names different: declaration 'len' definition '_yybytes_len'. lexer.c:3236:68: note: Function 'yy_scan_bytes' argument 2 names different: declaration 'len' definition '_yybytes_len'. lexer.c:3368:24: style:inconclusive: Function 'yyset_debug' argument 1 names different: declaration 'debug_flag' definition 'bdebug'. [funcArgNamesDifferent] lexer.c:1189:23: note: Function 'yyset_debug' argument 1 names different: declaration 'debug_flag' definition 'bdebug'. lexer.c:3368:24: note: Function 'yyset_debug' argument 1 names different: declaration 'debug_flag' definition 'bdebug'. lexer.c:2651:17: style: Variable 'source' can be declared as pointer to const [constVariablePointer] lexer.c:2819:18: style: Variable 'source' can be declared as pointer to const [constVariablePointer] lexer.c:3236:48: style: Parameter 'yybytes' can be declared as pointer to const [constParameterPointer] lexer.c:3270:43: style: Parameter 'msg' can be declared as pointer to const [constParameterPointer] lexer.l:75:19: style: Parameter 's' can be declared as pointer to const [constParameterPointer] lexer.l:173:8: style: Variable 'number' can be declared as pointer to const [constVariablePointer] lexer.l:125:18: style: Variable 'yy_current_state' is assigned a value that is never used. [unreadVariable] gob2-2.0.20/src/util.c:57:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] gob2-2.0.20/src/util.c:334:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable next [valueFlowBailoutIncompleteVar] gob2-2.0.20/src/util.c:305:35: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB] gob2-2.0.20/src/util.c:391:18: style:inconclusive: Function 'gob_strup' argument 1 names different: declaration 's' definition 'str'. [funcArgNamesDifferent] gob2-2.0.20/src/util.h:40:25: note: Function 'gob_strup' argument 1 names different: declaration 's' definition 'str'. gob2-2.0.20/src/util.c:391:18: note: Function 'gob_strup' argument 1 names different: declaration 's' definition 'str'. gob2-2.0.20/src/util.c:401:20: style:inconclusive: Function 'gob_strdown' argument 1 names different: declaration 's' definition 'str'. [funcArgNamesDifferent] gob2-2.0.20/src/util.h:41:27: note: Function 'gob_strdown' argument 1 names different: declaration 's' definition 'str'. gob2-2.0.20/src/util.c:401:20: note: Function 'gob_strdown' argument 1 names different: declaration 's' definition 'str'. gob2-2.0.20/src/util.c:271:14: style: Variable 'gtype' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/util.c:314:14: style: Variable 'gtype' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/util.c:347:14: style: Variable 'a' can be declared as pointer to const [constVariablePointer] parse.y:110:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] parse.y:132:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VARIABLE_NODE [valueFlowBailoutIncompleteVar] parse.y:159:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CLASS_SCOPE [valueFlowBailoutIncompleteVar] parse.y:279:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FUNCARG_NODE [valueFlowBailoutIncompleteVar] parse.y:301:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TYPE_NODE [valueFlowBailoutIncompleteVar] parse.y:318:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TYPE_NODE [valueFlowBailoutIncompleteVar] parse.y:344:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VARIABLE_NODE [valueFlowBailoutIncompleteVar] parse.y:400:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GOB_ERROR [valueFlowBailoutIncompleteVar] parse.y:502:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TYPE_NODE [valueFlowBailoutIncompleteVar] parse.y:541:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GOB_ERROR [valueFlowBailoutIncompleteVar] parse.y:674:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GOB_WARN [valueFlowBailoutIncompleteVar] parse.c:1910:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] parse.c:1944:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] parse.c:2253:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] parse.c:2359:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] gob2-2.0.20/src/treefuncs.c:1849:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1848:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1849:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:1854:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1853:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1854:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:1859:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1858:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1859:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:1864:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1863:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1864:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:1869:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1868:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1869:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:1874:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1873:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1874:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:1879:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1878:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1879:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:1884:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1883:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1884:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:1889:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1888:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1889:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:1894:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1893:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1894:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:1899:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1898:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1899:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:1904:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1903:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1904:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:1909:14: style: Variable 'node' is reassigned a value before the old one has been used. [redundantAssignment] gob2-2.0.20/src/treefuncs.c:1908:8: note: node is assigned gob2-2.0.20/src/treefuncs.c:1909:14: note: node is overwritten gob2-2.0.20/src/treefuncs.c:745:12: style: Variable 'flags' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/treefuncs.c:948:12: style: Variable 'interfaces' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/treefuncs.c:1109:12: style: Variable 'values' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/treefuncs.c:1161:12: style: Variable 'values' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/treefuncs.c:1275:12: style: Variable 'gtktypes' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/treefuncs.c:1287:12: style: Variable 'flags' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/treefuncs.c:1460:12: style: Variable 'flags' can be declared as pointer to const [constVariablePointer] gob2-2.0.20/src/treefuncs.c:1845:2: error: va_list '__ap' was opened but not closed by va_end(). [va_end_missing] parse.c:1888:47: warning: Either the condition 'yytype<69' is redundant or the array 'yytname[123]' is accessed at index 123, which is out of bounds. [arrayIndexOutOfBoundsCond] parse.c:1885:14: note: Assuming that condition 'yytype<69' is not redundant parse.c:1888:47: note: Array index out of bounds parse.y:418:3: style: Obsolete function 'g_string_sprintf' called. It is recommended to use 'g_string_printf' instead. [prohibitedg_string_sprintfCalled] parse.y:453:3: style: Obsolete function 'g_string_sprintf' called. It is recommended to use 'g_string_printf' instead. [prohibitedg_string_sprintfCalled] parse.y:649:3: error: Memory leak: getcast [memleak] parse.y:740:39: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:744:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:754:39: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:758:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:768:39: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:772:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:782:39: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:786:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:796:39: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:800:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:810:39: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:814:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:824:39: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:828:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:838:39: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:842:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1155:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1161:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1166:24: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1180:30: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1181:30: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1187:30: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1188:31: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1193:31: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1204:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1213:30: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1215:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1247:27: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1423:25: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1424:25: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1425:25: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1426:23: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1449:25: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1452:32: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1457:32: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1473:23: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1666:31: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1687:31: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1693:31: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1702:63: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1713:31: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1724:32: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1735:34: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1746:34: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1757:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1768:32: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1791:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1802:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1813:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1824:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1835:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1846:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1857:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1868:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1879:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1890:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1900:26: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1901:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1905:33: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1906:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1910:33: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1911:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1916:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1941:36: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1962:44: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1970:49: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1980:41: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:1991:38: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2001:28: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2009:28: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2017:50: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2018:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2035:68: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2036:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2045:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2046:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2064:68: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2065:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2073:68: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2075:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2083:50: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2084:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2092:28: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2109:37: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2209:46: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2210:23: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2218:52: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2219:23: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2320:58: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2328:58: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2335:33: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2367:47: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2395:47: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2423:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2451:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2474:45: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2491:47: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2507:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2519:46: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2524:46: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2529:46: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2534:46: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2539:46: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2545:30: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2562:57: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2564:23: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2581:54: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2585:57: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2588:54: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2607:54: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2615:54: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2619:57: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2623:54: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2646:31: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2653:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2654:29: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2670:25: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2671:26: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2673:23: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2702:25: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2703:26: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2705:23: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2791:28: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2799:50: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2845:25: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2850:32: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2859:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2869:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2881:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2893:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2905:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2917:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2929:40: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:2980:27: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:3007:32: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:3045:53: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:3053:53: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:3089:55: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:3097:55: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:3104:31: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:3111:44: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:3112:22: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:3119:31: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:3125:31: style: Same expression on both sides of '-'. [duplicateExpression] parse.y:91:15: style: Parameter 'str' can be declared as pointer to const [constParameterPointer] parse.y:197:9: style: Variable 'p' can be declared as pointer to const [constVariablePointer] parse.y:339:9: style: Variable 'li' can be declared as pointer to const [constVariablePointer] parse.y:343:9: style: Variable 'node' can be declared as pointer to const [constVariablePointer] parse.y:358:22: style: Parameter 'type' can be declared as pointer to const [constParameterPointer] parse.y:497:29: style: Parameter 'file' can be declared as pointer to const [constParameterPointer] parse.y:497:42: style: Parameter 'root' can be declared as pointer to const [constParameterPointer] parse.y:497:55: style: Parameter 'domain' can be declared as pointer to const [constParameterPointer] parse.y:537:13: style: Variable 'var' can be declared as pointer to const [constVariablePointer] parse.c:1907:19: style: Parameter 'yytop' can be declared as pointer to const [constParameterPointer] diff: 2.17.0 gob2-2.0.20/src/util.c:105:25: warning: If memory allocation fails, then there is a possible null pointer dereference: s [nullPointerOutOfMemory] gob2-2.0.20/src/util.c:102:20: note: Assuming allocation function fails gob2-2.0.20/src/util.c:102:20: note: Assignment 's=g_strdup(base)', assigned value is 0 gob2-2.0.20/src/util.c:105:25: note: Null pointer dereference 2.17.0 gob2-2.0.20/src/util.c:139:25: warning: If memory allocation fails, then there is a possible null pointer dereference: s [nullPointerOutOfMemory] gob2-2.0.20/src/util.c:134:20: note: Assuming allocation function fails gob2-2.0.20/src/util.c:134:20: note: Assignment 's=g_strdup(base)', assigned value is 0 gob2-2.0.20/src/util.c:139:25: note: Null pointer dereference 2.17.0 gob2-2.0.20/src/util.c:151:18: warning: If memory allocation fails, then there is a possible null pointer dereference: s [nullPointerOutOfMemory] gob2-2.0.20/src/util.c:147:15: note: Assuming allocation function fails gob2-2.0.20/src/util.c:147:15: note: Assignment 'p=g_strdup(p+1)', assigned value is 0 gob2-2.0.20/src/util.c:149:7: note: Assignment 's=p', assigned value is 0 gob2-2.0.20/src/util.c:151:18: note: Null pointer dereference 2.17.0 gob2-2.0.20/src/util.c:172:14: warning: If memory allocation fails, then there is a possible null pointer dereference: v [nullPointerOutOfMemory] gob2-2.0.20/src/util.c:171:17: note: Assuming allocation function fails gob2-2.0.20/src/util.c:171:17: note: Assignment 'v=g_strsplit(base," ",0)', assigned value is 0 gob2-2.0.20/src/util.c:172:14: note: Null pointer dereference 2.17.0 gob2-2.0.20/src/util.c:173:8: warning: If memory allocation fails, then there is a possible null pointer dereference: v [nullPointerOutOfMemory] gob2-2.0.20/src/util.c:171:17: note: Assuming allocation function fails gob2-2.0.20/src/util.c:171:17: note: Assignment 'v=g_strsplit(base," ",0)', assigned value is 0 gob2-2.0.20/src/util.c:173:8: note: Null pointer dereference 2.17.0 gob2-2.0.20/src/util.c:394:17: warning: If memory allocation fails, then there is a possible null pointer dereference: s [nullPointerOutOfMemory] gob2-2.0.20/src/util.c:182:18: note: Assuming allocation function fails gob2-2.0.20/src/util.c:182:18: note: Assignment 's=g_strconcat(ns,"_",pre,"_",name,NULL)', assigned value is 0 gob2-2.0.20/src/util.c:186:13: note: Calling function 'gob_strup', 1st argument 's' value is 0 gob2-2.0.20/src/util.c:394:11: note: Assignment 's=str', assigned value is 0 gob2-2.0.20/src/util.c:394:17: note: Null pointer dereference 2.17.0 gob2-2.0.20/src/util.c:87:25: warning: If memory allocation fails, then there is a possible null pointer dereference: s [nullPointerOutOfMemory] gob2-2.0.20/src/util.c:83:20: note: Assuming allocation function fails gob2-2.0.20/src/util.c:83:20: note: Assignment 's=g_strdup(base)', assigned value is 0 gob2-2.0.20/src/util.c:87:25: note: Null pointer dereference 2.17.0 parse.y:103:19: warning: If memory allocation fails, then there is a possible null pointer dereference: tmp [nullPointerOutOfMemory] parse.y:102:23: note: Assuming allocation function fails parse.y:102:23: note: Assignment 'tmp=g_strdup(yytext)', assigned value is 0 parse.y:103:19: note: Null pointer dereference 2.17.0 parse.y:110:52: warning: If memory allocation fails, then there is a possible null pointer dereference: out [nullPointerOutOfMemory] parse.y:98:21: note: Assuming allocation function fails parse.y:98:21: note: Assignment 'out=g_strconcat("Error: ",str," before end of line",NULL)', assigned value is 0 parse.y:110:52: note: Null pointer dereference 2.17.0 parse.y:210:17: warning:inconclusive: If memory allocation fails, then there is a possible null pointer dereference: buffer [nullPointerOutOfMemory] parse.y:208:32: note: Assuming allocation function fails parse.y:208:32: note: Assignment 'buffer=g_string_new("")', assigned value is 0 parse.y:210:17: note: Null pointer dereference 2.17.0 parse.y:418:21: warning: If memory allocation fails, then there is a possible null pointer dereference: get_cbuf [nullPointerOutOfMemory] parse.y:407:36: note: Assuming allocation function fails parse.y:407:36: note: Assignment 'get_cbuf=g_string_new(NULL)', assigned value is 0 parse.y:418:21: note: Null pointer dereference 2.17.0 parse.y:453:21: warning: If memory allocation fails, then there is a possible null pointer dereference: set_cbuf [nullPointerOutOfMemory] parse.y:439:36: note: Assuming allocation function fails parse.y:439:36: note: Assignment 'set_cbuf=g_string_new(NULL)', assigned value is 0 parse.y:453:21: note: Null pointer dereference 2.17.0 parse.y:580:12: warning: If memory allocation fails, then there is a possible null pointer dereference: cast [nullPointerOutOfMemory] parse.y:570:21: note: Assuming allocation function fails parse.y:570:21: note: Assignment 'cast=g_strdup("void")', assigned value is 0 parse.y:580:12: note: Null pointer dereference 2.17.0 parse.y:639:12: warning: If memory allocation fails, then there is a possible null pointer dereference: getcast [nullPointerOutOfMemory] parse.y:631:66: note: Assuming allocation function fails parse.y:631:66: note: Assignment 'getcast=g_strdup_printf("(%s%s) ",prop->ptype->name,prop->ptype->pointer?prop->ptype->pointer:"")', assigned value is 0 parse.y:639:12: note: Null pointer dereference 2.17.0 parse.y:640:12: warning:inconclusive: If memory allocation fails, then there is a possible null pointer dereference: get_func [nullPointerOutOfMemory] parse.y:617:31: note: Assuming allocation function fails parse.y:617:31: note: Assignment 'get_func=g_strdup_printf("g_value_get_%s",prop->gtktype)', assigned value is 0 parse.y:640:12: note: Null pointer dereference 2.17.0 parse.y:642:12: warning:inconclusive: If memory allocation fails, then there is a possible null pointer dereference: set_func [nullPointerOutOfMemory] parse.y:615:31: note: Assuming allocation function fails parse.y:615:31: note: Assignment 'set_func=g_strdup_printf("g_value_set_%s",prop->gtktype)', assigned value is 0 parse.y:642:12: note: Null pointer dereference DONE