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
Alexander Mai
0f7071a000
Fix clang and coverity warnings
2014-06-12 20:03:11 +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
PKEuS
adf38fcfd0
Further include cleanup
2014-05-24 12:50:04 +02:00
PKEuS
1fc1ff1993
Moved implementation of two functions to new file check.cpp -> Don't include <iostream> everywhere
2014-05-24 12:50:04 +02:00
PKEuS
09e03fa6ef
Fixed some complaints of PVS Studio
2014-05-19 14:37:54 +02:00
PKEuS
65916e027c
Don't complain "could not find or open any of the paths given." if no arguments were passed to cppcheck (and help was shown)
2014-05-18 13:46:01 +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
PKEuS
59418e605f
Increased version number to 1.65.99/1.66 dev.
2014-05-10 12:57:33 +02:00
Daniel Marjamäki
c0131eea9e
1.65: Set version
2014-05-10 12:02:06 +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
Daniel Marjamäki
42c8f73bd5
Removed old cli.pro file. The readme file contains instructions for building the CLI.
2014-04-10 17:21:07 +02:00
Alexander Mai
a06371e063
Fixes for Doxygen + code formatting
2014-04-07 20:39:19 +02:00
Alexander
2328704ca2
Fix compilation under cygwin since getloadavg() is not available there
2014-04-05 20:47:02 +02:00
PKEuS
e9411e05ba
Refactorized inefficient usage of std::string and const char[].
2014-04-02 13:56:34 +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
PKEuS
63254b33f9
Fixed uncaught exception in testbufferoverrun.cpp
2014-03-27 19:55:11 +01:00
Dmitry-Me
d0e51fb5f0
Make use of Visual C++ runtime memory leak tracing
2014-03-26 19:43:12 +04:00
PKEuS
019d4491fb
Fixed compilation on Windows.
...
[ci skip]
2014-03-25 19:20:59 +01:00
Troshin V.S
840fba7672
CLI: Add -l command line option
2014-03-25 18:35:59 +01:00
Daniel Marjamäki
fbd607d35d
Fixed cygwin compilation
2014-03-22 09:57:43 +01:00
Daniel Marjamäki
e48dfb0e6a
cygwin: apply cygwin compilation tweaks. thanks ir0nh34d.
2014-03-19 21:20:30 +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
Julian Santander
fae8ef48b8
Fixed #5529 (Further control in selecting what configurations to consider)
2014-03-10 15:49:02 +01:00
PKEuS
470f1579c1
Incremented version to 1.65dev/1.64.99
2014-03-03 15:07:54 +01:00
Daniel Marjamäki
4842115a56
1.64 : Update versions
2014-03-02 09:55:39 +01:00
Daniel Marjamäki
fd3a8a2a18
Update copyright
2014-02-15 07:45:39 +01:00
Daniel Marjamäki
30cae358d8
Removed the --value-flow flag. ValueFlow analysis will always be enabled from now on.
2014-01-17 18:07:05 +01:00
Daniel Marjamäki
2b3fa9957c
doxygen: added info about value flow to main page
2014-01-13 19:15:58 +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
7cfa4c8654
astyle formatting
2014-01-08 06:06:08 +01:00
Daniel Marjamäki
f79e1b6d87
Fixed #5317 (failed to load std.cfg)
2014-01-08 05:03:55 +01:00
Daniel Marjamäki
d8270c710a
Add new experimental value flow analysis
2014-01-04 20:57:02 +01:00
PKEuS
574c27b1b2
Removed VS9 solution
2014-01-04 10:55:27 +01:00
PKEuS
55f68535b2
Set version to "1.64 dev"/1.63.99. Use version.h in cppcheck.cpp.
2014-01-04 10:41:13 +01:00
Daniel Marjamäki
6515691a47
1.63: Set version numbers
2014-01-04 09:32:37 +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
Alexander Mai
b411efa33f
Fixed #5302 (Invalid parameter for --showtime should cause an error)
2014-01-03 10:00:47 +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
Matthias Krüger
287bc5d284
be more informative when "-j N --enable=unusedFunction" (N>1) is passed.
...
unusedFunction check is disabled when -j is passed.
2013-12-31 16:31:34 +01:00
Daniel Marjamäki
c3f101e043
doxygen: document on the main page that we have access to syntax tree, symbol database and library.
2013-12-27 15:07:42 +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
Daniel Marjamäki
5ba02d2fdd
AST: Always use AST
2013-12-09 18:06:19 +01:00
Daniel Marjamki
8910bae801
Fixed #5137 (Defining empty macro from commandline does not seem to work)
2013-11-03 09:46:03 +01:00
Daniel Marjamäki
bbdfd8b5c7
Make it possible to create AST, by using the --ast flag
2013-11-02 18:37:35 +01:00
Daniel Marjamäki
e446a28b3d
Refactoring FileLister and Path so they don't depend on Library
2013-10-31 19:09:01 +01:00
PKEuS
f572f3dd81
Fixed typo in __clang__ macro
2013-10-27 13:40:10 +01:00
PKEuS
9790e09e2d
Work around clang pretending to be GCC 4.2. Require clang 2.9
2013-10-27 13:34:05 +01:00
PKEuS
0db50dc0f6
Print a warning instead of a message on MSVC < 1600
2013-10-27 12:59:10 +01:00
PKEuS
a2ef80b74b
Warn about deprecated compilers
2013-10-27 12:55:36 +01:00
Sam Truscott
6806fd8135
Extended Qt support through Library
2013-10-20 14:09:10 +02:00
PKEuS
4cd2fad2bf
Set version to 1.63 dev
2013-10-13 09:53:56 +02:00
Daniel Marjamäki
21c537e8d7
1.62: Set versions
2013-10-12 12:22:52 +02:00
Robert Reif
1959377423
Fixed #4963 (cppcheck and testrunner Visual Studio 2008 build failure)
2013-10-08 05:36:52 +02:00
Daniel Marjamäki
43b40b7465
Refactoring: Reordered includes. Put local ones before system includes.
2013-09-04 06:18:22 +02:00
Daniel Marjamäki
d2d0f3a292
cli.pro: dont include tinyxml both from lib.pri and cli.pro
2013-08-04 13:05:25 +02:00
PKEuS
4a84195a8c
Updated to latest TinyXML
...
Build TinyXML into core dll once and use it from CLI
2013-08-03 20:29:50 +02:00
PKEuS
219f6546d3
Set version to 1.62 dev
2013-08-03 19:54:39 +02:00
Daniel Marjamäki
2f7fba2087
1.61: Set versions
2013-08-03 08:04:38 +02:00
Daniel Marjamäki
0c5e39a813
Library: Added configuration file std.cfg that clients should load.
2013-07-20 17:12:56 +02:00
Daniel Marjamäki
1a2aaa6780
Library: If load from current path fails, try to load 'default' configuration from cppcheck-executable path. Allow that '.cfg' extension is not used. Allow that multiple configurations are provided (comma separated).
2013-07-20 10:21:05 +02:00
Daniel Marjamäki
a216edfd07
updated manual and CLI --help output
2013-07-20 09:38:44 +02:00
XhmikosR
29475d056a
Use the full sourceforget.net url.
2013-07-16 09:01:56 +02:00
Daniel Marjamäki
7d47fd65a2
Renamed --environment to --library. Added --check-library. Renamed Environment to Library
2013-07-08 18:26:18 +02:00
Alexander Mai
b7bb16ea77
Fixed #4897 (callStackToString is not available when using custom message template)
2013-07-08 06:44:25 +02:00
Daniel Marjamäki
de2f959312
CLI: don't crash if summary in rule file is empty
2013-07-06 12:01:46 +02:00
Daniel Marjamäki
61e1dd5096
Environment: Refactoring and cleanup
2013-07-05 20:55:31 +02:00
Daniel Marjamäki
d96fb577cd
CLI: Added --environment flag
2013-07-02 07:18:19 +02:00
Daniel Marjamäki
6b2bab535b
CLI,LIB: Added --std setting for GTK
2013-06-29 12:55:24 +02:00
Daniel Marjamäki
00909486ab
unusedFunction: updated help text and manual. it is recommended that this check is only enabled when the whole program is scanned.
2013-06-16 11:57:02 +02:00
Reijo Tomperi
ae65a47f5f
Add missing line change to CLI help text, near style.
2013-06-13 20:57:15 +03:00
Daniel Marjamäki
537166cf47
Rules: Make it possible run a rule on the 'normal' token list
2013-06-09 14:58:56 +02:00
Daniel Marjamäki
964b6cbd82
help: Improved help text for -D and -U
2013-06-09 13:00:08 +02:00
Daniel Marjamäki
c65437c74c
manual, help text: updates of --enable text. updates of 'Preprocessor configurations' section, the --force and --max-configs can be used together with -D.
2013-06-09 10:34:45 +02:00
Daniel Marjamki
4e09b06bc1
Fixed #4827 (allow checking multiple configurations when using -D by also using --max-configs or --force)
2013-06-08 16:46:54 +02:00
Daniel Marjamki
c83bd7f00f
1.60.1: Set versions
2013-06-02 13:13:40 +02:00
Daniel Marjamäki
d36d3d5469
1.60: set version
2013-06-01 15:17:07 +02:00
Daniel Marjamäki
a7da65a40b
Fixed #4618 (Unmatched suppression: don't show this information message unless --enable=information or --check-cfg is used)
2013-05-31 15:20:58 +02:00
Daniel Marjamäki
75f6013d13
Fixed #4755 (buggy --xml reports in 1.59)
2013-05-20 16:19:31 +02:00
PKEuS
2ec5d8953e
Small refactorization in threadexecutor.cpp: Use prefix increment; Reuse iterator.
2013-03-31 01:26:09 -07:00
PKEuS
f08a01fb26
Fixed MSVC warning in threadexecutor.h when compiling as x64
2013-03-31 01:11:34 -07:00
Daniel Marjamäki
c733928505
1.59: Set versions
2013-03-29 18:06:13 +01:00
Daniel Marjamäki
8f2ca7c9d0
Fixed #4636 (Fails to compile using mxe *-to-windows cross compiler)
2013-03-14 06:45:32 +01:00
Daniel Marjamäki
d8fc126cf0
Fixed #4612 (Adding file extensions to Cppcheck analysis)
2013-03-03 07:32:14 +01:00
Daniel Marjamäki
bcc0f87b4b
Fixed #4612 (Adding file extensions to Cppcheck analysis)
2013-03-01 18:04:10 +01:00
Kamil Dudka
e46f0cf124
CLI: Added missing NL in help message
2013-02-20 17:07:54 +01:00
PKEuS
167e11b645
Switch to TinyXml2
2013-02-16 10:01:34 -08:00
Andrew C. Martin
bd0d9b9639
fix misspellings & gcc v3.4.6 warnings
...
1. fix typos / misspellings
- Fix misspelling within comments, variable/function names, stdout messages
- changes the name of an error code: ```stlBoundries``` changed to ```stlBoundaries```. Alias old name (```stlBoundries```) to the new one.
2. fix gcc v3.4.6 32bit & 64bit warnings
- fixes gcc v3.4.6 warnings, except for those in tinyxml and "-Wmissing-declarations" makefile warnings
- in Preprocessor::handleIncludes(), replace a ```vector <bool>``` with ```stack<bool>``` (see ```vector<bool>``` warning below).
- this is the only ```vector<bool>``` in the codebase
- ```vector <bool>``` is actually a case of template specialization, and is not recommended, according to the following links:
http://stackoverflow.com/q/6461487
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2160.html
http://stackoverflow.com/q/670308
- in the codebase before and after this change, testrunner SEGVs in a number of places on gcc v3.4.6, including ```Check::~Check()```, among others
- fc42fc95
fixes this particular runtime issue for DJGPP & __sun
2013-02-09 23:43:09 -07:00
Daniel Marjamki
fc58c6018c
CLI: enable warning messages by --enable=style
2013-02-02 15:48:19 +01:00
Andrew C. Martin
4a73c93750
Fix compiler warnings and comment/string typos
...
- fix g++ warning:
> lib/checkother.cpp:3779: warning: comparison between signed and unsigned integer expressions
- fix suncc warning (see [everything2](http://everything2.com/title/C%252B%252B%253A+static+extern+%2522C%2522 )):
> "lib/checkmemoryleak.cpp", line 578: Warning (Anachronism): Formal argument __compar of type extern "C" int(*)(const void*,const void*) in call to bsearch(const void*, const void*, unsigned long, unsigned long, extern "C" int(*)(const void*,const void*)) is being passed int(*)(const void*,const void*).
- prefer empty() / isEmpty() over "size() > 0" (cases not caught by stlSize)
- fix word misspellings (mostly comments, a few output lines)
- Parenthesis => Parentheses (both variations were used in the codebase)
- fix typo and wording ("never alwayw") in gui/test/data/benchmark/simple.cpp's CheckOther::unsignedPositive():
```
- "An unsigned variable will never alwayw be positive so it is either pointless or "
+ "An unsigned variable can't be negative so it is either pointless or "
```
2013-01-16 07:37:07 -07:00
Daniel Marjamäki
dc0ecb1082
ThreadExecutor: include sys/select.h for fd_set
2013-01-13 13:21:46 +01:00
Daniel Marjamäki
3057078571
1.58: Set versions
2013-01-12 14:49:58 +01:00
Reijo Tomperi
5d5f7085bf
Updating year 2012 -> 2013 to .cpp and .h files and man page.
2013-01-01 18:29:08 +02:00
Simon Kagstrom
66a3e5e313
Ticket 4408: cmdlineparser: Improve description of --include=
2012-12-28 12:43:43 +01:00
Simon Kagstrom
2b698919c4
Ticket #4408 : cmdlineparser: Don't force single configuration with --include=
2012-12-28 12:43:43 +01:00
Simon Kagstrom
ef28bde3e4
Fixed #4408 (Force inclusion of files (a la -include /.../ in GCC))
2012-12-27 16:52:31 +01:00
acm4me
7da155c8ba
Support for Sun Studio C++ compiler
2012-12-27 11:51:12 +01:00
Daniel Marjamäki
bfb82fe3e1
Cppcheck: Show single 'too many configurations' message if --enable=information hasn't been used and there are too many configurations.
2012-12-26 18:35:49 +01:00
Gerhard Zlabinger
d149b9b06c
Travis: Fixed Cppcheck warnings
2012-12-13 21:03:41 +01:00
PKEuS
c4821db796
Updated VS9 solution with qmake ( #4397 ).
2012-12-13 20:38:10 +01:00
Gerhard Zlabinger
4bb62fc8b2
CLI: write status messages
2012-12-13 18:47:13 +01:00
Gerhard Zlabinger
6442938fe9
Fixed #648 (Threads in Windows)
2012-12-12 19:09:37 +01:00
Daniel Marjamäki
b107e5e9e8
cppcheckexecutor: removed time info from verbose progress info. the ctime function that is used is not threadsafe.
2012-12-09 09:30:18 +01:00
Daniel Marjamäki
3a44a5ca3c
1.57: Setting version
2012-11-04 13:50:23 +01:00
PKEuS
16a58d1c11
Use reference instead of copying string in cmdlineparser.cpp
2012-11-03 20:42:32 +01:00
PKEuS
c84857fc7e
Fixed compilation as shared lib with PCRE: Ensure that sizeof(Settings) is the same with and without HAVE_RULES
...
Fixed VS10 solution when TinyXml is included (define TIXML_USE_STL).
2012-11-03 20:37:23 +01:00
Edoardo Prezioso
6cfb664def
Fixed a related issue with the ThreadExecutor fix
...
Don't call reportErr when the message type is a REPORT_INFO, but call reportInfo instead.
2012-10-19 20:20:29 +02:00
Edoardo Prezioso
d459b6acb1
Fixed #4298 (Strange 'missing include' output message when executing '-jn --check-config').
2012-10-19 19:26:42 +02:00
Edoardo Prezioso
eb84c03b01
Related to previous commit: don't hide the main.cpp file and the path to both.
2012-10-19 19:14:40 +02:00
Edoardo Prezioso
81c17b4c3b
Fix old paths present in the comments of main.cpp.
2012-10-19 18:51:43 +02:00
Ryan Pavlik
a4bc1d8f74
Update cli/version.rc
...
Forward slashes in include to not break cross-compilation.
2012-10-15 11:28:08 -05:00
PKEuS
fc53b15fa4
Refactorized resource files:
...
- Stored global information about cppcheck version and copyright string in a single resource.h file.
- Use macros of windows.h instead of numeric values for filetype, etc.
- Added versioninfo metadata to lib (#4275 )
- Removed VS resource editor code from resource files - these files shouldn't be modified with it to avoid information loss
- Renamed files to version.h/rc
- Encoded files as ANSI again - use escape sequences for unicode characters in literals (#4281 )
2012-10-14 10:21:22 +02:00
PKEuS
3c4c547fcf
Encoded .rc files as UTF16 LE. ( #4279 )
2012-10-12 13:13:06 +02:00
Daniel Marjamäki
1e024a9abc
cleanup more java/c# code. Thanks amai for telling me about this.
2012-10-03 19:19:49 +02:00
Daniel Marjamäki
3e58472cd3
Fixed #4013 (Several test failures in testcmdlineparser.cpp)
2012-09-14 06:58:14 +02:00
PKEuS
2db1dbe2ce
Changed some function prototypes according to cppcheck messages about functions that can be static.
2012-09-11 19:19:11 +02:00
PKEuS
50f9dd52ab
Used enum instead of string in implementation for '--language='.
2012-09-11 08:53:27 +02:00
PKEuS
87131f6105
Added new cmdline option --language= (alias of GCC-like -x) to enforce a specific language. Valid values: c, c++, java, c#. ( #3994 )
2012-09-10 18:51:32 +02:00
XhmikosR
1968b6ffe0
vs2010 projects: consistently use /MP and remove default property
2012-09-09 14:20:49 +02:00
PKEuS
8c70778b70
Refactorization: Fixed several messages when self-checking cppcheck
2012-09-04 15:29:51 +02:00
XhmikosR
cd7c4df622
consistency changes
2012-09-03 13:52:06 +03:00
PKEuS
dcf997007b
Incremented version numbers to 1.57 dev
2012-09-01 13:04:09 +02:00
Daniel Marjamäki
b8db27fcd1
1.56: Set versions
2012-09-01 10:54:15 +02:00
Daniel Marjamäki
6fc7f0227c
cli: updated example with --std=posux flag
2012-08-27 19:00:00 +02:00
PKEuS
046712aaec
Removed --doc formating hack that removes more than three newlines and added format testing of Check::classInfo instead.
...
- Fixed test failures shown by new test.
Use const_iterator instead of iterator in testcppcheck.cpp when possible
2012-08-26 16:22:46 +02:00
Daniel Marjamäki
f127728582
Enable --std=c11 and --std=c++11 by default
2012-08-25 21:57:45 +02:00
Daniel Marjamäki
87eb2d444c
cli: add --inconclusive to the help screen
2012-07-26 09:10:39 +02:00
PKEuS
37820af7f8
Committed patch removing unnecessary Unicode-Ansi conversions ( fixed #2123 )
2012-07-16 02:37:29 -07:00