2024-05-04 18:58 ftp://ftp.de.debian.org/debian/pool/main/a/ann/ann_1.1.2+doc.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 -j1 platform: Linux-6.8.0-31-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.59 compiler: g++ (Ubuntu 14-20240412-0ubuntu1) 14.0.1 20240412 (experimental) [master r14-9935-g67e1433a94f] cppcheck: head 2.14.0 head-info: 665cfce (2024-05-04 20:00:50 +0200) count: 96 96 elapsed-time: 12.3 11.2 head-timing-info: old-timing-info: head results: ann-1.1.2+doc/ann2fig/ann2fig.cpp:583:1: error: syntax error [syntaxError] ann-1.1.2+doc/sample/ann_sample.cpp:96:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/sample/ann_sample.cpp:142:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cerr [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/ANN.cpp:62:2: error: There is an unknown macro here somewhere. Configuration is required. If ANN_COORD is a macro then please configure it. [unknownMacro] ann-1.1.2+doc/src/bd_fix_rad_search.cpp:59:2: error: There is an unknown macro here somewhere. Configuration is required. If ANN_FLOP is a macro then please configure it. [unknownMacro] ann-1.1.2+doc/src/bd_pr_search.cpp:60:2: error: There is an unknown macro here somewhere. Configuration is required. If ANN_FLOP is a macro then please configure it. [unknownMacro] ann-1.1.2+doc/src/bd_search.cpp:59:2: error: There is an unknown macro here somewhere. Configuration is required. If ANN_FLOP is a macro then please configure it. [unknownMacro] ann-1.1.2+doc/src/kd_tree.h:158:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANN_LO [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_tree.h:166:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANN_LO [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/bd_tree.h:74:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANN_IN [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/bd_tree.h:80:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANN_IN [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/bd_tree.cpp:45:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANN_OUT [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/bd_tree.cpp:86:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANN_IN [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/bd_tree.cpp:125:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable pts [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/bd_tree.cpp:312:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANNabort [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_tree.h:101:4: performance: Variable 'bkt' is assigned in constructor body. Consider performing initialization in initialization list. [useInitializationList] ann-1.1.2+doc/src/kd_tree.h:157:4: performance: Variable 'cut_val' is assigned in constructor body. Consider performing initialization in initialization list. [useInitializationList] ann-1.1.2+doc/src/bd_tree.h:73:4: performance: Variable 'bnds' is assigned in constructor body. Consider performing initialization in initialization list. [useInitializationList] ann-1.1.2+doc/src/kd_tree.h:104:3: style: The destructor '~ANNkd_leaf' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:48:11: note: Virtual destructor in base class ann-1.1.2+doc/src/kd_tree.h:104:3: note: Destructor in derived class ann-1.1.2+doc/src/kd_tree.h:106:15: style: The function 'getStats' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:54:15: note: Virtual function in base class ann-1.1.2+doc/src/kd_tree.h:106:15: note: Function in derived class ann-1.1.2+doc/src/kd_tree.h:110:15: style: The function 'print' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:59:15: note: Virtual function in base class ann-1.1.2+doc/src/kd_tree.h:110:15: note: Function in derived class ann-1.1.2+doc/src/kd_tree.h:111:15: style: The function 'dump' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:60:15: note: Virtual function in base class ann-1.1.2+doc/src/kd_tree.h:111:15: note: Function in derived class ann-1.1.2+doc/src/kd_tree.h:113:15: style: The function 'ann_search' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:50:15: note: Virtual function in base class ann-1.1.2+doc/src/kd_tree.h:113:15: note: Function in derived class ann-1.1.2+doc/src/kd_tree.h:114:15: style: The function 'ann_pri_search' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:51:15: note: Virtual function in base class ann-1.1.2+doc/src/kd_tree.h:114:15: note: Function in derived class ann-1.1.2+doc/src/kd_tree.h:115:15: style: The function 'ann_FR_search' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:52:15: note: Virtual function in base class ann-1.1.2+doc/src/kd_tree.h:115:15: note: Function in derived class ann-1.1.2+doc/src/kd_tree.h:164:3: style: The destructor '~ANNkd_split' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:48:11: note: Virtual destructor in base class ann-1.1.2+doc/src/kd_tree.h:164:3: note: Destructor in derived class ann-1.1.2+doc/src/kd_tree.h:172:15: style: The function 'getStats' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:54:15: note: Virtual function in base class ann-1.1.2+doc/src/kd_tree.h:172:15: note: Function in derived class ann-1.1.2+doc/src/kd_tree.h:176:15: style: The function 'print' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:59:15: note: Virtual function in base class ann-1.1.2+doc/src/kd_tree.h:176:15: note: Function in derived class ann-1.1.2+doc/src/kd_tree.h:177:15: style: The function 'dump' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:60:15: note: Virtual function in base class ann-1.1.2+doc/src/kd_tree.h:177:15: note: Function in derived class ann-1.1.2+doc/src/kd_tree.h:179:15: style: The function 'ann_search' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:50:15: note: Virtual function in base class ann-1.1.2+doc/src/kd_tree.h:179:15: note: Function in derived class ann-1.1.2+doc/src/kd_tree.h:180:15: style: The function 'ann_pri_search' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:51:15: note: Virtual function in base class ann-1.1.2+doc/src/kd_tree.h:180:15: note: Function in derived class ann-1.1.2+doc/src/kd_tree.h:181:15: style: The function 'ann_FR_search' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:52:15: note: Virtual function in base class ann-1.1.2+doc/src/kd_tree.h:181:15: note: Function in derived class ann-1.1.2+doc/src/bd_tree.h:78:3: style: The destructor '~ANNbd_shrink' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:48:11: note: Virtual destructor in base class ann-1.1.2+doc/src/bd_tree.h:78:3: note: Destructor in derived class ann-1.1.2+doc/src/bd_tree.h:88:15: style: The function 'getStats' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:54:15: note: Virtual function in base class ann-1.1.2+doc/src/bd_tree.h:88:15: note: Function in derived class ann-1.1.2+doc/src/bd_tree.h:92:15: style: The function 'print' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:59:15: note: Virtual function in base class ann-1.1.2+doc/src/bd_tree.h:92:15: note: Function in derived class ann-1.1.2+doc/src/bd_tree.h:93:15: style: The function 'dump' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:60:15: note: Virtual function in base class ann-1.1.2+doc/src/bd_tree.h:93:15: note: Function in derived class ann-1.1.2+doc/src/bd_tree.h:95:15: style: The function 'ann_search' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:50:15: note: Virtual function in base class ann-1.1.2+doc/src/bd_tree.h:95:15: note: Function in derived class ann-1.1.2+doc/src/bd_tree.h:96:15: style: The function 'ann_pri_search' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:51:15: note: Virtual function in base class ann-1.1.2+doc/src/bd_tree.h:96:15: note: Function in derived class ann-1.1.2+doc/src/bd_tree.h:97:15: style: The function 'ann_FR_search' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] ann-1.1.2+doc/src/kd_tree.h:52:15: note: Virtual function in base class ann-1.1.2+doc/src/bd_tree.h:97:15: note: Function in derived class ann-1.1.2+doc/src/brute.cpp:49:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable dim [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/brute.cpp:64:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable n_pts [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/brute.cpp:92:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable n_pts [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/pr_queue_k.h:87:9: style:inconclusive: Technically the member function 'ANNmin_k::ANNmin_key' can be const. [functionConst] ann-1.1.2+doc/src/pr_queue_k.h:90:9: style:inconclusive: Technically the member function 'ANNmin_k::max_key' can be const. [functionConst] ann-1.1.2+doc/src/pr_queue_k.h:93:9: style:inconclusive: Technically the member function 'ANNmin_k::ith_smallest_key' can be const. [functionConst] ann-1.1.2+doc/src/pr_queue_k.h:96:10: style:inconclusive: Technically the member function 'ANNmin_k::ith_smallest_info' can be const. [functionConst] ann-1.1.2+doc/src/pr_queue_k.h:81:4: warning: Class 'ANNmin_k' does not have a copy constructor which is recommended since it has dynamic memory/resource allocation(s). [noCopyConstructor] ann-1.1.2+doc/src/pr_queue_k.h:81:4: warning: Class 'ANNmin_k' does not have a operator= which is recommended since it has dynamic memory/resource allocation(s). [noOperatorEq] ann-1.1.2+doc/src/pr_queue_k.h:77:2: style: Class 'ANNmin_k' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] ann-1.1.2+doc/src/kd_dump.cpp:106:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANNversion [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_dump.cpp:138:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANN_LO [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_dump.cpp:164:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cd [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_dump.cpp:209:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable bnd_box_lo [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_dump.cpp:237:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable bnd_box_lo [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_dump.cpp:274:46: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANNabort [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_dump.cpp:423:54: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANNabort [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_dump.cpp:375:6: style: The scope of the variable 'n_pts' can be reduced. [variableScope] ann-1.1.2+doc/src/kd_dump.cpp:380:6: style: The scope of the variable 'n_bnds' can be reduced. [variableScope] ann-1.1.2+doc/src/kd_dump.cpp:381:6: style: The scope of the variable 'sd' can be reduced. [variableScope] ann-1.1.2+doc/src/kd_fix_rad_search.cpp:138:2: error: There is an unknown macro here somewhere. Configuration is required. If ANN_FLOP is a macro then please configure it. [unknownMacro] ann-1.1.2+doc/src/kd_pr_search.cpp:171:2: error: There is an unknown macro here somewhere. Configuration is required. If ANN_SPL is a macro then please configure it. [unknownMacro] ann-1.1.2+doc/src/kd_search.cpp:162:2: error: There is an unknown macro here somewhere. Configuration is required. If ANN_FLOP is a macro then please configure it. [unknownMacro] ann-1.1.2+doc/src/kd_tree.cpp:71:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANN_HI [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_tree.cpp:108:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANNversion [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_tree.cpp:135:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable n_lf [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_tree.cpp:170:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANN_LO [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_tree.cpp:197:6: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable root [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_tree.cpp:211:6: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable root [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_tree.cpp:251:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable dim [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_tree.cpp:376:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable pts [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/kd_util.cpp:143:2: error: There is an unknown macro here somewhere. Configuration is required. If ANN_FLOP is a macro then please configure it. [unknownMacro] ann-1.1.2+doc/src/perf.cpp:109:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/src/perf.cpp:120:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/ann_test.cpp:380:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANNabort [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/ann_test.cpp:393:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/ann_test.cpp:586:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANNtrue [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/ann_test.cpp:606:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANNfalse [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/ann_test.cpp:616:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANNfalse [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/ann_test.cpp:634:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/ann_test.cpp:1232:50: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANNabort [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/ann_test.cpp:1295:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cerr [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/ann_test.cpp:1377:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/ann_test.cpp:1476:71: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANNabort [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/ann_test.cpp:1593:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ANNtrue [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/ann_test.cpp:888:15: style: Condition 'stats>=EXEC_TIME' is always true [knownConditionTrueFalse] ann-1.1.2+doc/test/ann_test.cpp:880:14: note: Assuming that condition 'stats>SILENT' is not redundant ann-1.1.2+doc/test/ann_test.cpp:888:15: note: Condition 'stats>=EXEC_TIME' is always true ann-1.1.2+doc/test/ann_test.cpp:1110:15: style: Condition 'stats>=EXEC_TIME' is always true [knownConditionTrueFalse] ann-1.1.2+doc/test/ann_test.cpp:1096:14: note: Assuming that condition 'stats>SILENT' is not redundant ann-1.1.2+doc/test/ann_test.cpp:1110:15: note: Condition 'stats>=EXEC_TIME' is always true ann-1.1.2+doc/test/ann_test.cpp:1469:23: style: Variable 'curr_apx_idx' is assigned a value that is never used. [unreadVariable] ann-1.1.2+doc/test/ann_test.cpp:1555:16: style: Variable 'curr_apx_idx' is assigned a value that is never used. [unreadVariable] ann-1.1.2+doc/test/rand.cpp:68:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] ann-1.1.2+doc/test/rand.cpp:86:4: warning: Return value of function random() is not used. [ignoredReturnValue] ann-1.1.2+doc/test/rand.cpp:67:18: style: Condition 'RAN_DIVISOR<0' is always false [knownConditionTrueFalse] ann-1.1.2+doc/test/rand.cpp:66:35: note: Assignment 'RAN_DIVISOR=double(2147483647UL+1UL)', assigned value is 2147483648.0 ann-1.1.2+doc/test/rand.cpp:67:18: note: Condition 'RAN_DIVISOR<0' is always false ann-1.1.2+doc/test/rand.cpp:395:13: style: Parameter 'control' can be declared as pointer to const [constParameterPointer] ann-1.1.2+doc/test/rand.cpp:493:13: style: Parameter 'center' can be declared as pointer to const [constParameterPointer] ann-1.1.2+doc/test/rand.cpp:494:13: style: Parameter 'std_dev' can be declared as pointer to const [constParameterPointer] ann-1.1.2+doc/test/rand.cpp:160:10: warning: Uninitialized variable: v1 [uninitvar] ann-1.1.2+doc/test/rand.cpp:145:12: note: Assuming condition is false ann-1.1.2+doc/test/rand.cpp:160:10: note: Uninitialized variable: v1 ann-1.1.2+doc/test/rand.cpp:162:10: warning: Uninitialized variable: v2 [uninitvar] ann-1.1.2+doc/test/rand.cpp:145:12: note: Assuming condition is false ann-1.1.2+doc/test/rand.cpp:162:10: note: Uninitialized variable: v2 diff: DONE