2026-01-14 22:11 ftp://ftp.de.debian.org/debian/pool/main/r/r-cran-purrrlyr/r-cran-purrrlyr_0.0.8.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --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 -j90 platform: Linux-6.8.0-90-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.69 compiler: g++ (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0 cppcheck: head 2.19.0 head-info: 367e437 (2026-01-14 17:16:12 +0100) count: 78 78 elapsed-time: 0.1 0.1 head-timing-info: old-timing-info: head results: purrrlyr/src/init.c:22:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] purrrlyr/src/rows.cpp:40:3: error: There is an unknown macro here somewhere. Configuration is required. If END_RCPP is a macro then please configure it. [unknownMacro] purrrlyr/src/vector.c:9:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LGLSXP [valueFlowBailoutIncompleteVar] purrrlyr/src/vector.c:24:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NilValue [valueFlowBailoutIncompleteVar] purrrlyr/src/vector.c:30:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NA_LOGICAL [valueFlowBailoutIncompleteVar] purrrlyr/src/vector.c:33:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NA_INTEGER [valueFlowBailoutIncompleteVar] purrrlyr/src/vector.c:36:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NA_LOGICAL [valueFlowBailoutIncompleteVar] purrrlyr/src/vector.c:42:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NA_INTEGER [valueFlowBailoutIncompleteVar] purrrlyr/src/vector.c:52:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NA_STRING [valueFlowBailoutIncompleteVar] purrrlyr/src/vector.c:99:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NilValue [valueFlowBailoutIncompleteVar] purrrlyr/src/utils.cpp:15:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_ClassSymbol [valueFlowBailoutIncompleteVar] purrrlyr/src/utils.cpp:79:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NamesSymbol [valueFlowBailoutIncompleteVar] purrrlyr/src/utils.cpp:88:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable STRSXP [valueFlowBailoutIncompleteVar] purrrlyr/src/rows-data.cpp:10:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable rows [valueFlowBailoutIncompleteVar] purrrlyr/src/rows-data.cpp:44:43: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_MissingArg [valueFlowBailoutIncompleteVar] purrrlyr/src/rows-data.cpp:60:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NILSXP [valueFlowBailoutIncompleteVar] purrrlyr/src/rows-data.cpp:88:61: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NilValue [valueFlowBailoutIncompleteVar] purrrlyr/src/fast-copy.cpp:30:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable INTSXP [valueFlowBailoutIncompleteVar] purrrlyr/src/fast-copy.cpp:96:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Rcomplex [valueFlowBailoutIncompleteVar] purrrlyr/src/map.c:10:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NamesSymbol [valueFlowBailoutIncompleteVar] purrrlyr/src/map.c:32:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VECSXP [valueFlowBailoutIncompleteVar] purrrlyr/src/map.c:56:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NilValue [valueFlowBailoutIncompleteVar] purrrlyr/src/map.c:89:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NilValue [valueFlowBailoutIncompleteVar] purrrlyr/src/map.c:123:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NilValue [valueFlowBailoutIncompleteVar] purrrlyr/src/utils.cpp:101:12: style: Local variable 'x' shadows outer argument [shadowArgument] purrrlyr/src/utils.cpp:82:53: note: Shadowed declaration purrrlyr/src/utils.cpp:101:12: note: Shadow variable purrrlyr/src/rows-data.h:61:8: style:inconclusive: Technically the member function 'rows::Results::get' can be const. [functionConst] purrrlyr/src/rows-data.h:62:7: style:inconclusive: Technically the member function 'rows::Results::size' can be const. [functionConst] purrrlyr/src/rows-data.h:29:3: style: Struct 'Settings' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] purrrlyr/src/rows-data.h:42:3: style: Struct 'Labels' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] purrrlyr/src/rows-data.cpp:31:45: style:inconclusive: Function 'remove' argument 1 names different: declaration 'index' definition 'to_remove'. [funcArgNamesDifferent] purrrlyr/src/rows-data.h:40:39: note: Function 'remove' argument 1 names different: declaration 'index' definition 'to_remove'. purrrlyr/src/rows-data.cpp:31:45: note: Function 'remove' argument 1 names different: declaration 'index' definition 'to_remove'. purrrlyr/src/fast-copy.cpp:87:17: style: C-style pointer casting [cstyleCast] purrrlyr/src/fast-copy.cpp:88:17: style: C-style pointer casting [cstyleCast] purrrlyr/src/fast-copy.cpp:95:17: style: C-style pointer casting [cstyleCast] purrrlyr/src/fast-copy.cpp:96:17: style: C-style pointer casting [cstyleCast] purrrlyr/src/fast-copy.cpp:97:17: style: C-style pointer casting [cstyleCast] purrrlyr/src/fast-copy.cpp:98:17: style: C-style pointer casting [cstyleCast] purrrlyr/src/fast-copy.cpp:30:17: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] purrrlyr/src/fast-copy.cpp:31:17: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] purrrlyr/src/fast-copy.cpp:54:17: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] purrrlyr/src/fast-copy.cpp:55:17: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] purrrlyr/src/fast-copy.cpp:56:17: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] purrrlyr/src/fast-copy.cpp:87:17: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] purrrlyr/src/fast-copy.cpp:88:17: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] purrrlyr/src/fast-copy.cpp:95:17: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] purrrlyr/src/fast-copy.cpp:96:17: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] purrrlyr/src/fast-copy.cpp:97:17: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] purrrlyr/src/fast-copy.cpp:98:17: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] purrrlyr/src/fast-copy.cpp:30:17: style: Variable 'x_ptr' can be declared as pointer to const [constVariablePointer] purrrlyr/src/fast-copy.cpp:31:17: style: Variable 'x_ptr' can be declared as pointer to const [constVariablePointer] purrrlyr/src/fast-copy.cpp:54:17: style: Variable 'x_ptr' can be declared as pointer to const [constVariablePointer] purrrlyr/src/fast-copy.cpp:55:17: style: Variable 'x_ptr' can be declared as pointer to const [constVariablePointer] purrrlyr/src/fast-copy.cpp:56:17: style: Variable 'x_ptr' can be declared as pointer to const [constVariablePointer] purrrlyr/src/rows-formatter.cpp:147:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NILSXP [valueFlowBailoutIncompleteVar] purrrlyr/src/map.c:25:12: style: Local variable 'i' shadows outer variable [shadowVariable] purrrlyr/src/map.c:21:8: note: Shadowed declaration purrrlyr/src/map.c:25:12: note: Shadow variable purrrlyr/src/rows-formatter.h:15:3: warning: Member variable 'Formatter::n_rows_' is not initialized in the constructor. [uninitMemberVar] purrrlyr/src/rows-formatter.h:15:3: warning: Member variable 'Formatter::n_cols_' is not initialized in the constructor. [uninitMemberVar] purrrlyr/src/rows-formatter.cpp:21:16: style:inconclusive: Technically the member function 'rows::Formatter::labels_size' can be const. [functionConst] purrrlyr/src/rows-formatter.h:29:7: note: Technically the member function 'rows::Formatter::labels_size' can be const. purrrlyr/src/rows-formatter.cpp:21:16: note: Technically the member function 'rows::Formatter::labels_size' can be const. purrrlyr/src/rows-formatter.h:34:7: style:inconclusive: Technically the member function 'rows::Formatter::should_include_rowid_column' can be const. [functionConst] purrrlyr/src/rows-formatter.h:56:7: style: The function 'output_size' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] purrrlyr/src/rows-formatter.h:39:15: note: Virtual function in base class purrrlyr/src/rows-formatter.h:56:7: note: Function in derived class purrrlyr/src/rows-formatter.h:57:9: style: The function 'add_output' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] purrrlyr/src/rows-formatter.h:42:17: note: Virtual function in base class purrrlyr/src/rows-formatter.h:57:9: note: Function in derived class purrrlyr/src/rows-formatter.h:62:20: style: The function 'create_colnames' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] purrrlyr/src/rows-formatter.h:44:28: note: Virtual function in base class purrrlyr/src/rows-formatter.h:62:20: note: Function in derived class purrrlyr/src/rows-formatter.h:74:8: style: The function 'check_nonlist_consistency' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] purrrlyr/src/rows-formatter.h:31:16: note: Virtual function in base class purrrlyr/src/rows-formatter.h:74:8: note: Function in derived class purrrlyr/src/rows-formatter.h:76:7: style: The function 'output_size' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] purrrlyr/src/rows-formatter.h:39:15: note: Virtual function in base class purrrlyr/src/rows-formatter.h:76:7: note: Function in derived class purrrlyr/src/rows-formatter.h:77:9: style: The function 'add_output' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] purrrlyr/src/rows-formatter.h:42:17: note: Virtual function in base class purrrlyr/src/rows-formatter.h:77:9: note: Function in derived class purrrlyr/src/rows-formatter.h:82:20: style: The function 'create_colnames' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] purrrlyr/src/rows-formatter.h:44:28: note: Virtual function in base class purrrlyr/src/rows-formatter.h:82:20: note: Function in derived class purrrlyr/src/rows-formatter.h:94:7: style: The function 'output_size' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] purrrlyr/src/rows-formatter.h:39:15: note: Virtual function in base class purrrlyr/src/rows-formatter.h:94:7: note: Function in derived class purrrlyr/src/rows-formatter.h:95:20: style: The function 'create_colnames' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] purrrlyr/src/rows-formatter.h:44:28: note: Virtual function in base class purrrlyr/src/rows-formatter.h:95:20: note: Function in derived class purrrlyr/src/rows-formatter.h:96:9: style: The function 'add_output' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] purrrlyr/src/rows-formatter.h:42:17: note: Virtual function in base class purrrlyr/src/rows-formatter.h:96:9: note: Function in derived class purrrlyr/src/rows-formatter.cpp:174:7: style: Redundant assignment of 'out' to itself. [selfAssignment] purrrlyr/src/rows-formatter.cpp:181:7: style: Redundant assignment of 'out' to itself. [selfAssignment] purrrlyr/src/rows-formatter.cpp:205:9: style: Redundant assignment of 'out' to itself. [selfAssignment] purrrlyr/src/rows-formatter.cpp:208:9: style: Redundant assignment of 'out' to itself. [selfAssignment] purrrlyr/src/rows-formatter.cpp:318:15: style: Redundant assignment of 'out_names' to itself. [selfAssignment] purrrlyr/src/rows-formatter.cpp:321:15: style: Redundant assignment of 'out_names' to itself. [selfAssignment] purrrlyr/src/rows-formatter.cpp:365:15: style: Redundant assignment of 'out_names' to itself. [selfAssignment] purrrlyr/src/rows-formatter.cpp:368:15: style: Redundant assignment of 'out_names' to itself. [selfAssignment] purrrlyr/src/rows-formatter.cpp:146:43: style:inconclusive: Function 'create_column' argument 1 names different: declaration 'type' definition 'sexp_type'. [funcArgNamesDifferent] purrrlyr/src/rows-formatter.h:40:34: note: Function 'create_column' argument 1 names different: declaration 'type' definition 'sexp_type'. purrrlyr/src/rows-formatter.cpp:146:43: note: Function 'create_column' argument 1 names different: declaration 'type' definition 'sexp_type'. purrrlyr/src/rows-formatter.cpp:357:16: style: Variable 'output_colname' can be declared as reference to const [constVariableReference] diff: DONE