2026-05-24 01:17 ftp://ftp.de.debian.org/debian/pool/main/r/r-cran-genie/r-cran-genie_1.0.7.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --library=openmp --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-117-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.70 compiler: g++ (Ubuntu 14.2.0-4ubuntu2~24.04.1) 14.2.0 cppcheck: head 2.20.0 head-info: bc04c0d (2026-05-22 08:18:49 +0200) count: 106 106 elapsed-time: 1.0 1.0 head-timing-info: old-timing-info: head results: genie/src/RcppExports.cpp:24:1: error: There is an unknown macro here somewhere. Configuration is required. If END_RCPP is a macro then please configure it. [unknownMacro] genie/src/disjoint_sets.h:47:4: style: Class 'DisjointSets' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/disjoint_sets.h:77:4: style: Class 'PhatDisjointSets' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/disjoint_sets.h:78:13: style: The destructor '~PhatDisjointSets' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/disjoint_sets.h:48:13: note: Virtual destructor in base class genie/src/disjoint_sets.h:78:13: note: Destructor in derived class genie/src/disjoint_sets.h:80:24: style: The function 'link' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/disjoint_sets.h:51:24: note: Virtual function in base class genie/src/disjoint_sets.h:80:24: note: Function in derived class genie/src/disjoint_sets.h:81:24: style: The function 'link' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/disjoint_sets.h:50:24: note: Virtual function in base class genie/src/disjoint_sets.h:81:24: note: Function in derived class genie/src/disjoint_sets.cpp:85:27: style: C-style pointer casting [cstyleCast] genie/src/disjoint_sets.cpp:129:24: style: C-style pointer casting [cstyleCast] genie/src/disjoint_sets.cpp:186:24: style: C-style pointer casting [cstyleCast] genie/src/disjoint_sets.cpp:26:40: style:inconclusive: Function 'DisjointSets' argument 1 names different: declaration 'n' definition '_n'. [funcArgNamesDifferent] genie/src/disjoint_sets.h:47:29: note: Function 'DisjointSets' argument 1 names different: declaration 'n' definition '_n'. genie/src/disjoint_sets.cpp:26:40: note: Function 'DisjointSets' argument 1 names different: declaration 'n' definition '_n'. genie/src/disjoint_sets.cpp:74:48: style:inconclusive: Function 'PhatDisjointSets' argument 1 names different: declaration 'n' definition '_n'. [funcArgNamesDifferent] genie/src/disjoint_sets.h:77:33: note: Function 'PhatDisjointSets' argument 1 names different: declaration 'n' definition '_n'. genie/src/disjoint_sets.cpp:74:48: note: Function 'PhatDisjointSets' argument 1 names different: declaration 'n' definition '_n'. genie/src/hclust2_distance.h:82:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _ [valueFlowBailoutIncompleteVar] genie/src/hclust2_distance.h:109:58: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NilValue [valueFlowBailoutIncompleteVar] genie/src/hclust2_distance.h:110:62: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NilValue [valueFlowBailoutIncompleteVar] genie/src/hclust2_distance.h:289:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable n [valueFlowBailoutIncompleteVar] genie/src/hclust2_distance.h:316:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable n [valueFlowBailoutIncompleteVar] genie/src/hclust2_distance.h:418:45: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable n [valueFlowBailoutIncompleteVar] genie/src/hclust2_common.cpp:148:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _ [valueFlowBailoutIncompleteVar] genie/src/hclust2_common.cpp:178:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _ [valueFlowBailoutIncompleteVar] genie/src/hclust2_common.h:61:12: warning: 'operator=' should check for assignment to self to avoid problems with dynamic memory. [operatorEqToSelf] genie/src/hclust2_distance.h:106:18: style:inconclusive: Technically the member function 'grup::Distance::getObjectCount' can be const. [functionConst] genie/src/hclust2_distance.h:112:32: style:inconclusive: Technically the member function 'grup::Distance::getStats' can be const. [functionConst] genie/src/hclust2_common.h:474:16: style:inconclusive: Technically the member function 'grup::NNHeap::empty' can be const. [functionConst] genie/src/hclust2_common.h:484:24: style:inconclusive: Technically the member function 'grup::NNHeap::size' can be const. [functionConst] genie/src/hclust2_common.h:600:16: style:inconclusive: Technically the member function 'grup::DistanceComparatorCached::operator()' can be const. [functionConst] genie/src/hclust2_common.h:613:16: style:inconclusive: Technically the member function 'grup::IndexComparator::operator()' can be const. [functionConst] genie/src/hclust2_distance.h:69:4: style: Struct 'DistanceStats' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:139:4: style: Class 'GenericMatrixDistance' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:158:4: style: Class 'SquaredEuclideanDistance' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:173:4: style: Class 'EuclideanDistance' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:196:4: style: Class 'ManhattanDistance' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:209:4: style: Class 'MaximumDistance' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:222:4: style: Class 'HammingDistance' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:236:3: style: Class 'StringDistanceDouble' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:251:4: style: Class 'StringDistanceInt' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:266:4: style: Class 'StringDistanceChar' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:286:4: style: Class 'DinuDistanceInt' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:276:7: style: Struct 'Comparer' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:313:4: style: Class 'DinuDistanceChar' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:303:7: style: Struct 'Comparer' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:334:4: style: Class 'LevenshteinDistanceInt' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:345:4: style: Class 'LevenshteinDistanceChar' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:357:4: style: Class 'HammingDistanceInt' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:368:4: style: Class 'HammingDistanceChar' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:414:4: style: Class 'DistObjectDistance' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_common.h:361:4: style: Class 'HclustPriorityQueue' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_common.h:424:4: style: Struct 'HClustOptions' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_common.h:597:4: style: Struct 'DistanceComparatorCached' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_common.h:610:4: style: Struct 'IndexComparator' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] genie/src/hclust2_distance.h:141:13: style: The destructor '~GenericMatrixDistance' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:105:13: note: Virtual destructor in base class genie/src/hclust2_distance.h:141:13: note: Destructor in derived class genie/src/hclust2_distance.h:153:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:153:19: note: Function in derived class genie/src/hclust2_distance.h:156:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:110:26: note: Virtual function in base class genie/src/hclust2_distance.h:156:26: note: Function in derived class genie/src/hclust2_distance.h:168:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:168:19: note: Function in derived class genie/src/hclust2_distance.h:171:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:110:26: note: Virtual function in base class genie/src/hclust2_distance.h:171:26: note: Function in derived class genie/src/hclust2_distance.h:191:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:191:19: note: Function in derived class genie/src/hclust2_distance.h:194:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:110:26: note: Virtual function in base class genie/src/hclust2_distance.h:194:26: note: Function in derived class genie/src/hclust2_distance.h:204:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:204:19: note: Function in derived class genie/src/hclust2_distance.h:207:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:110:26: note: Virtual function in base class genie/src/hclust2_distance.h:207:26: note: Function in derived class genie/src/hclust2_distance.h:217:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:217:19: note: Function in derived class genie/src/hclust2_distance.h:220:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:110:26: note: Virtual function in base class genie/src/hclust2_distance.h:220:26: note: Function in derived class genie/src/hclust2_distance.h:234:25: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:110:26: note: Virtual function in base class genie/src/hclust2_distance.h:234:25: note: Function in derived class genie/src/hclust2_distance.h:237:12: style: The destructor '~StringDistanceDouble' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:105:13: note: Virtual destructor in base class genie/src/hclust2_distance.h:237:12: note: Destructor in derived class genie/src/hclust2_distance.h:249:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:110:26: note: Virtual function in base class genie/src/hclust2_distance.h:249:26: note: Function in derived class genie/src/hclust2_distance.h:252:13: style: The destructor '~StringDistanceInt' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:105:13: note: Virtual destructor in base class genie/src/hclust2_distance.h:252:13: note: Destructor in derived class genie/src/hclust2_distance.h:264:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:110:26: note: Virtual function in base class genie/src/hclust2_distance.h:264:26: note: Function in derived class genie/src/hclust2_distance.h:267:13: style: The destructor '~StringDistanceChar' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:105:13: note: Virtual destructor in base class genie/src/hclust2_distance.h:267:13: note: Destructor in derived class genie/src/hclust2_distance.h:280:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:280:19: note: Function in derived class genie/src/hclust2_distance.h:284:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:249:26: note: Virtual function in base class genie/src/hclust2_distance.h:284:26: note: Function in derived class genie/src/hclust2_distance.h:307:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:307:19: note: Function in derived class genie/src/hclust2_distance.h:311:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:264:26: note: Virtual function in base class genie/src/hclust2_distance.h:311:26: note: Function in derived class genie/src/hclust2_distance.h:330:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:330:19: note: Function in derived class genie/src/hclust2_distance.h:333:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:249:26: note: Virtual function in base class genie/src/hclust2_distance.h:333:26: note: Function in derived class genie/src/hclust2_distance.h:341:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:341:19: note: Function in derived class genie/src/hclust2_distance.h:344:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:264:26: note: Virtual function in base class genie/src/hclust2_distance.h:344:26: note: Function in derived class genie/src/hclust2_distance.h:353:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:353:19: note: Function in derived class genie/src/hclust2_distance.h:356:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:249:26: note: Virtual function in base class genie/src/hclust2_distance.h:356:26: note: Function in derived class genie/src/hclust2_distance.h:364:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:364:19: note: Function in derived class genie/src/hclust2_distance.h:367:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:264:26: note: Virtual function in base class genie/src/hclust2_distance.h:367:26: note: Function in derived class genie/src/hclust2_distance.h:380:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:380:19: note: Function in derived class genie/src/hclust2_distance.h:394:13: style: The destructor '~GenericRDistance' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:105:13: note: Virtual destructor in base class genie/src/hclust2_distance.h:394:13: note: Destructor in derived class genie/src/hclust2_distance.h:408:19: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:408:19: note: Function in derived class genie/src/hclust2_distance.h:411:26: style: The function 'getLabels' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:109:26: note: Virtual function in base class genie/src/hclust2_distance.h:411:26: note: Function in derived class genie/src/hclust2_distance.h:412:26: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:110:26: note: Virtual function in base class genie/src/hclust2_distance.h:412:26: note: Function in derived class genie/src/hclust2_distance.h:423:13: style: The destructor '~DistObjectDistance' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:105:13: note: Virtual destructor in base class genie/src/hclust2_distance.h:423:13: note: Destructor in derived class genie/src/hclust2_distance.h:435:18: style: The function 'compute' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:101:19: note: Virtual function in base class genie/src/hclust2_distance.h:435:18: note: Function in derived class genie/src/hclust2_distance.h:438:25: style: The function 'getDistMethod' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:234:25: note: Virtual function in base class genie/src/hclust2_distance.h:438:25: note: Function in derived class genie/src/hclust2_distance.h:446:12: style: The destructor '~Euclinf' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] genie/src/hclust2_distance.h:237:12: note: Virtual destructor in base class genie/src/hclust2_distance.h:446:12: note: Destructor in derived class genie/src/hclust2_distance.cpp:493:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NA_INTEGER [valueFlowBailoutIncompleteVar] genie/src/hclust2_distance.cpp:517:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NA_STRING [valueFlowBailoutIncompleteVar] genie/src/hclust2_distance.cpp:156:21: style: The member function 'grup::DistanceStats::print' can be static. [functionStatic] genie/src/hclust2_distance.h:74:9: note: The member function 'grup::DistanceStats::print' can be static. genie/src/hclust2_distance.cpp:156:21: note: The member function 'grup::DistanceStats::print' can be static. genie/src/hclust2_distance.cpp:375:4: warning: Class 'GenericMatrixDistance' does not have a copy constructor which is recommended since it has dynamic memory/resource management. [noCopyConstructor] genie/src/hclust2_distance.cpp:375:4: warning: Class 'GenericMatrixDistance' does not have a operator= which is recommended since it has dynamic memory/resource management. [noOperatorEq] genie/src/hclust2_distance.cpp:538:4: warning: Class 'StringDistanceDouble' does not have a copy constructor which is recommended since it has dynamic memory/resource management. [noCopyConstructor] genie/src/hclust2_distance.cpp:538:4: warning: Class 'StringDistanceDouble' does not have a operator= which is recommended since it has dynamic memory/resource management. [noOperatorEq] genie/src/hclust2_distance.cpp:482:4: warning: Class 'StringDistanceInt' does not have a copy constructor which is recommended since it has dynamic memory/resource management. [noCopyConstructor] genie/src/hclust2_distance.cpp:482:4: warning: Class 'StringDistanceInt' does not have a operator= which is recommended since it has dynamic memory/resource management. [noOperatorEq] genie/src/hclust2_distance.cpp:512:4: warning: Class 'StringDistanceChar' does not have a copy constructor which is recommended since it has dynamic memory/resource management. [noCopyConstructor] genie/src/hclust2_distance.cpp:512:4: warning: Class 'StringDistanceChar' does not have a operator= which is recommended since it has dynamic memory/resource management. [noOperatorEq] genie/src/hclust2_mstbased_gini.cpp:127:4: style: Assignment of function parameter has no effect outside the function. [uselessAssignmentArg] genie/src/hclust2_result.h:57:24: style:inconclusive: Technically the member function 'grup::HClustResult::getLinks' can be const. [functionConst] genie/src/hclust2_result.h:58:24: style:inconclusive: Technically the member function 'grup::HClustResult::getHeight' can be const. [functionConst] genie/src/hclust2_mstbased_gini.cpp:107:26: style:inconclusive: Technically the member function 'grup::HClustMSTbasedGini::linkAndRecomputeGini' can be const. [functionConst] genie/src/hclust2_mstbased_gini.h:51:9: note: Technically the member function 'grup::HClustMSTbasedGini::linkAndRecomputeGini' can be const. genie/src/hclust2_mstbased_gini.cpp:107:26: note: Technically the member function 'grup::HClustMSTbasedGini::linkAndRecomputeGini' can be const. genie/src/hclust2_mstbased_gini.h:60:30: style:inconclusive: Technically the member function 'grup::HClustMSTbasedGini::getStats' can be const. [functionConst] genie/src/hclust2_mstbased_gini.h:61:32: style:inconclusive: Technically the member function 'grup::HClustMSTbasedGini::getOptions' can be const. [functionConst] genie/src/hclust2_mstbased_gini.cpp:127:7: style: Variable 's1' is assigned a value that is never used. [unreadVariable] genie/src/hclust2_rcpp_gini.cpp:27:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable R_NilValue [valueFlowBailoutIncompleteVar] diff: DONE