Daniel Marjamäki
4b4f7ea60b
Verification; Updated report
2019-12-27 19:05:22 +01:00
Sebastian
c990d10ffa
Check for JSON error when parsing addon .json files + fixes ( #2374 )
...
* cppcheck.cpp: Check for JSON error when parsing addon .json files
This fixes that errors in JSON files given via `--addon=*.json` are
silently ignored and maybe only a part of the JSON file is used.
Now the error message which picojson can return is checked and a
corresponding error message is returned again by getAddonInfo().
* naming.json: Fix missing comma
* CLI: Fix naming violations detected by addon naming.py via naming.json
* Addon naming: Add argument for validating names of constants
* LIB: Rename functions/variables so they are valid, loosen naming rules
* GUI: Fix naming violations
2019-11-20 15:37:09 +01:00
Oliver Stöneberg
9028b4a81d
do not access static methods through instance ( #2189 )
2019-09-20 21:54:30 +02:00
Daniel Marjamäki
a17f2a6f05
Compiling/Installing : The CFGDIR parameter was removed. Use FILESDIR instead.
2019-08-17 10:53:07 +02:00
Daniel Marjamäki
7e3626c84e
Travis: Check the naming conventions again
2019-07-15 20:58:07 +02:00
Daniel Marjamäki
96a1c6dec5
Rename errorlist=>mShowAllErrors
2019-07-15 18:31:12 +02:00
Daniel Marjamäki
a6194b81aa
Rename _errorList=>mShownErrors
2019-07-15 18:29:09 +02:00
Daniel Marjamäki
5037ad3d42
Rename _settings=>mSettings
2019-07-15 18:24:27 +02:00
Daniel Marjamäki
0fa8a51815
Rename variable _files=>mFiles
2019-07-15 18:21:52 +02:00
Daniel Marjamäki
122ae198b7
Rename errorOutput=>mErrorOutput
2019-07-15 18:16:07 +02:00
Daniel Marjamäki
876d8c9829
Rename member variable exceptionOutput=>mExceptionOutput
2019-07-15 18:11:26 +02:00
Scott Furry
a195477470
Correct Zero/Null as pointer constant ( #1938 )
...
Building with enhanced clang warnings indicated a large number of
instances with the warning:
`warning: zero as null pointer constant`
Recommended practice in C++11 is to use `nullptr` as value for
a NULL or empty pointer value. All instances where this warning
was encountered were corrected in this commit.
Where warning was encountered in dependency code (i.e. external library)
no chnages were made. Patching will be offered upstream.
2019-06-30 21:39:22 +02:00
Daniel Marjamäki
a0dd853642
analyzing one vs config (first debug config that matches platform)
2019-04-13 20:01:40 +02:00
Daniel Marjamäki
cb06aebdab
Removed --std=posix. From now on, if you use --library=posix then the posix checks will be enabled.
2019-04-12 06:47:28 +02:00
Daniel Marjamäki
c04cc02ee5
Refactoring; Use range for loop
2019-04-07 12:07:47 +02:00
Sebastian
08d41ab8af
Load std.cfg before all other libraries ( #1740 )
...
- CLI: Save the libraries that should be loaded to a list and load them
after the std.cfg has been loaded.
- GUI: Load std.cfg (and windows.cfg / posix.cfg when applicable) before
setting other options and loading the other libraries.
In the project-file-dialog the std.cfg is searched first. If some
other library fails to load is is retried with first loading std.cfg.
- boost.cfg: Enable containers that depend on std containers.
2019-03-15 06:59:37 +01:00
Daniel Marjamäki
bd7790fd8c
Update copyright year
2019-02-09 07:24:06 +01:00
Daniel Marjamäki
d35a26c6f0
--check-library fix
2019-01-22 19:40:39 +01:00
Daniel Marjamäki
4119cfd3d1
Correct exit code when there are no unmatched suppressions
2019-01-21 20:33:22 +01:00
Daniel Marjamäki
0f19dfea82
Do not check unmatched suppressions in --check-library checking
2019-01-20 10:30:38 +01:00
Daniel Marjamäki
0945e827c6
Fixed #8931 (Missing error exitcode when an unmatched suppression is detected)
2019-01-19 21:42:01 +01:00
Daniel Marjamäki
ade18d978a
Inline suppression for knownConditionTrueFalse FP
2019-01-13 13:18:35 +01:00
Daniel Marjamäki
900e26f651
Fix Cppcheck warning
...
[ci skip]
2019-01-13 13:06:51 +01:00
Sebastian
b51f19d530
Fix some doxygen warnings/issues in the comments ( #1537 )
2018-12-21 21:23:03 +01:00
Daniel Marjamäki
7c5058a42d
Refactoring. Rename methods
2018-04-23 12:39:47 +02:00
Daniel Marjamäki
f058d9ad08
CLI: Added more fields for --template and added a new --template-location. The gcc predefined template now matches latest gcc better.
2018-04-23 12:21:18 +02:00
PKEuS
e2002db78d
Replaced make_container by C++11 initializer lists
2018-04-08 23:03:44 +02:00
jrp2014
c2e54fa87f
Refactor cli/cppcheckexecutor.cpp
2018-04-05 08:12:15 +02:00
jrp2014
b813a6d407
Refactoring
2018-04-04 21:11:23 +02:00
jrp2014
07b5afcdc6
Improve constness
2018-04-04 21:02:13 +02:00
amai
dab99e83cd
(Re-)Enable exception handling on cygwin
2018-04-03 00:41:13 +02:00
Daniel Marjamäki
25ef18ab11
astyle formatting
...
[ci skip]
2018-03-22 07:14:01 +01:00
amai2012
ab02595be1
Improve debug output in case of SIGABRT (add hint about assertion) and small refactoring
2018-03-20 14:24:45 +01:00
orbitcowboy
50844aa7fc
checkType: Take into account the size of char.
2018-02-18 14:28:48 +01:00
Daniel Marjamäki
db274e8308
Fix testrunner in cygwin
2018-02-10 15:34:49 +01:00
Daniel Marjamäki
c4caee6b18
Updated copyright year
2018-01-14 15:37:52 +01:00
Ivan Maidanski
97ffec85c0
Fixed #7502 (Correct exit code if never used function is found) ( #1026 )
2018-01-12 08:24:01 +01:00
Dmitry-Me
93e5140945
Better variable names
2017-10-14 23:05:58 +03:00
Oleksandr Redko
2bee664ec9
Return non-const object to enable move compiler optimization ( #966 )
2017-10-03 18:24:18 +02:00
Ayaz Salikhov
2604156fe7
Use C++ headers ( #949 )
2017-09-07 13:02:44 +02:00
Daniel Marjamäki
1a1f2069e9
astyle formatting
...
[ci skip]
2017-08-30 17:42:04 +02:00
Dmitry-Me
9d41b272a1
Brace macro parameter
2017-08-29 21:23:45 +03:00
Dmitry-Me
6f0d5aaee3
Adapt to cases when conversion is a no-op
2017-08-29 21:21:48 +03:00
Dmitry-Me
c9e2b56b08
Make code easier to debug
2017-08-29 17:51:56 +03:00
Heiko Eißfeldt
de9f8b8a3c
refactoring ansiToOEM
2017-08-22 13:15:11 +02:00
Heiko Eißfeldt
04bcc86d59
Fixed #439 (Patch: Cppcheck reports wrong filename for filenames containing 8-bit ASCII)
2017-08-21 12:52:15 +02:00
Ayaz Salikhov
b8cd7dbb5c
Use nullptr instead of 0 or NULL ( #936 )
2017-08-09 20:00:26 +02:00
Daniel Marjamäki
91eb0f1fad
Removed XML version 1
2017-07-29 18:56:22 +02:00
Ayaz Salikhov
4bbc830a85
Fix warnings
2017-07-17 10:13:11 +03:00
Alexander Mai
9da28d5f4c
Signal handling: Don't mix sigaction and signal. SIGUSR1 can be used to print current callstack, SIGUSR2 is being ignored. Minor refactoring
2017-06-06 20:56:59 +02:00
Daniel Marjamäki
dc79f9630f
Fixed unit tests
2017-05-30 15:53:54 +02:00
Daniel Marjamäki
1f48b082d1
CLI: Add --output-file flag so results can be written to file directly.
2017-05-30 15:04:28 +02:00
Ayaz Salikhov
28aa939d69
iwyu - include what you use
2017-05-27 04:33:47 +02:00
PKEuS
b1f4bd7504
Refactorization: Reimplemented Settings::_enabled as a bitfeld instead of std::set ( #7995 )
2017-04-11 11:49:26 +02:00
Daniel Marjamäki
e9d950d4f5
Cppcheck build dir: Better handling when --project is used
2016-12-08 22:46:44 +01:00
Neszt Tibor
4bd6a75c48
execinfo.h is part of glibc
...
On systems where glibc is not available, execinfo.h should not be
included.
2016-11-29 09:44:50 +01:00
Daniel Marjamäki
7d7212c465
--cppcheck-build-dir: generate unique analyzeinfo filenames when source files have same names
2016-11-14 20:50:08 +01:00
Daniel Marjamäki
350e5a7142
UnusedFunctions: Perform checking using analyzeinfo
2016-11-05 21:26:56 +01:00
Daniel Marjamäki
324f68ca36
rename function
2016-10-28 12:10:19 +02:00
Daniel Marjamäki
606e31602c
Fixed #7177 (Support compile_commands.json)
2016-08-13 10:50:03 +02:00
Daniel Marjamäki
c586ae8cbe
Revert 'project' - it is not ready yet
2016-08-07 17:10:37 +02:00
Daniel Marjamäki
4dbdb50317
split
2016-08-07 15:35:41 +02:00
Daniel Marjamäki
e0f4ce9358
vs
2016-08-07 13:55:27 +02:00
Daniel Marjamäki
09d6f4f0a4
1
2016-08-06 21:04:50 +02:00
PKEuS
9a6569fde1
Always set ErrorMessage::file0 to ensure that the source file that cppcheck is checking when an error occurs can be identified
...
Removed unused function and unused includes from preprocessor.h/cpp
2016-07-26 16:28:40 +02:00
Alexander Mai
80f445bf6f
#7425 Broken XML output due to information about missing include paths. Use stdout for warning message (in alignment with other warnings messages). Minor refactoring (move some function from anon. namespace to static,etc.)
2016-05-20 21:32:59 +02:00
Gleydson Soares
99a03b4d2a
fix build on OpenBSD
2016-05-08 19:48:20 -03:00
Daniel Marjamäki
e038dd9663
Fixed #7271 (Suppress warning about non-existing path given to -I with --quiet.)
2016-01-09 11:19:51 +01:00
Daniel Marjamäki
79e663dd6f
Settings: Remove '_' prefix for public member variables
2016-01-03 16:18:17 +01:00
Lauri Nurmi
996c9244d8
Update copyright year to 2007-2016.
2016-01-01 15:34:45 +02:00
Alexander Mai
f762affea0
Small refactoring: replace NULL by nullptr, remove redundant static keyword, Tokenizer::setVarId() uses const variable 'notstart'
2015-11-30 22:13:49 +01:00
PKEuS
e8522c7883
Small refactorizations:
...
- #include cleanup
- Use std::array instead of std::vector
- Do not create a stringstream to concatenate 4 strings
- Use std::cout instead of printf
2015-11-29 10:56:44 +01:00
Daniel Marjamäki
8bb8290a6f
Fixed GCC warnings. unused variable, shadow variable.
2015-11-28 18:15:47 +01:00
PKEuS
93c02ce826
Fixed compiler error introduced in previous commit and several MSVC warnings
2015-11-28 10:49:08 +01:00
Alexander Mai
fe7d5cd242
Fix small glitch in previous commit - causing a compile error on Windows
2015-11-25 22:45:06 +01:00
Alexander Mai
03ecb980a5
Small refactoring of stacktrace printing code
2015-11-25 22:37:38 +01:00
Alexander Mai
9757f5b5f4
Improve exception handling on un*x: try to print a callstack in out-of-memory situations as well
2015-11-21 16:50:57 +01:00
Daniel Marjamäki
0f9d90d2be
Changed Copyrights. Removed my name.
2015-11-18 20:04:50 +01:00
amai2012
b788d96bb9
Repair build with VS2010
2015-11-15 10:45:01 +01:00
Alexander Mai
bda9c8c2d5
--exception-handling now prints callstack on SIGINT, allows to debug program hangs. Also add handler for some more signals.
2015-11-14 19:59:22 +01:00
Alexander Mai
ba2671e19a
Fix possible segmentation fault in un*x signal handler. Use SIGUSR1 for debugging purposes
2015-09-29 12:56:13 +02:00
PKEuS
92b867dd2c
Fixed behaviour of --quiet/-q and its description
2015-07-25 17:55:12 +02:00
Dmitry-Me
05a318f9e7
Resolve CID 1312126 and maybe also CID 1288510
2015-07-23 16:35:47 +03:00
PKEuS
ce9272a4ed
Refactorized file listing code (CLI):
...
- Apply PathMatch in FileLister::recursiveAddFiles() already to avoid touching directories that are ignored (#5775 )
- Simplified code to warn about header exclusion; use Path::isHeader() instead of custom header filename detection
2015-07-23 14:28:17 +02:00
Alexander Mai
8b97f04de4
Try to address some Coverity issues. Add TODO testcase for #5783 . Introduce TODO_ASSERT macro.
2015-07-19 15:03:35 +02:00
Martin Ettl
7ff4d10c43
Astyle formatting, no functional changes.
2015-06-28 19:25:13 +02:00
amai2012
5814c3b84c
Fix some compiler warnings with VS
...
Minor refactoring on Windows SEH code.
2015-06-28 19:20:16 +02:00
Alexander Mai
bacc5ac1cc
Fix false positives ignoredReturnValue about some posix interfaces. Remove redundant strsignal() output from signal handler
2015-04-06 18:16:37 +02:00
Alexander Mai
4048c50a69
Minor improvements on signal handler
2015-04-01 21:17:13 +02:00
Dmitry-Me
618c038448
Resolve CID 1288510
2015-03-24 17:59:24 +03:00
Alexander Mai
39633ef26f
Add more interfaces to posix.cfg
2015-03-08 14:24:54 +01:00
Alexander Mai
521e6c48b5
Minor fixes for signal handling: make global variables static, enhance stack vs. heap detection for recognizing stack overflows
2015-03-07 20:47:27 +01:00
Alexander Mai
abde80f0d9
Use alternative stack for signal handler to allow catching stack overflow induced SIGSEGV/SIGILL
2015-03-07 18:15:25 +01:00
Dmitry-Me
bd3428e039
Reduce code duplication
2015-02-20 10:26:02 +03:00
Thomas Jarosch
ec21134817
Fix false negatives for local suppressions
...
Introduce a new bool setting jointSuppressionReport
that will be set by the analyseWholeProgram() code path.
When the flag is enabled, unmatched suppressions are
collected after running the final whole program analysis
to prevent false positives for the unusedFunction check.
The check functions in the unit test
for single / multi file suppressions were unified.
2015-01-20 18:47:30 +01:00
PKEuS
787cbcb02e
Accept unknown elements in Library files, but print a warning. This fixes backward compatibility of libraries with older cppcheck versions
2015-01-10 22:18:57 +01:00
Daniel Marjamäki
ff11ba9847
Updated copyright year to 2015
2015-01-03 12:14:58 +01:00
Thomas Jarosch
9438b49bfb
Fix build on PowerPC
...
PowerPC does not provide ucontext.gregs or the REG_ERR define.
Found while testing big endian platform.
2014-12-31 01:44:50 +01:00
Ni2c2k
666fa04ed8
don't use USE_UNIX_BACKTRACE_SUPPORT on Qnx
2014-12-16 20:11:25 +05:00
Daniel Marjamäki
0b9d80c95d
Refactoring CheckUnusedFunctions so it uses new infrastructure for multifile analysis
2014-12-02 06:41:18 +01:00
Daniel Marjamäki
a002654c47
Reverted refactoring 828417c
for now. It caused a major slowdown in the unused functions checking.
2014-11-24 06:37:08 +01:00
Simon Martin
3ca2a177b5
Restore build on Mac OSX >= 10.7 since the inclusion of ucontext.h
2014-11-15 20:17:25 +01:00
Daniel Marjamäki
828417c934
CheckUnusedFunction: Refactorings to use same infrastructure for whole program analysis as CheckUninitVar and CheckBufferOverrun
2014-11-15 18:44:23 +01:00
Daniel Marjamäki
de7e9223b8
Fixed #6272 (Improve check: multifile checking in checkbufferoverrun)
2014-11-15 10:43:49 +01:00
Alexander Mai
5786be99c5
Improve exception handler: detect read or write on SIGSEGV (linux only), create more suitable core dump, reduce usage of fprintf()
2014-11-14 23:40:53 +01:00
Alexander Mai
95cd0f396a
#6026 backtrace() not portable - linker error on NetBSD
2014-11-02 15:47:55 +01:00
Robert Reif
e2f72b4cb1
Fixed #6215 (Move Windows platform types into library)
2014-10-19 07:34:40 +02:00
Dmitry-Me
7342a81ea7
Minor refactorings. rename token. cleanup if/else.
2014-09-02 16:10:51 +02:00
PKEuS
e35329aba3
Fixed reporting of unmatched suppressions for unusedFunction ( #4946 )
2014-09-01 10:13:03 +02:00
XhmikosR
7294ae2a88
Fix a C6328 warning.
...
Potential argument type mismatch.
2014-08-31 10:05:34 +03:00
Daniel Marjamäki
6afe9a4fbe
astyle formatting
...
[ci skip]
2014-07-08 06:44:57 +02:00
amai2012
9b38ae73c1
Attempt to fix 2 Coverity messages.
...
Replace a few unsigned int by std::size_t
2014-07-07 21:25:30 +02:00
amai2012
6b5f34df4b
ix compiler warning on Windows 64bit
2014-06-30 12:48:42 +02:00
Daniel Marjamäki
cdf081dbd5
astyle formatting
...
[ci skip]
2014-06-29 22:53:52 +02:00
amai2012
df988dfff3
Fix cppcheck warning in previous changeset
...
Signed-off-by: amai2012 <amai@users.sf.net>
2014-06-29 19:12:59 +02:00
amai2012
e60ee4ad3b
Print callstack in SEH on Windows
2014-06-29 18:57:48 +02:00
Alexander Mai
4d6c17818d
Try to fix configuration of un*x signal handling and backtrace support
2014-06-28 14:05:18 +02:00
amai2012
e124983e11
Improve error message for Windows SEH adding more details if available
2014-06-28 12:14:00 +02:00
Jay Sigbrandt
51fdf3f14f
Simplify defines.
2014-06-27 08:03:05 +02:00
Jay Sigbrandt
e7210521ac
Many platforms don't support backtraces. Fix compile for Solaris platform.
...
This change was tested with Solaris 10 on X86 and SPARC.
More information on Unix Backtrace Support
- http://www.gnu.org/software/libc/manual/html_node/Backtraces.html
It is not supported on the following platforms:
- https://www.gnu.org/software/gnulib/manual/html_node/execinfo_002eh.html
Mac OS X 10.3,
FreeBSD 6.0,
NetBSD 5.0,
OpenBSD 3.8,
Minix 3.1.8,
AIX 5.1,
HP-UX 11,
IRIX 6.5,
OSF/1 5.1,
Solaris 10,
Cygwin,
mingw,
MSVC 9,
Interix 3.5,
BeOS.
2014-06-26 11:41:16 +02:00
Daniel Marjamäki
d4bc643ed4
CLI: don't use unix-signals if NO_UNIX_SIGNAL_HANDLING is defined. don't use unix-signals in os/2.
2014-06-15 11:17:44 +02:00
Daniel Marjamäki
d9a3761bfd
Merge pull request #331 from Dmitry-Me/DontExitInTheMiddle
...
Should not call std::exit() in the middle of program
2014-06-06 13:35:29 +02:00
PKEuS
f7f639465a
Fixed remaining VS warnings (hopefully all of them, this time)
2014-06-05 10:45:25 +02:00
Dmitry-Me
738d05b442
Calling std::exit() in the middle of a C++ program subverts stack unwinding and can introduce subtle bugs.
2014-06-05 11:28:04 +04:00
Alexander Mai
707ee97b9e
Fix missing break while handling SIGBUS - fixes clang compiler warning
2014-05-29 16:57:45 +02:00
Daniel Marjamäki
ed78d3e148
Library: Better error reporting when loading fails
2014-05-26 17:00:41 +02:00
Alexander Mai
7b36bbbba8
Exception handling: catch SIGBUS. Evaluate siginfo_t::si_code
2014-05-25 15:53:26 +02:00
Alexander Mai
5198c05f35
--exception-handling now takes optional argument to choose between stdout and stderr for its output. stdout is new default value
2014-05-25 08:47:37 +02:00
Alexander Mai
ed78835020
Cosmetics for print_stacktrace()
2014-05-17 10:40:48 +02:00
Alexander Mai
08c209d4d9
Some cleanup for CppcheckSignalHandler, also some cosmetics for the output
2014-05-11 13:25:36 +02:00
Daniel Marjamäki
1903d95015
Fixed #5661 (--suppress=missingInclude has no effect)
2014-05-03 19:31:15 +02:00
Alexander Mai
718e42f5ca
Fix some clang warnings about type conversions
2014-04-11 23:35:53 +02:00
Alexander Mai
a06371e063
Fixes for Doxygen + code formatting
2014-04-07 20:39:19 +02:00
Daniel Marjamäki
22c4d45ca0
astyle formatting
2014-03-31 03:06:57 +02:00
Alexander Mai
a12e59dbee
Make backtrace resemble gdb bt
2014-03-30 21:29:17 +02:00
Daniel Marjamäki
fbd607d35d
Fixed cygwin compilation
2014-03-22 09:57:43 +01:00
Martin Ettl
fe1b46c174
Extended std.cfg
2014-03-19 21:08:48 +01:00
Alexander Mai
af922aedbf
Fix mingw build
2014-03-18 21:14:09 +01:00
Alexander Mai
14386d06dc
Enable SEH for Windows using MSVC (not for mingw)
2014-03-17 19:11:00 +01:00
Martin Ettl
80b1271d01
Astyle running and added test cases for functions in std.cfg.
2014-03-10 02:21:44 +01:00
Alexander Mai
c2a602a6bd
Refactor signal handling code: prepare for demangling names, handle SIGINT w/o backtrace, remove our own signal handler frames from backtrace
2014-03-16 18:37:28 +01:00
Alexander Mai
825bb0f027
Fixed #5286 (Add signal/exception handling to cppcheck and cppcheck-gui)
2014-03-16 12:04:13 +01:00
Daniel Marjamäki
fd3a8a2a18
Update copyright
2014-02-15 07:45:39 +01:00
Kamil Dudka
1f53018b8e
Suppress warning about non-existing path given to -I with --quiet.
2014-01-10 21:50:21 +01:00
Daniel Marjamäki
6ff93a6b36
CLI: Made the 'failed to load std.cfg' nicer and more informative.
2014-01-03 21:59:50 +01:00
Daniel Marjamäki
a94fccf51a
astyle formatting
2014-01-02 21:47:35 +01:00
Sam Truscott
4333dd3c75
Update Qt to support Markup structure
2014-01-02 18:18:24 +01:00
Daniel Marjamäki
562387e3ff
library: use extensions when loading std.cfg and posix.cfg
2013-12-26 13:18:54 +01:00
Daniel Marjamäki
4131c621c9
Fixed #5254 (Warn about missing library files (.cfg))
2013-12-26 11:15:28 +01:00
Daniel Marjamäki
76b907fe65
Fixed #5252 (Improve check: use Library to validate function arguments in invalidFunctionUsage)
2013-12-23 10:06:45 +01:00