2024-03-25 19:25 ftp://ftp.de.debian.org/debian/pool/main/s/smartmontools/smartmontools_7.4.orig.tar.xz cppcheck-options: --library=posix --library=gnu --showtime=top5 --check-library --inconclusive --enable=style,information --inline-suppr --disable=missingInclude --suppress=unmatchedSuppression --template=daca2 --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=valueFlowBailoutIncompleteVar -D__GNUC__ --platform=unix64 -j4 platform: Linux-6.1.0-0.deb11.6-amd64-x86_64-with-glibc2.31 python: 3.9.2 client-version: 1.3.45 compiler: g++ (Debian 10.2.1-6) 10.2.1 20210110 cppcheck: head 2.13.0 head-info: b967620 (2024-03-25 18:58:14 +0100) count: 285 277 elapsed-time: 3.5 11.5 head-timing-info: Tokenizer::simplifyTokens1::ValueFlow: 2.10831s (avg. 2.10831s - 1 result(s)) valueFlowCondition(SimpleConditionHandler{}, tokenlist, symboldatabase, errorLogger, settings, skippedFunctions): 0.626926s (avg. 0.156731s - 4 result(s)) valueFlowAfterAssign(tokenlist, symboldatabase, errorLogger, settings, skippedFunctions): 0.465639s (avg. 0.11641s - 4 result(s)) valueFlowLifetime(tokenlist, errorLogger, settings): 0.427429s (avg. 0.0854858s - 5 result(s)) valueFlowSubFunction(tokenlist, symboldatabase, errorLogger, settings): 0.3422s (avg. 0.08555s - 4 result(s)) Overall time: 2.24614s old-timing-info: Tokenizer::simplifyTokens1::ValueFlow: 10.953s (avg. 10.953s - 1 result(s)) valueFlowLifetime(tokenlist, errorLogger, settings): 7.16591s (avg. 1.43318s - 5 result(s)) valueFlowAfterAssign(tokenlist, symboldatabase, errorLogger, settings, skippedFunctions): 1.19932s (avg. 0.299831s - 4 result(s)) valueFlowCondition(SimpleConditionHandler{}, tokenlist, symboldatabase, errorLogger, settings, skippedFunctions): 1.07172s (avg. 0.26793s - 4 result(s)) valueFlowSymbolic(tokenlist, symboldatabase, settings): 0.920487s (avg. 0.920487s - 1 result(s)) Overall time: 11.3952s head results: smartmontools-7.4/atacmds.cpp:378:58: error: There is an unknown macro here somewhere. Configuration is required. If PACKAGE_BUGREPORT is a macro then please configure it. [unknownMacro] smartmontools-7.4/dev_interface.h:815:8: performance:inconclusive: Technically the member function 'any_device_auto_ptr < smart_device >::fail' can be static (but you may consider moving to unnamed namespace). [functionStatic] smartmontools-7.4/utility.h:96:11: style: C-style pointer casting [cstyleCast] smartmontools-7.4/utility.h:98:11: style: C-style pointer casting [cstyleCast] smartmontools-7.4/utility.h:100:11: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_ata_cmd_set.cpp:34:17: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_interface.h:815:8: performance:inconclusive: Technically the member function 'any_device_auto_ptr < ata_device >::fail' can be static (but you may consider moving to unnamed namespace). [functionStatic] smartmontools-7.4/dev_tunnelled.h:30:12: style: The destructor '~tunnelled_device_base' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/dev_tunnelled.h:30:12: note: Destructor in derived class smartmontools-7.4/dev_intelliprop.cpp:180:44: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_intelliprop.cpp:206:42: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_intelliprop.cpp:212:45: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_areca.h:125:7: style:inconclusive: Technically the member function 'generic_areca_device::get_disknum' can be const. [functionConst] smartmontools-7.4/dev_areca.h:128:7: style:inconclusive: Technically the member function 'generic_areca_device::get_encnum' can be const. [functionConst] smartmontools-7.4/dev_areca.h:95:4: style: The destructor '~generic_areca_device' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/dev_areca.h:95:4: note: Destructor in derived class smartmontools-7.4/dev_areca.h:143:4: style: The destructor '~areca_ata_device' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/dev_areca.h:143:4: note: Destructor in derived class smartmontools-7.4/dev_areca.h:164:4: style: The destructor '~areca_scsi_device' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/dev_areca.h:164:4: note: Destructor in derived class smartmontools-7.4/dev_areca.cpp:135:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_areca.cpp:149:14: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_areca.cpp:178:16: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_areca.cpp:207:31: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_areca.cpp:455:14: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_areca.cpp:500:37: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_areca.cpp:504:19: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_areca.cpp:129:18: style: Variable 'areca_return_packet' can be declared as pointer to const [constVariablePointer] smartmontools-7.4/ataidentify.cpp:591:22: warning: %n in format string (no. 3) requires 'int *' but the argument type is 'signed int'. [invalidScanfArgType_int] smartmontools-7.4/ataidentify.cpp:594:27: warning: %n in format string (no. 2) requires 'int *' but the argument type is 'signed int'. [invalidScanfArgType_int] smartmontools-7.4/ataidentify.cpp:597:14: warning: %n in format string (no. 3) requires 'int *' but the argument type is 'signed int'. [invalidScanfArgType_int] smartmontools-7.4/ataidentify.cpp:600:14: warning: %n in format string (no. 2) requires 'int *' but the argument type is 'signed int'. [invalidScanfArgType_int] smartmontools-7.4/ataidentify.cpp:569:31: style: C-style pointer casting [cstyleCast] smartmontools-7.4/ataidentify.cpp:684:49: style: C-style pointer casting [cstyleCast] smartmontools-7.4/ataidentify.cpp:701:31: style: C-style pointer casting [cstyleCast] smartmontools-7.4/ataidentify.cpp:702:31: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_legacy.cpp:58:12: style: The destructor '~legacy_smart_device' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/dev_legacy.cpp:58:12: note: Destructor in derived class smartmontools-7.4/dev_legacy.cpp:119:15: style: The function 'ata_command_interface' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_ata_cmd_set.h:33:15: note: Virtual function in base class smartmontools-7.4/dev_legacy.cpp:119:15: note: Function in derived class smartmontools-7.4/dev_interface.cpp:76:28: style: Return value 'smi()->set_err_var(&m_err,no)' is always false [knownConditionTrueFalse] smartmontools-7.4/dev_interface.cpp:76:28: note: Calling function 'set_err_var' returns 0 smartmontools-7.4/dev_interface.cpp:76:28: note: Return value 'smi()->set_err_var(&m_err,no)' is always false smartmontools-7.4/farmprint.cpp:154:46: error: There is an unknown macro here somewhere. Configuration is required. If PACKAGE_BUGREPORT is a macro then please configure it. [unknownMacro] smartmontools-7.4/sg_unaligned.h:258:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:263:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:264:19: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:270:39: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:275:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:276:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:282:36: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:288:36: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:294:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:299:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:300:19: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:305:49: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:311:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:312:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:317:42: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:323:42: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:336:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:337:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:344:39: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:355:39: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:366:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:367:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:368:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:375:36: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:382:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:388:49: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:394:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:395:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:396:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:402:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:403:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:404:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:405:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:406:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:407:10: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:418:39: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:439:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:440:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:441:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:466:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:467:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/sg_unaligned.h:468:18: style: C-style pointer casting [cstyleCast] smartmontools-7.4/dev_jmb39x_raid.cpp:677:6: style: C-style pointer casting [cstyleCast] smartmontools-7.4/getopt/getopt1.c:36:21: style:inconclusive: Function '_getopt_long_r' argument 1 names different: declaration '___argc' definition 'argc'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:107:32: note: Function '_getopt_long_r' argument 1 names different: declaration '___argc' definition 'argc'. smartmontools-7.4/getopt/getopt1.c:36:21: note: Function '_getopt_long_r' argument 1 names different: declaration '___argc' definition 'argc'. smartmontools-7.4/getopt/getopt1.c:36:34: style:inconclusive: Function '_getopt_long_r' argument 2 names different: declaration '___argv' definition 'argv'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:107:48: note: Function '_getopt_long_r' argument 2 names different: declaration '___argv' definition 'argv'. smartmontools-7.4/getopt/getopt1.c:36:34: note: Function '_getopt_long_r' argument 2 names different: declaration '___argv' definition 'argv'. smartmontools-7.4/getopt/getopt1.c:36:52: style:inconclusive: Function '_getopt_long_r' argument 3 names different: declaration '__shortopts' definition 'options'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:108:19: note: Function '_getopt_long_r' argument 3 names different: declaration '__shortopts' definition 'options'. smartmontools-7.4/getopt/getopt1.c:36:52: note: Function '_getopt_long_r' argument 3 names different: declaration '__shortopts' definition 'options'. smartmontools-7.4/getopt/getopt1.c:37:24: style:inconclusive: Function '_getopt_long_r' argument 4 names different: declaration '__longopts' definition 'long_options'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:109:28: note: Function '_getopt_long_r' argument 4 names different: declaration '__longopts' definition 'long_options'. smartmontools-7.4/getopt/getopt1.c:37:24: note: Function '_getopt_long_r' argument 4 names different: declaration '__longopts' definition 'long_options'. smartmontools-7.4/getopt/getopt1.c:37:43: style:inconclusive: Function '_getopt_long_r' argument 5 names different: declaration '__longind' definition 'opt_index'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:109:45: note: Function '_getopt_long_r' argument 5 names different: declaration '__longind' definition 'opt_index'. smartmontools-7.4/getopt/getopt1.c:37:43: note: Function '_getopt_long_r' argument 5 names different: declaration '__longind' definition 'opt_index'. smartmontools-7.4/getopt/getopt1.c:38:24: style:inconclusive: Function '_getopt_long_r' argument 6 names different: declaration '__data' definition 'd'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:110:28: note: Function '_getopt_long_r' argument 6 names different: declaration '__data' definition 'd'. smartmontools-7.4/getopt/getopt1.c:38:24: note: Function '_getopt_long_r' argument 6 names different: declaration '__data' definition 'd'. smartmontools-7.4/getopt/getopt1.c:59:26: style:inconclusive: Function '_getopt_long_only_r' argument 1 names different: declaration '___argc' definition 'argc'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:112:37: note: Function '_getopt_long_only_r' argument 1 names different: declaration '___argc' definition 'argc'. smartmontools-7.4/getopt/getopt1.c:59:26: note: Function '_getopt_long_only_r' argument 1 names different: declaration '___argc' definition 'argc'. smartmontools-7.4/getopt/getopt1.c:59:39: style:inconclusive: Function '_getopt_long_only_r' argument 2 names different: declaration '___argv' definition 'argv'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:112:53: note: Function '_getopt_long_only_r' argument 2 names different: declaration '___argv' definition 'argv'. smartmontools-7.4/getopt/getopt1.c:59:39: note: Function '_getopt_long_only_r' argument 2 names different: declaration '___argv' definition 'argv'. smartmontools-7.4/getopt/getopt1.c:59:57: style:inconclusive: Function '_getopt_long_only_r' argument 3 names different: declaration '__shortopts' definition 'options'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:113:17: note: Function '_getopt_long_only_r' argument 3 names different: declaration '__shortopts' definition 'options'. smartmontools-7.4/getopt/getopt1.c:59:57: note: Function '_getopt_long_only_r' argument 3 names different: declaration '__shortopts' definition 'options'. smartmontools-7.4/getopt/getopt1.c:60:29: style:inconclusive: Function '_getopt_long_only_r' argument 4 names different: declaration '__longopts' definition 'long_options'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:114:26: note: Function '_getopt_long_only_r' argument 4 names different: declaration '__longopts' definition 'long_options'. smartmontools-7.4/getopt/getopt1.c:60:29: note: Function '_getopt_long_only_r' argument 4 names different: declaration '__longopts' definition 'long_options'. smartmontools-7.4/getopt/getopt1.c:60:48: style:inconclusive: Function '_getopt_long_only_r' argument 5 names different: declaration '__longind' definition 'opt_index'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:115:10: note: Function '_getopt_long_only_r' argument 5 names different: declaration '__longind' definition 'opt_index'. smartmontools-7.4/getopt/getopt1.c:60:48: note: Function '_getopt_long_only_r' argument 5 names different: declaration '__longind' definition 'opt_index'. smartmontools-7.4/getopt/getopt1.c:61:29: style:inconclusive: Function '_getopt_long_only_r' argument 6 names different: declaration '__data' definition 'd'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:116:26: note: Function '_getopt_long_only_r' argument 6 names different: declaration '__data' definition 'd'. smartmontools-7.4/getopt/getopt1.c:61:29: note: Function '_getopt_long_only_r' argument 6 names different: declaration '__data' definition 'd'. smartmontools-7.4/farmcmds.cpp:149:26: style: Parameter 'scsi_vendor' can be declared as pointer to const [constParameterPointer] smartmontools-7.4/knowndrives.cpp:184:55: error: There is an unknown macro here somewhere. Configuration is required. If PACKAGE_BUGREPORT is a macro then please configure it. [unknownMacro] smartmontools-7.4/getopt/getopt.c:484:25: style:inconclusive: Function '_getopt_internal_r' argument 1 names different: declaration '___argc' definition 'argc'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:101:36: note: Function '_getopt_internal_r' argument 1 names different: declaration '___argc' definition 'argc'. smartmontools-7.4/getopt/getopt.c:484:25: note: Function '_getopt_internal_r' argument 1 names different: declaration '___argc' definition 'argc'. smartmontools-7.4/getopt/getopt.c:484:38: style:inconclusive: Function '_getopt_internal_r' argument 2 names different: declaration '___argv' definition 'argv'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:101:52: note: Function '_getopt_internal_r' argument 2 names different: declaration '___argv' definition 'argv'. smartmontools-7.4/getopt/getopt.c:484:38: note: Function '_getopt_internal_r' argument 2 names different: declaration '___argv' definition 'argv'. smartmontools-7.4/getopt/getopt.c:484:56: style:inconclusive: Function '_getopt_internal_r' argument 3 names different: declaration '__shortopts' definition 'optstring'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:102:23: note: Function '_getopt_internal_r' argument 3 names different: declaration '__shortopts' definition 'optstring'. smartmontools-7.4/getopt/getopt.c:484:56: note: Function '_getopt_internal_r' argument 3 names different: declaration '__shortopts' definition 'optstring'. smartmontools-7.4/getopt/getopt.c:485:28: style:inconclusive: Function '_getopt_internal_r' argument 4 names different: declaration '__longopts' definition 'longopts'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:103:32: note: Function '_getopt_internal_r' argument 4 names different: declaration '__longopts' definition 'longopts'. smartmontools-7.4/getopt/getopt.c:485:28: note: Function '_getopt_internal_r' argument 4 names different: declaration '__longopts' definition 'longopts'. smartmontools-7.4/getopt/getopt.c:485:43: style:inconclusive: Function '_getopt_internal_r' argument 5 names different: declaration '__longind' definition 'longind'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:103:49: note: Function '_getopt_internal_r' argument 5 names different: declaration '__longind' definition 'longind'. smartmontools-7.4/getopt/getopt.c:485:43: note: Function '_getopt_internal_r' argument 5 names different: declaration '__longind' definition 'longind'. smartmontools-7.4/getopt/getopt.c:486:11: style:inconclusive: Function '_getopt_internal_r' argument 6 names different: declaration '__long_only' definition 'long_only'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:104:15: note: Function '_getopt_internal_r' argument 6 names different: declaration '__long_only' definition 'long_only'. smartmontools-7.4/getopt/getopt.c:486:11: note: Function '_getopt_internal_r' argument 6 names different: declaration '__long_only' definition 'long_only'. smartmontools-7.4/getopt/getopt.c:486:43: style:inconclusive: Function '_getopt_internal_r' argument 7 names different: declaration '__data' definition 'd'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:104:49: note: Function '_getopt_internal_r' argument 7 names different: declaration '__data' definition 'd'. smartmontools-7.4/getopt/getopt.c:486:43: note: Function '_getopt_internal_r' argument 7 names different: declaration '__data' definition 'd'. smartmontools-7.4/getopt/getopt.c:486:50: style:inconclusive: Function '_getopt_internal_r' argument 8 names different: declaration '__posixly_correct' definition 'posixly_correct'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:105:15: note: Function '_getopt_internal_r' argument 8 names different: declaration '__posixly_correct' definition 'posixly_correct'. smartmontools-7.4/getopt/getopt.c:486:50: note: Function '_getopt_internal_r' argument 8 names different: declaration '__posixly_correct' definition 'posixly_correct'. smartmontools-7.4/getopt/getopt.c:716:23: style:inconclusive: Function '_getopt_internal' argument 1 names different: declaration '___argc' definition 'argc'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:25:34: note: Function '_getopt_internal' argument 1 names different: declaration '___argc' definition 'argc'. smartmontools-7.4/getopt/getopt.c:716:23: note: Function '_getopt_internal' argument 1 names different: declaration '___argc' definition 'argc'. smartmontools-7.4/getopt/getopt.c:716:36: style:inconclusive: Function '_getopt_internal' argument 2 names different: declaration '___argv' definition 'argv'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:25:50: note: Function '_getopt_internal' argument 2 names different: declaration '___argv' definition 'argv'. smartmontools-7.4/getopt/getopt.c:716:36: note: Function '_getopt_internal' argument 2 names different: declaration '___argv' definition 'argv'. smartmontools-7.4/getopt/getopt.c:716:54: style:inconclusive: Function '_getopt_internal' argument 3 names different: declaration '__shortopts' definition 'optstring'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:26:21: note: Function '_getopt_internal' argument 3 names different: declaration '__shortopts' definition 'optstring'. smartmontools-7.4/getopt/getopt.c:716:54: note: Function '_getopt_internal' argument 3 names different: declaration '__shortopts' definition 'optstring'. smartmontools-7.4/getopt/getopt.c:717:26: style:inconclusive: Function '_getopt_internal' argument 4 names different: declaration '__longopts' definition 'longopts'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:27:30: note: Function '_getopt_internal' argument 4 names different: declaration '__longopts' definition 'longopts'. smartmontools-7.4/getopt/getopt.c:717:26: note: Function '_getopt_internal' argument 4 names different: declaration '__longopts' definition 'longopts'. smartmontools-7.4/getopt/getopt.c:717:41: style:inconclusive: Function '_getopt_internal' argument 5 names different: declaration '__longind' definition 'longind'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:27:47: note: Function '_getopt_internal' argument 5 names different: declaration '__longind' definition 'longind'. smartmontools-7.4/getopt/getopt.c:717:41: note: Function '_getopt_internal' argument 5 names different: declaration '__longind' definition 'longind'. smartmontools-7.4/getopt/getopt.c:717:54: style:inconclusive: Function '_getopt_internal' argument 6 names different: declaration '__long_only' definition 'long_only'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:28:13: note: Function '_getopt_internal' argument 6 names different: declaration '__long_only' definition 'long_only'. smartmontools-7.4/getopt/getopt.c:717:54: note: Function '_getopt_internal' argument 6 names different: declaration '__long_only' definition 'long_only'. smartmontools-7.4/getopt/getopt.c:718:9: style:inconclusive: Function '_getopt_internal' argument 7 names different: declaration '__posixly_correct' definition 'posixly_correct'. [funcArgNamesDifferent] smartmontools-7.4/getopt/getopt_int.h:28:30: note: Function '_getopt_internal' argument 7 names different: declaration '__posixly_correct' definition 'posixly_correct'. smartmontools-7.4/getopt/getopt.c:718:9: note: Function '_getopt_internal' argument 7 names different: declaration '__posixly_correct' definition 'posixly_correct'. smartmontools-7.4/nvmecmds.cpp:33:30: style: C-style pointer casting [cstyleCast] smartmontools-7.4/nvmecmds.cpp:47:12: style: C-style pointer casting [cstyleCast] smartmontools-7.4/nvmecmds.cpp:223:50: style: C-style pointer casting [cstyleCast] smartmontools-7.4/json.h:151:10: style:inconclusive: Technically the member function 'json::ref::operator+=' can be const. [functionConst] smartmontools-7.4/json.cpp:237:17: note: Technically the member function 'json::ref::operator+=' can be const. smartmontools-7.4/json.h:151:10: note: Technically the member function 'json::ref::operator+=' can be const. smartmontools-7.4/json.h:153:10: style:inconclusive: Technically the member function 'json::ref::operator+=' can be const. [functionConst] smartmontools-7.4/json.cpp:249:17: note: Technically the member function 'json::ref::operator+=' can be const. smartmontools-7.4/json.h:153:10: note: Technically the member function 'json::ref::operator+=' can be const. smartmontools-7.4/os_darwin.cpp:41:105: error: There is an unknown macro here somewhere. Configuration is required. If CONFIG_H_CVSID is a macro then please configure it. [unknownMacro] smartmontools-7.4/json.cpp:189:53: style: C-style pointer casting [cstyleCast] smartmontools-7.4/json.cpp:233:45: style: C-style pointer casting [cstyleCast] smartmontools-7.4/json.cpp:412:78: style:inconclusive: Function 'set_initlist_value' argument 2 names different: declaration 'value' definition 'val'. [funcArgNamesDifferent] smartmontools-7.4/json.h:258:74: note: Function 'set_initlist_value' argument 2 names different: declaration 'value' definition 'val'. smartmontools-7.4/json.cpp:412:78: note: Function 'set_initlist_value' argument 2 names different: declaration 'value' definition 'val'. smartmontools-7.4/json.cpp:202:23: style: Instance of 'ref' object is destroyed immediately, assignment has no effect. [unusedScopedObject] smartmontools-7.4/json.cpp:214:25: style: Instance of 'ref' object is destroyed immediately, assignment has no effect. [unusedScopedObject] smartmontools-7.4/json.cpp:253:23: style: Instance of 'ref' object is destroyed immediately, assignment has no effect. [unusedScopedObject] smartmontools-7.4/os_freebsd.cpp:79:120: error: There is an unknown macro here somewhere. Configuration is required. If CONFIG_H_CVSID is a macro then please configure it. [unknownMacro] smartmontools-7.4/os_generic.cpp:78:19: error: There is an unknown macro here somewhere. Configuration is required. If CONFIG_H_CVSID is a macro then please configure it. [unknownMacro] smartmontools-7.4/os_linux.cpp:339:28: error: There is an unknown macro here somewhere. Configuration is required. If PACKAGE_BUGREPORT is a macro then please configure it. [unknownMacro] smartmontools-7.4/os_netbsd.cpp:593:12: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] smartmontools-7.4/os_netbsd.cpp:517:7: performance:inconclusive: Technically the member function 'os_netbsd::netbsd_smart_interface::get_dev_names' can be static (but you may consider moving to unnamed namespace). [functionStatic] smartmontools-7.4/os_netbsd.cpp:566:29: note: Technically the member function 'os_netbsd::netbsd_smart_interface::get_dev_names' can be static (but you may consider moving to unnamed namespace). smartmontools-7.4/os_netbsd.cpp:517:7: note: Technically the member function 'os_netbsd::netbsd_smart_interface::get_dev_names' can be static (but you may consider moving to unnamed namespace). smartmontools-7.4/os_netbsd.cpp:55:12: style: The destructor '~netbsd_smart_device' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/os_netbsd.cpp:55:12: note: Destructor in derived class smartmontools-7.4/os_netbsd.cpp:57:16: style: The function 'is_open' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:186:16: note: Virtual function in base class smartmontools-7.4/os_netbsd.cpp:57:16: note: Function in derived class smartmontools-7.4/os_netbsd.cpp:59:16: style: The function 'open' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:189:16: note: Virtual function in base class smartmontools-7.4/os_netbsd.cpp:59:16: note: Function in derived class smartmontools-7.4/os_netbsd.cpp:61:16: style: The function 'close' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:192:16: note: Virtual function in base class smartmontools-7.4/os_netbsd.cpp:61:16: note: Function in derived class smartmontools-7.4/os_netbsd.cpp:185:21: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_netbsd.cpp:190:21: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_netbsd.cpp:214:14: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_netbsd.cpp:379:16: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_netbsd.cpp:581:21: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_netbsd.cpp:589:14: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_netbsd.cpp:597:13: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_netbsd.cpp:612:17: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_openbsd.cpp:465:12: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] smartmontools-7.4/os_openbsd.cpp:391:7: performance:inconclusive: Technically the member function 'os_openbsd::openbsd_smart_interface::get_dev_names' can be static (but you may consider moving to unnamed namespace). [functionStatic] smartmontools-7.4/os_openbsd.cpp:437:30: note: Technically the member function 'os_openbsd::openbsd_smart_interface::get_dev_names' can be static (but you may consider moving to unnamed namespace). smartmontools-7.4/os_openbsd.cpp:391:7: note: Technically the member function 'os_openbsd::openbsd_smart_interface::get_dev_names' can be static (but you may consider moving to unnamed namespace). smartmontools-7.4/os_openbsd.cpp:50:12: style: The destructor '~openbsd_smart_device' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/os_openbsd.cpp:50:12: note: Destructor in derived class smartmontools-7.4/os_openbsd.cpp:52:16: style: The function 'is_open' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:186:16: note: Virtual function in base class smartmontools-7.4/os_openbsd.cpp:52:16: note: Function in derived class smartmontools-7.4/os_openbsd.cpp:54:16: style: The function 'open' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:189:16: note: Virtual function in base class smartmontools-7.4/os_openbsd.cpp:54:16: note: Function in derived class smartmontools-7.4/os_openbsd.cpp:56:16: style: The function 'close' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:192:16: note: Virtual function in base class smartmontools-7.4/os_openbsd.cpp:56:16: note: Function in derived class smartmontools-7.4/os_openbsd.cpp:181:21: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_openbsd.cpp:186:21: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_openbsd.cpp:266:16: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_openbsd.cpp:452:21: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_openbsd.cpp:460:14: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_openbsd.cpp:472:13: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_openbsd.cpp:481:17: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_os2.cpp:488:28: error: There is an unknown macro here somewhere. Configuration is required. If PACKAGE_BUGREPORT is a macro then please configure it. [unknownMacro] smartmontools-7.4/os_qnxnto.cpp:29:105: error: There is an unknown macro here somewhere. Configuration is required. If CONFIG_H_CVSID is a macro then please configure it. [unknownMacro] smartmontools-7.4/nvmeprint.cpp:200:31: style: Variable 'jrns["eui64"]["ext_id"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/nvmeprint.cpp:366:18: style: Variable 'jref["other"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/nvmeprint.cpp:434:40: style: Variable 'jref["temperature_sensors"][i]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/nvmeprint.cpp:532:32: style: Variable 'jrefi["vendor_specific"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/nvmeprint.cpp:638:28: style: Variable 'jrefi["status_code"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/os_win32.cpp:4297:9: error: There is an unknown macro here somewhere. Configuration is required. If PACKAGE_BUGREPORT is a macro then please configure it. [unknownMacro] smartmontools-7.4/os_win32/popen_win32.cpp:186:21: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_win32/popen_win32.cpp:271:27: style:inconclusive: Function 'popen' argument 1 names different: declaration 'command' definition 'cmd'. [funcArgNamesDifferent] smartmontools-7.4/os_win32/popen.h:37:27: note: Function 'popen' argument 1 names different: declaration 'command' definition 'cmd'. smartmontools-7.4/os_win32/popen_win32.cpp:271:27: note: Function 'popen' argument 1 names different: declaration 'command' definition 'cmd'. smartmontools-7.4/os_win32/popen_win32.cpp:30:10: style: union member 'Anonymous0::sid_space' is never used. [unusedStructMember] smartmontools-7.4/os_win32/popen_win32.cpp:49:10: style: union member 'Anonymous1::user_space' is never used. [unusedStructMember] smartmontools-7.4/os_win32/popen_win32.cpp:72:10: style: union member 'Anonymous2::acl_space' is never used. [unusedStructMember] smartmontools-7.4/os_solaris.cpp:140:22: portability: Non reentrant function 'readdir' called. For threadsafe applications it is recommended to use the reentrant replacement function 'readdir_r'. [prohibitedreaddirCalled] smartmontools-7.4/os_solaris.cpp:296:9: style: The scope of the variable 'trunc' can be reduced. [variableScope] smartmontools-7.4/os_solaris.cpp:205:44: style: Parameter 'type' can be declared as pointer to const [constParameterPointer] smartmontools-7.4/os_win32/wmiquery.h:44:3: style:inconclusive: Technically the member function 'com_bstr::operatorBSTR' can be const. [functionConst] smartmontools-7.4/os_win32/wmiquery.cpp:110:46: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_win32/daemon_win32.cpp:421:5: warning: Return value of function freopen() is not used. [ignoredReturnValue] smartmontools-7.4/os_win32/daemon_win32.cpp:423:5: warning: Return value of function freopen() is not used. [ignoredReturnValue] smartmontools-7.4/os_win32/daemon_win32.cpp:425:5: warning: Return value of function freopen() is not used. [ignoredReturnValue] smartmontools-7.4/os_win32/daemon_win32.cpp:763:25: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_win32/daemon_win32.cpp:769:27: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_win32/daemon_win32.cpp:987:9: style: C-style pointer casting [cstyleCast] smartmontools-7.4/os_win32/daemon_win32.cpp:601:50: style:inconclusive: Function 'service_report_status' argument 2 names different: declaration 'waithint' definition 'seconds'. [funcArgNamesDifferent] smartmontools-7.4/os_win32/daemon_win32.cpp:215:50: note: Function 'service_report_status' argument 2 names different: declaration 'waithint' definition 'seconds'. smartmontools-7.4/os_win32/daemon_win32.cpp:601:50: note: Function 'service_report_status' argument 2 names different: declaration 'waithint' definition 'seconds'. smartmontools-7.4/os_win32/daemon_win32.cpp:492:36: style: Parameter 's' can be declared as pointer to const [constParameterPointer] smartmontools-7.4/regex/regcomp.c:138:5: error: There is an unknown macro here somewhere. Configuration is required. If gettext_noop is a macro then please configure it. [unknownMacro] smartmontools-7.4/regex/regex_internal.h:229:0: error: #error "Add case for new bitset_word_t size" [preprocessorErrorDirective] smartmontools-7.4/popen_as_ugid.cpp:171:11: portability: Non reentrant function 'getpwuid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwuid_r'. [prohibitedgetpwuidCalled] smartmontools-7.4/popen_as_ugid.cpp:174:11: portability: Non reentrant function 'getpwnam' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwnam_r'. [prohibitedgetpwnamCalled] smartmontools-7.4/popen_as_ugid.cpp:188:13: portability: Non reentrant function 'getgrgid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getgrgid_r'. [prohibitedgetgrgidCalled] smartmontools-7.4/popen_as_ugid.cpp:191:13: portability: Non reentrant function 'getgrnam' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getgrnam_r'. [prohibitedgetgrnamCalled] smartmontools-7.4/popen_as_ugid.cpp:202:11: portability: Non reentrant function 'getgrgid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getgrgid_r'. [prohibitedgetgrgidCalled] smartmontools-7.4/popen_as_ugid.cpp:169:7: warning: %n in format string (no. 2) requires 'int *' but the argument type is 'signed int'. [invalidScanfArgType_int] smartmontools-7.4/popen_as_ugid.cpp:186:9: warning: %n in format string (no. 2) requires 'int *' but the argument type is 'signed int'. [invalidScanfArgType_int] smartmontools-7.4/scsiata.cpp:752:32: error: There is an unknown macro here somewhere. Configuration is required. If PACKAGE_BUGREPORT is a macro then please configure it. [unknownMacro] smartmontools-7.4/regex/regex_internal.c:1641:19: style: Variable 'node' can be declared as pointer to const [constVariablePointer] smartmontools-7.4/regex/regex_internal.c:1693:19: style: Variable 'node' can be declared as pointer to const [constVariablePointer] smartmontools-7.4/scsinvme.cpp:408:13: error: There is an unknown macro here somewhere. Configuration is required. If PACKAGE_BUGREPORT is a macro then please configure it. [unknownMacro] smartmontools-7.4/regex/regexec.c:1404:37: warning: Obsolete function 'alloca' called. In C99 and later it is recommended to use a variable length array instead. [allocaCalled] smartmontools-7.4/regex/regexec.c:3302:42: warning: Obsolete function 'alloca' called. In C99 and later it is recommended to use a variable length array instead. [allocaCalled] smartmontools-7.4/regex/regexec.c:3349:7: warning: Obsolete function 'alloca' called. In C99 and later it is recommended to use a variable length array instead. [allocaCalled] smartmontools-7.4/regex/regexec.c:1659:11: style: Condition '!naccepted' is always true [knownConditionTrueFalse] smartmontools-7.4/regex/regexec.c:1643:23: note: Assignment 'naccepted=0', assigned value is 0 smartmontools-7.4/regex/regexec.c:1659:11: note: Condition '!naccepted' is always true smartmontools-7.4/regex/regexec.c:3067:11: style: Condition 'naccepted' is always false [knownConditionTrueFalse] smartmontools-7.4/regex/regexec.c:3022:23: note: Assignment 'naccepted=0', assigned value is 0 smartmontools-7.4/regex/regexec.c:3067:11: note: Condition 'naccepted' is always false smartmontools-7.4/regex/regexec.c:1979:27: style:inconclusive: Function 'check_dst_limits_calc_pos' argument 4 names different: declaration 'node' definition 'from_node'. [funcArgNamesDifferent] smartmontools-7.4/regex/regexec.c:96:15: note: Function 'check_dst_limits_calc_pos' argument 4 names different: declaration 'node' definition 'from_node'. smartmontools-7.4/regex/regexec.c:1979:27: note: Function 'check_dst_limits_calc_pos' argument 4 names different: declaration 'node' definition 'from_node'. smartmontools-7.4/regex/regexec.c:3512:21: style:inconclusive: Function 'group_nodes_into_DFAstates' argument 3 names different: declaration 'states_node' definition 'dests_node'. [funcArgNamesDifferent] smartmontools-7.4/regex/regexec.c:169:25: note: Function 'group_nodes_into_DFAstates' argument 3 names different: declaration 'states_node' definition 'dests_node'. smartmontools-7.4/regex/regexec.c:3512:21: note: Function 'group_nodes_into_DFAstates' argument 3 names different: declaration 'states_node' definition 'dests_node'. smartmontools-7.4/regex/regexec.c:3512:43: style:inconclusive: Function 'group_nodes_into_DFAstates' argument 4 names different: declaration 'states_ch' definition 'dests_ch'. [funcArgNamesDifferent] smartmontools-7.4/regex/regexec.c:170:22: note: Function 'group_nodes_into_DFAstates' argument 4 names different: declaration 'states_ch' definition 'dests_ch'. smartmontools-7.4/regex/regexec.c:3512:43: note: Function 'group_nodes_into_DFAstates' argument 4 names different: declaration 'states_ch' definition 'dests_ch'. smartmontools-7.4/regex/regexec.c:4112:37: style:inconclusive: Function 'match_ctx_init' argument 1 names different: declaration 'cache' definition 'mctx'. [funcArgNamesDifferent] smartmontools-7.4/regex/regexec.c:20:58: note: Function 'match_ctx_init' argument 1 names different: declaration 'cache' definition 'mctx'. smartmontools-7.4/regex/regexec.c:4112:37: note: Function 'match_ctx_init' argument 1 names different: declaration 'cache' definition 'mctx'. smartmontools-7.4/regex/regexec.c:4175:37: style:inconclusive: Function 'match_ctx_free' argument 1 names different: declaration 'cache' definition 'mctx'. [funcArgNamesDifferent] smartmontools-7.4/regex/regexec.c:23:49: note: Function 'match_ctx_free' argument 1 names different: declaration 'cache' definition 'mctx'. smartmontools-7.4/regex/regexec.c:4175:37: note: Function 'match_ctx_free' argument 1 names different: declaration 'cache' definition 'mctx'. smartmontools-7.4/regex/regexec.c:4190:42: style:inconclusive: Function 'match_ctx_add_entry' argument 1 names different: declaration 'cache' definition 'mctx'. [funcArgNamesDifferent] smartmontools-7.4/regex/regexec.c:24:63: note: Function 'match_ctx_add_entry' argument 1 names different: declaration 'cache' definition 'mctx'. smartmontools-7.4/regex/regexec.c:4190:42: note: Function 'match_ctx_add_entry' argument 1 names different: declaration 'cache' definition 'mctx'. smartmontools-7.4/regex/regexec.c:816:20: style: Variable 'pstate' can be declared as pointer to const [constVariablePointer] smartmontools-7.4/regex/regexec.c:1330:27: style: Parameter 'regs' can be declared as pointer to const [constParameterPointer] smartmontools-7.4/regex/regexec.c:1873:38: style: Variable 'ent' can be declared as pointer to const [constVariablePointer] smartmontools-7.4/regex/regexec.c:1982:34: style: Variable 'lim' can be declared as pointer to const [constVariablePointer] smartmontools-7.4/regex/regexec.c:2017:38: style: Variable 'ent' can be declared as pointer to const [constVariablePointer] smartmontools-7.4/regex/regexec.c:2113:38: style: Variable 'entry' can be declared as pointer to const [constVariablePointer] smartmontools-7.4/regex/regexec.c:2574:35: style: Variable 'bkref_ent' can be declared as pointer to const [constVariablePointer] smartmontools-7.4/regex/regexec.c:3009:51: style: Parameter 'mctx' can be declared as pointer to const [constParameterPointer] smartmontools-7.4/ataprint.cpp:0:0: debug: ValueFlow maximum iterations exceeded [valueFlowMaxIterations] smartmontools-7.4/smartctl.cpp:46:3: error: There is an unknown macro here somewhere. Configuration is required. If CONFIG_H_CVSID is a macro then please configure it. [unknownMacro] smartmontools-7.4/smartd.cpp:1683:44: error: There is an unknown macro here somewhere. Configuration is required. If SMARTMONTOOLS_SMARTDSCRIPTDIR is a macro then please configure it. [unknownMacro] smartmontools-7.4/utility.cpp:94:7: error: There is an unknown macro here somewhere. Configuration is required. If PACKAGE_VERSION is a macro then please configure it. [unknownMacro] smartmontools-7.4/ataprint.cpp:681:32: style: C-style pointer casting [cstyleCast] smartmontools-7.4/ataprint.cpp:1530:21: style: Same expression on both sides of '-'. [duplicateExpression] smartmontools-7.4/ataprint.cpp:618:25: style: Variable 'jref["bits_per_unit"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:876:31: style: Variable 'jref["passed"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:877:31: style: Variable 'jref["passed"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:978:31: style: Variable 'jref["passed"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:983:31: style: Variable 'jref["remaining_percent"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:1043:43: style: Variable 'jref["selective_self_test_supported"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:1061:40: style: Variable 'jref["attribute_autosave_enabled"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:1321:22: style: Variable 'jreff["other"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:1325:27: style: Variable 'jref["raw"]["string"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:1370:32: style: Variable 'jref["data_table_supported"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:1619:32: style: Variable 'jrefi["smart_sectors"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:1902:22: style: Variable 'jreff["other"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2076:31: style: Variable 'jrefi["power_on_hours"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2154:22: style: Variable 'jref["overflow"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2208:19: style: Variable 'jref["count"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2295:26: style: Variable 'jrefir["device"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2336:37: style: Variable 'jreficr["device_control"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2338:34: style: Variable 'jrefic["command_name"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2365:19: style: Variable 'jref["count"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2500:32: style: Variable 'jrefir["device_control"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2554:33: style: Variable 'jreficr["device_control"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2556:30: style: Variable 'jrefic["command_name"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2681:19: style: Variable 'jref["count"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2727:32: style: Variable 'jref["error_count_outdated"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2748:19: style: Variable 'jref["count"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2814:32: style: Variable 'jref["error_count_outdated"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2910:32: style: Variable 'jrefi["current_lba_max"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2924:31: style: Variable 'jrefc["status"]["string"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2951:35: style: Variable 'jreff["power_up_scan_pending"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:2959:40: style: Variable 'jref["power_up_scan_resume_minutes"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:3093:34: style: Variable 'jref["vendor_specific"][i]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:3162:26: style: Variable 'jref["table"][n]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:3192:36: style: Variable 'jref["write"]["deciseconds"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:3225:31: style: Variable 'jref["recommended_level"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:3254:26: style: Variable 'jref["with_standby"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/ataprint.cpp:3318:30: style: Variable 'jref["master_password_id"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/scsiprint.cpp:1034:34: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsiprint.cpp:1037:53: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsiprint.cpp:1042:38: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsiprint.cpp:2111:32: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsiprint.cpp:2119:32: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsiprint.cpp:2127:32: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsiprint.cpp:2135:32: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsiprint.cpp:2143:32: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsiprint.cpp:2238:34: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsiprint.cpp:2263:26: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsiprint.cpp:2843:30: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsiprint.cpp:2871:30: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsiprint.cpp:1459:14: style: The scope of the variable 'loop_pc' can be reduced. [variableScope] smartmontools-7.4/scsiprint.cpp:1459:23: style: The scope of the variable 'pl' can be reduced. [variableScope] smartmontools-7.4/scsiprint.cpp:2494:18: style: The scope of the variable 'q' can be reduced. [variableScope] smartmontools-7.4/scsiprint.cpp:2802:18: style: The scope of the variable 'q' can be reduced. [variableScope] smartmontools-7.4/scsiprint.cpp:2888:29: style: The scope of the variable 'lb_prov_j' can be reduced. [variableScope] smartmontools-7.4/scsiprint.cpp:3048:35: style: Variable 's_vpd_pp' can be declared as pointer to const [constVariablePointer] smartmontools-7.4/scsiprint.cpp:644:46: style: Variable 'jref["accum_power_on_hours"]' is assigned a value that is never used. [unreadVariable] smartmontools-7.4/scsicmds.cpp:318:17: style: The if condition is the same as the previous if condition [duplicateCondition] smartmontools-7.4/scsicmds.cpp:316:17: note: First condition smartmontools-7.4/scsicmds.cpp:318:17: note: Second condition smartmontools-7.4/scsicmds.cpp:279:21: style: Condition 'no_ascii' is always true [knownConditionTrueFalse] smartmontools-7.4/scsicmds.cpp:268:18: note: Assuming that condition 'no_ascii<0' is not redundant smartmontools-7.4/scsicmds.cpp:279:21: note: Condition 'no_ascii' is always true smartmontools-7.4/scsicmds.cpp:824:26: style: Condition '6==naa' is always true [knownConditionTrueFalse] smartmontools-7.4/scsicmds.cpp:815:42: note: Assuming that condition '5==naa' is not redundant smartmontools-7.4/scsicmds.cpp:801:35: note: Assuming that condition 'naa>6' is not redundant smartmontools-7.4/scsicmds.cpp:824:26: note: Condition '6==naa' is always true smartmontools-7.4/scsicmds.cpp:2048:23: style: Condition 'pagesize<4' is always false [knownConditionTrueFalse] smartmontools-7.4/scsicmds.cpp:2047:67: note: Assignment 'pagesize=sg_get_unaligned_be16(tBuf+2)+4', assigned value is greater than 3 smartmontools-7.4/scsicmds.cpp:2048:23: note: Condition 'pagesize<4' is always false smartmontools-7.4/scsicmds.cpp:85:20: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsicmds.cpp:846:54: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsicmds.cpp:3119:17: style: C-style pointer casting [cstyleCast] smartmontools-7.4/scsicmds.cpp:514:13: style: The scope of the variable 'cdb0' can be reduced. [variableScope] smartmontools-7.4/scsicmds.cpp:1572:22: style: The scope of the variable 'act_len' can be reduced. [variableScope] smartmontools-7.4/scsicmds.cpp:565:50: style:inconclusive: Function 'scsi_do_sense_disect' argument 1 names different: declaration 'in' definition 'io_buf'. [funcArgNamesDifferent] smartmontools-7.4/scsicmds.h:425:55: note: Function 'scsi_do_sense_disect' argument 1 names different: declaration 'in' definition 'io_buf'. smartmontools-7.4/scsicmds.cpp:565:50: note: Function 'scsi_do_sense_disect' argument 1 names different: declaration 'in' definition 'io_buf'. smartmontools-7.4/scsicmds.cpp:1609:57: style:inconclusive: Function 'scsiReadCapacity10' argument 2 names different: declaration 'last_lbp' definition 'last_lbap'. [funcArgNamesDifferent] smartmontools-7.4/scsicmds.h:488:61: note: Function 'scsiReadCapacity10' argument 2 names different: declaration 'last_lbp' definition 'last_lbap'. smartmontools-7.4/scsicmds.cpp:1609:57: note: Function 'scsiReadCapacity10' argument 2 names different: declaration 'last_lbp' definition 'last_lbap'. smartmontools-7.4/scsicmds.cpp:2720:40: style:inconclusive: Function 'scsiCountFailedSelfTests' argument 1 names different: declaration 'device' definition 'fd'. [funcArgNamesDifferent] smartmontools-7.4/scsicmds.h:516:44: note: Function 'scsiCountFailedSelfTests' argument 1 names different: declaration 'device' definition 'fd'. smartmontools-7.4/scsicmds.cpp:2720:40: note: Function 'scsiCountFailedSelfTests' argument 1 names different: declaration 'device' definition 'fd'. smartmontools-7.4/scsicmds.cpp:2771:38: style:inconclusive: Function 'scsiSelfTestInProgress' argument 1 names different: declaration 'device' definition 'fd'. [funcArgNamesDifferent] smartmontools-7.4/scsicmds.h:517:42: note: Function 'scsiSelfTestInProgress' argument 1 names different: declaration 'device' definition 'fd'. smartmontools-7.4/scsicmds.cpp:2771:38: note: Function 'scsiSelfTestInProgress' argument 1 names different: declaration 'device' definition 'fd'. smartmontools-7.4/scsicmds.cpp:2881:68: style:inconclusive: Function 'scsiGetSetCache' argument 3 names different: declaration 'wce' definition 'wcep'. [funcArgNamesDifferent] smartmontools-7.4/scsicmds.h:523:72: note: Function 'scsiGetSetCache' argument 3 names different: declaration 'wce' definition 'wcep'. smartmontools-7.4/scsicmds.cpp:2881:68: note: Function 'scsiGetSetCache' argument 3 names different: declaration 'wce' definition 'wcep'. smartmontools-7.4/scsicmds.cpp:2882:29: style:inconclusive: Function 'scsiGetSetCache' argument 4 names different: declaration 'rcd' definition 'rcdp'. [funcArgNamesDifferent] smartmontools-7.4/scsicmds.h:524:33: note: Function 'scsiGetSetCache' argument 4 names different: declaration 'rcd' definition 'rcdp'. smartmontools-7.4/scsicmds.cpp:2882:29: note: Function 'scsiGetSetCache' argument 4 names different: declaration 'rcd' definition 'rcdp'. smartmontools-7.4/scsicmds.cpp:2774:15: style: Variable 'ucp' can be declared as pointer to const [constVariablePointer] diff: head smartmontools-7.4/dev_areca.h:143:4: style: The destructor '~areca_ata_device' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/dev_areca.h:143:4: note: Destructor in derived class head smartmontools-7.4/dev_areca.h:164:4: style: The destructor '~areca_scsi_device' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/dev_areca.h:164:4: note: Destructor in derived class head smartmontools-7.4/dev_areca.h:95:4: style: The destructor '~generic_areca_device' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/dev_areca.h:95:4: note: Destructor in derived class head smartmontools-7.4/dev_legacy.cpp:58:12: style: The destructor '~legacy_smart_device' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/dev_legacy.cpp:58:12: note: Destructor in derived class head smartmontools-7.4/dev_tunnelled.h:30:12: style: The destructor '~tunnelled_device_base' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/dev_tunnelled.h:30:12: note: Destructor in derived class head smartmontools-7.4/os_netbsd.cpp:55:12: style: The destructor '~netbsd_smart_device' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/os_netbsd.cpp:55:12: note: Destructor in derived class head smartmontools-7.4/os_openbsd.cpp:50:12: style: The destructor '~openbsd_smart_device' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] smartmontools-7.4/dev_interface.h:78:12: note: Virtual destructor in base class smartmontools-7.4/os_openbsd.cpp:50:12: note: Destructor in derived class head smartmontools-7.4/regex/regexec.c:3009:51: style: Parameter 'mctx' can be declared as pointer to const [constParameterPointer] DONE