2026-05-04 17:41 ftp://ftp.de.debian.org/debian/pool/main/r/r-cran-later/r-cran-later_1.4.8+dfsg.orig.tar.xz 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 -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: 63 56 elapsed-time: 0.4 0.3 head-timing-info: old-timing-info: head results: later/inst/bgtest.cpp:25:8: style: Either there is a missing 'override', or the member function 'TestTask::complete' can be static. [functionStatic] later/inst/bgtest.cpp:10:3: style: Class 'TestTask' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] later/inst/promise_task.cpp:33:3: warning: Member variable 'FibonacciTask::result' is not initialized in the constructor. [uninitMemberVar] later/inst/promise_task.cpp:37:8: style: The function 'execute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] later/inst/promise_task.cpp:11:16: note: Virtual function in base class later/inst/promise_task.cpp:37:8: note: Function in derived class later/inst/promise_task.cpp:41:17: style: The function 'get_result' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] later/inst/promise_task.cpp:12:25: note: Virtual function in base class later/inst/promise_task.cpp:41:17: note: Function in derived class later/inst/promise_task.cpp:55:18: style: Local variable 'fib' shadows outer function [shadowFunction] later/inst/promise_task.cpp:24:6: note: Shadowed declaration later/inst/promise_task.cpp:55:18: note: Shadow variable later/src/RcppExports.cpp:19:1: error: There is an unknown macro here somewhere. Configuration is required. If END_RCPP is a macro then please configure it. [unknownMacro] later/src/threadutils.h:90:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable value [valueFlowBailoutIncompleteVar] later/src/callback_registry.h:61:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable END_RCPP [valueFlowBailoutIncompleteVar] later/src/callback_registry.cpp:222:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_PosInf [valueFlowBailoutIncompleteVar] later/src/callback_registry.h:24:3: warning: Member variable 'Callback::callbackId' is not initialized in the constructor. [uninitMemberVar] later/src/timestamp.h:22:3: style: Class 'Timestamp' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] later/src/threadutils.h:27:3: style: Class 'Mutex' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] later/src/threadutils.h:69:3: style: Class 'Guard' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] later/src/threadutils.h:87:3: style: Class 'ConditionVariable' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] later/src/optional.h:13:3: style: Class 'Optional < Timestamp >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] later/src/callback_registry.h:56:8: style: The function 'invoke' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] later/src/callback_registry.h:39:16: note: Virtual function in base class later/src/callback_registry.h:56:8: note: Function in derived class later/src/callback_registry.h:65:17: style: The function 'rRepresentation' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] later/src/callback_registry.h:41:25: note: Virtual function in base class later/src/callback_registry.h:65:17: note: Function in derived class later/src/callback_registry.h:76:8: style: The function 'invoke' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] later/src/callback_registry.h:39:16: note: Virtual function in base class later/src/callback_registry.h:76:8: note: Function in derived class later/src/callback_registry.h:80:17: style: The function 'rRepresentation' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] later/src/callback_registry.h:41:25: note: Virtual function in base class later/src/callback_registry.h:80:17: note: Function in derived class later/src/threadutils.h:78:13: error: Unhandled exception thrown in function declared not to throw exceptions. [throwInNoexceptFunction] later/src/callback_registry.cpp:117:59: style:inconclusive: Function 'add' argument 2 names different: declaration '' definition 'data'. [funcArgNamesDifferentUnnamed] later/src/callback_registry.cpp:117:72: style:inconclusive: Function 'add' argument 3 names different: declaration '' definition 'secs'. [funcArgNamesDifferentUnnamed] later/src/callback_registry.cpp:132:39: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] later/src/callback_registry.cpp:199:35: style: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm] later/src/callback_registry.cpp:260:47: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] later/src/debug.cpp:42:35: performance: Function parameter 'level' should be passed by const reference. [passedByValue] later/src/fd.cpp:53:58: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _1 [valueFlowBailoutIncompleteVar] later/src/fd.cpp:123:43: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable revents [valueFlowBailoutIncompleteVar] later/src/fd.cpp:177:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable POLLIN [valueFlowBailoutIncompleteVar] later/src/callback_registry_table.h:40:5: warning: Member variable 'RegistryHandle::r_ref_exists' is not initialized in the constructor. [uninitMemberVar] later/src/fd.cpp:123:106: style: Clarify calculation precedence for '&' and '?'. [clarifyCalculation] later/src/callback_registry_table.h:161:9: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] later/src/callback_registry_table.h:164:9: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] later/src/init.c:64:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] later/src/later.cpp:42:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] later/src/later.cpp:355:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_PosInf [valueFlowBailoutIncompleteVar] later/src/later.cpp:104:3: style: Class 'CurrentRegistryGuard' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] later/src/later.cpp:273:15: style:inconclusive: Function 'idle' argument 1 names different: declaration 'loop' definition 'loop_id'. [funcArgNamesDifferent] later/src/later.h:21:15: note: Function 'idle' argument 1 names different: declaration 'loop' definition 'loop_id'. later/src/later.cpp:273:15: note: Function 'idle' argument 1 names different: declaration 'loop' definition 'loop_id'. later/src/later_posix.cpp:57:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NilValue [valueFlowBailoutIncompleteVar] later/src/later_posix.cpp:153:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_InputHandlers [valueFlowBailoutIncompleteVar] later/src/later_posix.cpp:168:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_InputHandlers [valueFlowBailoutIncompleteVar] later/src/later_posix.cpp:206:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_InputHandlers [valueFlowBailoutIncompleteVar] later/src/later_posix.cpp:236:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_InputHandlers [valueFlowBailoutIncompleteVar] later/src/timer_posix.h:25:3: style: Class 'Timer' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] later/src/optional.h:13:3: style: Class 'Optional < pthread_t >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] later/src/later_posix.cpp:268:105: style:inconclusive: Function 'doExecLater' argument 3 names different: declaration '' definition 'data'. [funcArgNamesDifferentUnnamed] later/src/later_posix.cpp:268:118: style:inconclusive: Function 'doExecLater' argument 4 names different: declaration '' definition 'delaySecs'. [funcArgNamesDifferentUnnamed] later/src/later_posix.cpp:268:134: style:inconclusive: Function 'doExecLater' argument 5 names different: declaration '' definition 'resetTimer'. [funcArgNamesDifferentUnnamed] later/src/timer_posix.cpp:60:18: error: Unhandled exception thrown in function declared not to throw exceptions. [throwInNoexceptFunction] later/src/timer_posix.cpp:5:31: style:inconclusive: Function 'bg_main_func' argument 1 names different: declaration '' definition 'data'. [funcArgNamesDifferentUnnamed] later/src/timestamp_unix.cpp:9:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CLOCK_MONOTONIC [valueFlowBailoutIncompleteVar] later/src/timestamp_unix.cpp:21:3: style: Class 'TimestampImplPosix' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] later/src/timestamp_unix.cpp:27:16: style: The function 'future' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] later/src/timestamp.h:10:16: note: Virtual function in base class later/src/timestamp_unix.cpp:27:16: note: Function in derived class later/src/timestamp_unix.cpp:34:16: style: The function 'less' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] later/src/timestamp.h:11:16: note: Virtual function in base class later/src/timestamp_unix.cpp:34:16: note: Function in derived class later/src/timestamp_unix.cpp:40:16: style: The function 'greater' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] later/src/timestamp.h:12:16: note: Virtual function in base class later/src/timestamp_unix.cpp:40:16: note: Function in derived class later/src/timestamp_unix.cpp:46:18: style: The function 'diff_secs' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] later/src/timestamp.h:13:18: note: Virtual function in base class later/src/timestamp_unix.cpp:46:18: note: Function in derived class later/src/tinycthread.c:82:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PTHREAD_MUTEX_RECURSIVE [valueFlowBailoutIncompleteVar] later/src/tinycthread.c:194:48: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EBUSY [valueFlowBailoutIncompleteVar] later/src/tinycthread.c:467:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ETIMEDOUT [valueFlowBailoutIncompleteVar] later/src/tinycthread.c:707:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] later/src/tinycthread.c:592:67: style:inconclusive: Function 'tct_thrd_create' argument 3 names different: declaration '' definition 'arg'. [funcArgNamesDifferentUnnamed] later/src/wref.c:12:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NilValue [valueFlowBailoutIncompleteVar] diff: head later/src/callback_registry.cpp:117:59: style:inconclusive: Function 'add' argument 2 names different: declaration '' definition 'data'. [funcArgNamesDifferentUnnamed] head later/src/callback_registry.cpp:117:72: style:inconclusive: Function 'add' argument 3 names different: declaration '' definition 'secs'. [funcArgNamesDifferentUnnamed] head later/src/later_posix.cpp:268:105: style:inconclusive: Function 'doExecLater' argument 3 names different: declaration '' definition 'data'. [funcArgNamesDifferentUnnamed] head later/src/later_posix.cpp:268:118: style:inconclusive: Function 'doExecLater' argument 4 names different: declaration '' definition 'delaySecs'. [funcArgNamesDifferentUnnamed] head later/src/later_posix.cpp:268:134: style:inconclusive: Function 'doExecLater' argument 5 names different: declaration '' definition 'resetTimer'. [funcArgNamesDifferentUnnamed] head later/src/timer_posix.cpp:5:31: style:inconclusive: Function 'bg_main_func' argument 1 names different: declaration '' definition 'data'. [funcArgNamesDifferentUnnamed] head later/src/tinycthread.c:592:67: style:inconclusive: Function 'tct_thrd_create' argument 3 names different: declaration '' definition 'arg'. [funcArgNamesDifferentUnnamed] DONE