This commit is contained in:
parent
c76b05ad75
commit
30131837b5
|
@ -350,6 +350,10 @@ bool CmdLineParser::parseFromArgs(int argc, const char* const argv[])
|
||||||
mSettings.addEnabled("performance");
|
mSettings.addEnabled("performance");
|
||||||
mSettings.addEnabled("portability");
|
mSettings.addEnabled("portability");
|
||||||
}
|
}
|
||||||
|
if (enable_arg.find("information") != std::string::npos) {
|
||||||
|
mSettings->addEnabled("missingInclude");
|
||||||
|
printMessage("'--enable=information' will no longer implicitly enable 'missingInclude' starting with 2.16. Please enable it explicitly if you require it.");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// print all possible error messages..
|
// print all possible error messages..
|
||||||
|
|
|
@ -155,7 +155,6 @@ std::string Settings::parseEnabled(const std::string &str, std::tuple<SimpleEnab
|
||||||
severity.enable(Severity::portability);
|
severity.enable(Severity::portability);
|
||||||
} else if (str == "information") {
|
} else if (str == "information") {
|
||||||
severity.enable(Severity::information);
|
severity.enable(Severity::information);
|
||||||
checks.enable(Checks::missingInclude);
|
|
||||||
} else if (str == "unusedFunction") {
|
} else if (str == "unusedFunction") {
|
||||||
checks.enable(Checks::unusedFunction);
|
checks.enable(Checks::unusedFunction);
|
||||||
} else if (str == "missingInclude") {
|
} else if (str == "missingInclude") {
|
||||||
|
|
|
@ -3,4 +3,5 @@ release notes for cppcheck-2.11
|
||||||
- The platform type 'Unspecified' within .cppcheck projects has been deprecated and will be removed in Cppcheck 2.14. Please use 'unspecified' instead.
|
- The platform type 'Unspecified' within .cppcheck projects has been deprecated and will be removed in Cppcheck 2.14. Please use 'unspecified' instead.
|
||||||
- It is no longer necessary to run "--check-config" to get detailed "missingInclude" and "missingIncludeSystem" messages. They will always be issued in the regular analysis if "missingInclude" is enabled.
|
- It is no longer necessary to run "--check-config" to get detailed "missingInclude" and "missingIncludeSystem" messages. They will always be issued in the regular analysis if "missingInclude" is enabled.
|
||||||
- "missingInclude" and "missingIncludeSystem" are reported with "-j" is > 1 and processes are used in the backend (default in non-Windows binaries)
|
- "missingInclude" and "missingIncludeSystem" are reported with "-j" is > 1 and processes are used in the backend (default in non-Windows binaries)
|
||||||
- "missingInclude" and "missingIncludeSystem" will now cause the "--error-exitcode" to be applied
|
- "missingInclude" and "missingIncludeSystem" will now cause the "--error-exitcode" to be applied
|
||||||
|
- "--enable=information" will no longer implicitly enable "missingInclude" starting with 2.16. Please enable it explicitly if you require it.
|
|
@ -109,6 +109,7 @@ if (BUILD_TESTS)
|
||||||
endif()
|
endif()
|
||||||
if ("cfg-${TEST_NAME}" IN_LIST SKIP_TESTS)
|
if ("cfg-${TEST_NAME}" IN_LIST SKIP_TESTS)
|
||||||
else()
|
else()
|
||||||
|
# TODO: remove missingInclude disabling when it no longer is implied by --enable=information
|
||||||
# TODO: add syntax check
|
# TODO: add syntax check
|
||||||
add_test(NAME cfg-${TEST_NAME}
|
add_test(NAME cfg-${TEST_NAME}
|
||||||
COMMAND $<TARGET_FILE:cppcheck>
|
COMMAND $<TARGET_FILE:cppcheck>
|
||||||
|
@ -119,7 +120,7 @@ if (BUILD_TESTS)
|
||||||
--inconclusive
|
--inconclusive
|
||||||
--force
|
--force
|
||||||
--error-exitcode=1
|
--error-exitcode=1
|
||||||
--suppress=missingIncludeSystem
|
--disable=missingInclude
|
||||||
--inline-suppr
|
--inline-suppr
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/cfg/${CFG_TEST}
|
${CMAKE_CURRENT_SOURCE_DIR}/cfg/${CFG_TEST}
|
||||||
)
|
)
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for boost.cfg
|
// Test library configuration for boost.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=boost --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/boost.cpp
|
// $ cppcheck --check-library --library=boost --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/boost.cpp
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
// Test library configuration for bsd.cfg
|
// Test library configuration for bsd.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=bsd --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/bsd.c
|
// $ cppcheck --check-library --library=bsd --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/bsd.c
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for cairo.cfg
|
// Test library configuration for cairo.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=cairo --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/cairo.c
|
// $ cppcheck --check-library --library=cairo --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/cairo.c
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
// Test library configuration for cppunit.cfg
|
// Test library configuration for cppunit.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=cppunit --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/cppunit.cpp
|
// $ cppcheck --check-library --library=cppunit --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/cppunit.cpp
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for gnu.cfg
|
// Test library configuration for gnu.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=gnu --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/gnu.c
|
// $ cppcheck --check-library --library=gnu --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/gnu.c
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for googletest.cfg
|
// Test library configuration for googletest.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=googletest --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/googletest.cpp
|
// $ cppcheck --check-library --library=googletest --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/googletest.cpp
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for gtk.cfg
|
// Test library configuration for gtk.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=gtk --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr --library=gtk test/cfg/gtk.cpp
|
// $ cppcheck --check-library --library=gtk --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr --library=gtk test/cfg/gtk.cpp
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for kde.cfg
|
// Test library configuration for kde.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=kde --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/kde.cpp
|
// $ cppcheck --check-library --library=kde --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/kde.cpp
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for libcurl.cfg
|
// Test library configuration for libcurl.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=libcurl --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/libcurl.c
|
// $ cppcheck --check-library --library=libcurl --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/libcurl.c
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for libsigc++.cfg
|
// Test library configuration for libsigc++.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=libsigc++ --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/libsigc++.cpp
|
// $ cppcheck --check-library --library=libsigc++ --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/libsigc++.cpp
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for lua.cfg
|
// Test library configuration for lua.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=lua --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/lua.c
|
// $ cppcheck --check-library --library=lua --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/lua.c
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for opencv2.cfg
|
// Test library configuration for opencv2.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=opencv2 --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/opencv2.cpp
|
// $ cppcheck --check-library --library=opencv2 --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/opencv2.cpp
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for openmp.cfg
|
// Test library configuration for openmp.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=openmp --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/openmp.c
|
// $ cppcheck --check-library --library=openmp --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/openmp.c
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for openssl.cfg
|
// Test library configuration for openssl.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=openssl --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/openssl.c
|
// $ cppcheck --check-library --library=openssl --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/openssl.c
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for posix.cfg
|
// Test library configuration for posix.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=posix --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/posix.c
|
// $ cppcheck --check-library --library=posix --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/posix.c
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for python.cfg
|
// Test library configuration for python.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=python --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/python.c
|
// $ cppcheck --check-library --library=python --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/python.c
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for qt.cfg
|
// Test library configuration for qt.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=qt --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/qt.cpp
|
// $ cppcheck --check-library --library=qt --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/qt.cpp
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -22,8 +22,9 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/
|
||||||
CPPCHECK="$DIR"../../cppcheck
|
CPPCHECK="$DIR"../../cppcheck
|
||||||
CFG="$DIR"../../cfg/
|
CFG="$DIR"../../cfg/
|
||||||
|
|
||||||
|
# TODO: remove missingInclude disabling when it no longer is implied by --enable=information
|
||||||
# Cppcheck options
|
# Cppcheck options
|
||||||
CPPCHECK_OPT='--check-library --platform=unix64 --enable=style,information --inconclusive --force --error-exitcode=-1 --suppress=missingIncludeSystem --inline-suppr --template="{file}:{line}:{severity}:{id}:{message}"'
|
CPPCHECK_OPT='--check-library --platform=unix64 --enable=style,information --inconclusive --force --error-exitcode=-1 --disable=missingInclude --inline-suppr --template="{file}:{line}:{severity}:{id}:{message}"'
|
||||||
|
|
||||||
# Compiler settings
|
# Compiler settings
|
||||||
CXX=g++
|
CXX=g++
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for sqlite3.cfg
|
// Test library configuration for sqlite3.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=sqlite3 --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/sqlite3.c
|
// $ cppcheck --check-library --library=sqlite3 --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/sqlite3.c
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for std.cfg
|
// Test library configuration for std.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=std --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/std.c
|
// $ cppcheck --check-library --library=std --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/std.c
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for std.cfg
|
// Test library configuration for std.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=std --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/std.cpp
|
// $ cppcheck --check-library --library=std --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/std.cpp
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for windows.cfg
|
// Test library configuration for windows.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ cppcheck --check-library --library=windows --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/windows.cpp
|
// $ cppcheck --check-library --library=windows --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/windows.cpp
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// Test library configuration for wxwidgets.cfg
|
// Test library configuration for wxwidgets.cfg
|
||||||
//
|
//
|
||||||
// Usage:
|
// Usage:
|
||||||
// $ ./cppcheck --check-library --library=wxwidgets --enable=style,information --inconclusive --error-exitcode=1 --suppress=missingIncludeSystem --inline-suppr test/cfg/wxwidgets.cpp
|
// $ ./cppcheck --check-library --library=wxwidgets --enable=style,information --inconclusive --error-exitcode=1 --disable=missingInclude --inline-suppr test/cfg/wxwidgets.cpp
|
||||||
// =>
|
// =>
|
||||||
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
// No warnings about bad library configuration, unmatched suppressions, etc. exitcode=0
|
||||||
//
|
//
|
||||||
|
|
|
@ -93,6 +93,7 @@ private:
|
||||||
TEST_CASE(enabledStyle);
|
TEST_CASE(enabledStyle);
|
||||||
TEST_CASE(enabledPerformance);
|
TEST_CASE(enabledPerformance);
|
||||||
TEST_CASE(enabledPortability);
|
TEST_CASE(enabledPortability);
|
||||||
|
TEST_CASE(enabledInformation);
|
||||||
TEST_CASE(enabledUnusedFunction);
|
TEST_CASE(enabledUnusedFunction);
|
||||||
TEST_CASE(enabledMissingInclude);
|
TEST_CASE(enabledMissingInclude);
|
||||||
#ifdef CHECK_INTERNAL
|
#ifdef CHECK_INTERNAL
|
||||||
|
@ -105,6 +106,8 @@ private:
|
||||||
TEST_CASE(disableAll);
|
TEST_CASE(disableAll);
|
||||||
TEST_CASE(disableMultiple);
|
TEST_CASE(disableMultiple);
|
||||||
TEST_CASE(disableStylePartial);
|
TEST_CASE(disableStylePartial);
|
||||||
|
TEST_CASE(disableInformationPartial);
|
||||||
|
TEST_CASE(disableInformationPartial2);
|
||||||
TEST_CASE(disableInvalid);
|
TEST_CASE(disableInvalid);
|
||||||
TEST_CASE(disableError);
|
TEST_CASE(disableError);
|
||||||
TEST_CASE(disableEmpty);
|
TEST_CASE(disableEmpty);
|
||||||
|
@ -637,6 +640,16 @@ private:
|
||||||
ASSERT_EQUALS("", GET_REDIRECT_OUTPUT);
|
ASSERT_EQUALS("", GET_REDIRECT_OUTPUT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void enabledInformation() {
|
||||||
|
REDIRECT;
|
||||||
|
const char * const argv[] = {"cppcheck", "--enable=information", "file.cpp"};
|
||||||
|
settings = Settings();
|
||||||
|
ASSERT(defParser.parseFromArgs(3, argv));
|
||||||
|
ASSERT(settings.severity.isEnabled(Severity::information));
|
||||||
|
ASSERT(settings.checks.isEnabled(Checks::missingInclude));
|
||||||
|
ASSERT_EQUALS("cppcheck: '--enable=information' will no longer implicitly enable 'missingInclude' starting with 2.16. Please enable it explicitly if you require it.\n", GET_REDIRECT_OUTPUT);
|
||||||
|
}
|
||||||
|
|
||||||
void enabledUnusedFunction() {
|
void enabledUnusedFunction() {
|
||||||
REDIRECT;
|
REDIRECT;
|
||||||
const char * const argv[] = {"cppcheck", "--enable=unusedFunction", "file.cpp"};
|
const char * const argv[] = {"cppcheck", "--enable=unusedFunction", "file.cpp"};
|
||||||
|
@ -759,6 +772,26 @@ private:
|
||||||
ASSERT_EQUALS("", GET_REDIRECT_OUTPUT);
|
ASSERT_EQUALS("", GET_REDIRECT_OUTPUT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void disableInformationPartial() {
|
||||||
|
REDIRECT;
|
||||||
|
const char * const argv[] = {"cppcheck", "--enable=information", "--disable=missingInclude", "file.cpp"};
|
||||||
|
settings = Settings();
|
||||||
|
ASSERT(defParser.parseFromArgs(4, argv));
|
||||||
|
ASSERT(settings.severity.isEnabled(Severity::information));
|
||||||
|
ASSERT(!settings.checks.isEnabled(Checks::missingInclude));
|
||||||
|
ASSERT_EQUALS("cppcheck: '--enable=information' will no longer implicitly enable 'missingInclude' starting with 2.16. Please enable it explicitly if you require it.\n", GET_REDIRECT_OUTPUT);
|
||||||
|
}
|
||||||
|
|
||||||
|
void disableInformationPartial2() {
|
||||||
|
REDIRECT;
|
||||||
|
const char * const argv[] = {"cppcheck", "--enable=missingInclude", "--disable=information", "file.cpp"};
|
||||||
|
settings = Settings();
|
||||||
|
ASSERT(defParser.parseFromArgs(4, argv));
|
||||||
|
ASSERT(!settings.severity.isEnabled(Severity::information));
|
||||||
|
ASSERT(settings.checks.isEnabled(Checks::missingInclude));
|
||||||
|
ASSERT_EQUALS("", GET_REDIRECT_OUTPUT);
|
||||||
|
}
|
||||||
|
|
||||||
void disableInvalid() {
|
void disableInvalid() {
|
||||||
REDIRECT;
|
REDIRECT;
|
||||||
const char * const argv[] = {"cppcheck", "--disable=leaks", "file.cpp"};
|
const char * const argv[] = {"cppcheck", "--disable=leaks", "file.cpp"};
|
||||||
|
|
|
@ -15,7 +15,7 @@ import shlex
|
||||||
# Version scheme (MAJOR.MINOR.PATCH) should orientate on "Semantic Versioning" https://semver.org/
|
# Version scheme (MAJOR.MINOR.PATCH) should orientate on "Semantic Versioning" https://semver.org/
|
||||||
# Every change in this script should result in increasing the version number accordingly (exceptions may be cosmetic
|
# Every change in this script should result in increasing the version number accordingly (exceptions may be cosmetic
|
||||||
# changes)
|
# changes)
|
||||||
CLIENT_VERSION = "1.3.44"
|
CLIENT_VERSION = "1.3.45"
|
||||||
|
|
||||||
# Timeout for analysis with Cppcheck in seconds
|
# Timeout for analysis with Cppcheck in seconds
|
||||||
CPPCHECK_TIMEOUT = 30 * 60
|
CPPCHECK_TIMEOUT = 30 * 60
|
||||||
|
@ -439,8 +439,9 @@ def scan_package(cppcheck_path, source_path, libraries, capture_callstack=True):
|
||||||
|
|
||||||
dir_to_scan = source_path
|
dir_to_scan = source_path
|
||||||
|
|
||||||
|
# TODO: remove missingInclude disabling when it no longer is implied by --enable=information
|
||||||
# Reference for GNU C: https://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html
|
# Reference for GNU C: https://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html
|
||||||
options = libs + ' --showtime=top5 --check-library --inconclusive --enable=style,information --inline-suppr --suppress=unmatchedSuppression --template=daca2'
|
options = libs + ' --showtime=top5 --check-library --inconclusive --enable=style,information --inline-suppr --disable=missingInclude --suppress=unmatchedSuppression --template=daca2'
|
||||||
options += ' --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=valueFlowBailoutIncompleteVar'
|
options += ' --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=valueFlowBailoutIncompleteVar'
|
||||||
options += ' -D__GNUC__ --platform=unix64'
|
options += ' -D__GNUC__ --platform=unix64'
|
||||||
options_rp = options + ' -rp={}'.format(dir_to_scan)
|
options_rp = options + ' -rp={}'.format(dir_to_scan)
|
||||||
|
|
Loading…
Reference in New Issue