Daniel Marjamäki
d615dba638
Write 'inconclusive:' in daca2 warnings
2020-09-26 11:02:10 +02:00
Oliver Stöneberg
fb37137216
extended the --clang command-line option so you can specify a custom … ( #2734 )
2020-09-06 07:46:51 +02:00
Daniel Marjamäki
da1de50deb
Clang: The clang parser import should be considered to be an experimental feature for now. There are many problems to solve.
2020-09-04 18:30:29 +02:00
Daniel Marjamäki
dc6f0740c1
CLI: fix execute command, quote argument that contains spaces
2020-08-30 20:02:18 +02:00
Georgy Komarov
c5369b84e1
Prevent copying in range-based for loops ( #2751 )
...
Use reference types in range for loops to prevent copying.
2020-08-23 20:53:44 +02:00
Daniel Marjamäki
fac8e52379
Tweked --help output
2020-06-14 17:23:29 +02:00
Daniel Marjamäki
97fd51edd1
Set version to 2.1.99 / 2.2 dev
2020-06-14 07:16:14 +02:00
Daniel Marjamäki
026bbac975
2.1: Set version
2020-06-13 17:04:26 +02:00
Daniel Marjamäki
37245a8179
Update copyright year
2020-06-13 16:37:12 +02:00
Paul Fultz II
eed2e829a7
Revert "Cleanup: Removed Tokenizer::simplifyTokenList2. As a side-effect, rules for "simple" token list are now executed on normal token list." ( #2666 )
...
This reverts commit 187cde183d
.
2020-05-30 11:23:22 +02:00
PKEuS
187cde183d
Cleanup: Removed Tokenizer::simplifyTokenList2. As a side-effect, rules for "simple" token list are now executed on normal token list.
2020-05-29 21:21:07 +02:00
Daniel Marjamäki
6b7b3eda2f
Tweaked --help; added --bug-hunting
2020-05-28 08:38:53 +02:00
Daniel Marjamäki
47ee126aa9
Tweaked --help output
2020-05-28 08:33:50 +02:00
Oliver Stöneberg
3a90341961
some CMake cleanups and additions ( #2639 )
2020-05-27 05:15:46 +02:00
Oliver Stöneberg
c1f762b861
disabled some Visual Studio warnings ( #2635 )
2020-05-23 17:42:56 +02:00
Oliver Stöneberg
37bc0483a4
made check.h less heavy ( #2633 )
2020-05-23 07:16:49 +02:00
Daniel Marjamäki
5a0b5139a0
Fix compile error in windows
2020-05-19 22:13:46 +02:00
Daniel Marjamäki
299e11c991
Fixed Cppcheck warnings
2020-05-19 21:55:28 +02:00
Daniel Marjamäki
32e569704b
executeCommand in CppCheckExecutor or QCheckThread
2020-05-19 16:04:40 +02:00
PKEuS
4948f85460
Visual Studio: Updated solution
...
- Enable several compiler warnings again
- Let __cplusplus have a reasonable value
2020-05-19 08:35:13 +02:00
PKEuS
e9318d7bfc
Refactorization: Avoid creating a temporary string
2020-05-19 08:35:12 +02:00
PKEuS
e92a95150a
Refactorization: Use emplace methods in CLI
2020-05-19 08:35:12 +02:00
Daniel Marjamäki
dc32f428ff
Set Cppcheck version
2020-05-10 11:28:31 +02:00
Daniel Marjamäki
08ddd84780
Update copyright year
2020-05-10 11:16:32 +02:00
Daniel Marjamäki
3e0218299b
Revert "Update copyright year"
...
This reverts commit 6eec6c4bd5
.
2020-05-10 11:13:05 +02:00
Daniel Marjamäki
6eec6c4bd5
Update copyright year
2020-05-10 11:11:34 +02:00
Daniel Marjamäki
9f76fcf5f1
Fixed Cppcheck warning
2020-05-09 14:45:47 +02:00
Daniel Marjamäki
32cbbb09ed
cli: publish the --clang option
2020-05-08 20:52:42 +02:00
Daniel Marjamäki
5a9e81897a
ExprEngine: Document how it works
2020-04-30 12:18:49 +02:00
Daniel Marjamäki
6d7dd7400d
Refactoring; Sort options alphabetically. Removed unused --check-diff functionality.
2020-04-26 10:22:12 +02:00
Daniel Marjamäki
05dcb9a435
Clang import; Allow Clang import without a Cppcheck build dir
2020-04-21 22:26:34 +02:00
Daniel Marjamäki
7921aa891a
Thank you Z3
2020-04-20 20:34:47 +02:00
Daniel Marjamäki
5626d22835
Tweak message. --std=posix will be deprecated in 2.05
2020-04-19 21:25:20 +02:00
Lukas Grützmacher
095fd2bc62
add command line option to select single project configuration of loaded solution ( #2523 )
...
* add command line option to select single project configuration of loaded solution
* Update cmdlineparser.cpp
* Update manual.md
* fix initialization
2020-04-19 18:19:28 +02:00
amai2012
13d88d7132
Add ..\externals to include path
2020-04-18 11:03:26 +02:00
Oliver Stöneberg
2c1e36e63e
cleaned up includes based on include-what-you-use ( #2600 )
...
* cleaned up includes based on include-what-you-use
* check.h: trying to work around Visual Studio 2012 bug
* fixed Visual Studio compilation
2020-04-13 13:44:48 +02:00
Sam Lane
60f9fefcd4
Add Support For Configuring Addon Python Interpreter Version ( #2591 )
2020-04-05 10:57:28 +02:00
Daniel Marjamäki
7577bdb1df
DACA: Try to avoid some crashes/hangs for the most crazy code so we can focus on most serious bugs first
2020-03-31 11:33:38 +02:00
fuzzelhjb
9f3deb30b1
Support clang tidy ( #2564 )
...
* add basic clang-tidy support in the same way as in the GUI
* fix native path
* fix some code styles
* fix cppcheck findings
* update again
* only do clang-tidy if set in the project file
* fix handling if folders have spaces
* tiny fixes
* some tiny updates
* make clang-tidy error message parser more robust
Co-authored-by: fuzzelhjb <FaniXagy8-Hopk>
2020-03-15 11:09:35 +01:00
Rikard Falkeborn
2a16e8d4c1
Kill child if parent dies ( #2544 )
2020-02-18 10:09:29 +01:00
Daniel Marjamäki
cea17acd92
CLI: A --bug-hunting flag is needed for the tests
2020-02-12 16:30:18 +01:00
Daniel Marjamäki
f31447943c
CLI: Remove experimental --safe-classes, --safe-functions, --bug-hunting, --debug-bug-hunting
2020-02-10 20:27:25 +01:00
Mathias Buhr
60ada656a0
Allow filtering when using --project ( #2522 )
2020-02-09 10:51:29 +01:00
Daniel Marjamäki
d2dd3930ae
GUI: Generate Clang files
2020-02-02 11:05:30 +01:00
Daniel Marjamäki
632dc0f141
GUI: Select parser; Cppcheck or Clang
2020-02-02 10:45:42 +01:00
Daniel Marjamäki
fb38e87bf4
astyle formatting
...
[ci skip]
2020-01-31 14:13:52 +01:00
fuzzelhjb
d82da987e5
Support clang tidy ( #2486 )
2020-01-30 07:14:17 +01:00
Aleksandr Serbin
11993ed999
Ticket 5607: Allow to exclude folders with glob pattern ( #2498 )
2020-01-24 07:06:09 +01:00
Simon Martin
16eae28cc9
Fix AppVeyor issue following reportVerification rename. ( #2497 )
2020-01-19 18:20:51 +01:00
Daniel Marjamäki
0eccffe8e3
--clang; require that --cppcheck-build-dir. output files are needed.
2020-01-19 12:33:17 +01:00
Daniel Marjamäki
f7a30fc99f
Rename Verification => Bughunting
2020-01-18 07:25:57 +01:00
Daniel Marjamäki
7820b5dbcc
Rename 'Verification' to 'Bug hunting'
2020-01-14 21:17:07 +01:00
Daniel Marjamäki
e78775fac3
astyle formatting
...
[ci skip]
2020-01-10 11:31:12 +01:00
fuzzelhjb
fcd5cda97f
Check selected files from project ( #2378 )
2020-01-10 08:57:37 +01:00
Daniel Marjamäki
b03bdfaf72
Import Clang ast dump (experimental)
2020-01-05 15:12:53 +01:00
Daniel Marjamäki
48be067dd1
Verification; Added --verify-diff option
2019-12-31 12:05:08 +01:00
Daniel Marjamäki
d16ea3293e
Verification; Fix testing
2019-12-28 22:09:16 +01:00
Daniel Marjamäki
49ed1a82b4
Verification; save report in custom file
2019-12-27 19:25:06 +01:00
Daniel Marjamäki
4b4f7ea60b
Verification; Updated report
2019-12-27 19:05:22 +01:00
Daniel Marjamäki
7f110f3ec3
Set version
2019-12-21 11:49:01 +01:00
Dmitry-Me
4a8ced29c4
Fix typo
2019-12-16 18:10:40 +03:00
Francesc Elies
cbd9713006
[cli] help misses `--suppress-xml` description ( #2436 )
2019-12-09 19:01:15 +01:00
Adrien Chardon
91dd8d3b6f
Improve cli --help ( #2387 )
2019-11-29 11:29:04 +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
Armin Müller
130ebe4b85
Typos found by running "codespell" ( #2380 )
2019-11-19 20:02:24 +01:00
Daniel Marjamäki
81fff2edf1
Fixed #9464 (Import compile database; only check given configuration)
2019-11-09 17:51:42 +01:00
Sebastian
3e4dd9b354
cmdlineparser.cpp: printHelp(): Replace deprecated option in example ( #2290 )
...
`--std=posix` is deprecated and will be removed in the future.
See commit cb06aebdab
.
2019-10-22 15:07:30 +02:00
Daniel Marjamäki
40c3e68e07
ExprEngine: Add --debug-verify, fixed handling of global arrays
2019-09-29 15:00:54 +02:00
Oliver Stöneberg
b5c598cca4
added missing OVERRIDE usage and removed redundant virtual ( #2190 )
2019-09-20 21:57:16 +02:00
Oliver Stöneberg
9028b4a81d
do not access static methods through instance ( #2189 )
2019-09-20 21:54:30 +02:00
Oliver Stöneberg
de9f489b08
use range loops / constness ( #2181 )
...
* use range loops / constness
* platform.cpp: avoid shadowed variable
2019-09-19 20:29:33 +02:00
Daniel Marjamäki
2d651b09fc
ExprEngine: Add new experimental path-sensitive data flow analysis. Initially used for 'verification' but could possibly later be used as a complement in the normal analysis. The code is work-in-progress and hacky!
2019-09-17 21:00:59 +02:00
PKEuS
e9f8dddabe
Set version to 1.89.99/1.90 dev
2019-09-02 15:44:40 +02:00
Daniel Marjamäki
4ede39a9b7
1.89: Set version
2019-09-01 12:16:33 +02:00
orbitcowboy
4f94e4fff8
cmdlineparser: Fixed typo inconlusive ==> inconclusive
2019-08-20 00:31:30 +02:00
Daniel Marjamäki
d95f29b23a
Fixed test/cli
2019-08-18 12:51:32 +02:00
Daniel Marjamäki
2d9a131817
Refactoring: Rename variables. Do not use leading _. Renamed 'col' to 'column'
2019-08-18 12:19:05 +02:00
Daniel Marjamäki
6431d1c58a
cli: Change default --template format, Cppcheck will now use the gcc template by default. Added --template=cppcheck1 format.
2019-08-18 07:50:50 +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
0fbbe2ff23
Refactor load/write of cppcheck project. Reuse same string constants in cli and gui.
2019-08-09 21:15:02 +02:00
amai2012
b0fbbb5aa7
Convert SHOWTIME_MODES to enum class
2019-07-31 22:35:51 +02:00
Daniel Marjamäki
ff5a23604f
astyle formatting
...
[ci skip]
2019-07-29 22:40:53 +02:00
amai2012
24ad434c52
Refactoring: use enum class
2019-07-29 21:05:09 +02:00
Daniel Marjamäki
45d1ca6f7c
Safe checks: Clarify a warning message
2019-07-25 17:19:51 +02:00
Daniel Marjamäki
c8bc88e7e2
Fix compiler error
2019-07-23 13:14:08 +02:00
Daniel Marjamäki
7e3626c84e
Travis: Check the naming conventions again
2019-07-15 20:58:07 +02:00
Daniel Marjamäki
8198bd5e8f
Rename variables in threadexecutor according to our naming convention
2019-07-15 18:45:06 +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
IOBYTE
c2ccfd5f8b
Increase Windows stack size to 8M ( #1998 )
...
* Increase Windows stack size to 8M
* try to add stack size cmake
2019-07-15 12:39:58 +02:00
Daniel Marjamäki
783f7f1648
Rename safeValues to unknownValues
2019-07-11 16:05:48 +02:00
Daniel Marjamäki
05d35b063d
Function return: Extra check of safe function return values
2019-07-10 20:00:21 +02:00
Daniel Marjamäki
c9906125de
Safe functions: Check more possible function argument values
2019-07-10 16:59:05 +02:00
PKEuS
ae86536128
Updated to Visual Studio 2019
2019-07-06 12:11:19 +02:00
PKEuS
d74f8c678f
Set version to 1.88.99/1.89 dev
2019-07-02 20:59:52 +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
faaabc74a7
Set version 1.88
2019-06-29 08:38:13 +02:00
Daniel Marjamäki
84cc09d17c
Update Copyright
2019-06-29 07:49:14 +02:00
Daniel Marjamäki
45d874bf75
Fixed #8929 ('cppcheck -E' should output valid/compileable code)
2019-05-11 14:00:42 +02:00
Daniel Marjamäki
fe04c15c9e
CheckStl: Modernize the recommendations. string::starts_with is more intuitive than string::compare
2019-05-05 10:35:44 +02:00
Daniel Marjamäki
7260bdd6d8
Fixed Cppcheck shadowVar warnings
2019-04-30 21:01:18 +02:00
Daniel Marjamäki
b94f4176f1
test/cli: execute addon
2019-04-14 15:00:03 +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
b04d1815ed
Add -std=c++17 and allow semicolon in 'if ()'
2019-04-12 09:10:25 +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
f6b410b469
GUI: add setting for 'checkHeaders', 'checkUnusedTemplates' and 'maxCtuDepth' to project
2019-04-10 16:49:24 +02:00
Daniel Marjamäki
58d88e149f
Add --addon=<addon> command line option
2019-04-07 17:44:43 +02:00
Daniel Marjamäki
7ec8ce2ece
--help: arguments should be written in alphabetical order
2019-04-07 13:20:23 +02:00
Daniel Marjamäki
111db91387
ImportProject: Import excluded paths properly
2019-04-07 12:31:52 +02:00
Daniel Marjamäki
c04cc02ee5
Refactoring; Use range for loop
2019-04-07 12:07:47 +02:00
Oliver Stöneberg
8d7d93aea7
donate-cpu.py: improved error detection ( #1766 )
...
* threadexecutor.cpp: streamlined error messages
* donate-cpu.py: detect additional signals and exitcode != 0 as crash as well and (ab)use elapsedTime to make the errorcode visible in the output / also detect ThreadExecutor issues
* donate-cpu.py: bumped version
* donate-cpu.py: fixed detection of ThreadExecutor errors
2019-03-29 06:53:40 +01:00
Daniel Marjamäki
a3257349b9
astyle formatting
...
[ci skip]
2019-03-17 10:50:06 +01:00
Daniel Marjamäki
c7155a8e08
Removed '--experimental-fast' flag
2019-03-17 08:19:56 +01: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
fda0f52424
Add --remove-unused-templates flag to remove all unused templates
2019-03-05 14:58:02 +01:00
Daniel Marjamäki
e4249d3811
Clarify help text for --remove-unused-included-headers
2019-03-04 20:07:11 +01:00
Daniel Marjamäki
3675318208
Added --remove-unused-included-templates option
2019-03-04 19:10:49 +01:00
Daniel Marjamäki
f5c274b3b1
Added '--check-headers=no' option.
2019-03-02 19:52:15 +01:00
PKEuS
11daabc1a8
Set version to 1.87.99/1.88 dev
2019-02-27 21:30:54 +01:00
Sebastian
d1deff7c02
threadexecutor.h: Disable THREADING_MODEL_FORK for Cygwin (trac 8973) ( #1670 )
...
The fork implementation in Cygwin seems to be not very reliable.
See also the Cygwin documentation here: https://cygwin.com/faq/faq.html#faq.using.fixing-fork-failures
More details in the ticket https://trac.cppcheck.net/ticket/8973
2019-02-15 21:47:33 +01:00
Daniel Marjamäki
6717f49f20
Try to give some credit to the 3rd party libraries we use.
2019-02-10 17:16:53 +01:00
Daniel Marjamäki
4f232e41dd
Add --experimental-fast option
2019-02-09 14:40:50 +01:00
Daniel Marjamäki
502d5e9142
1.87: Set versions
2019-02-09 09:07:27 +01:00
Daniel Marjamäki
bd7790fd8c
Update copyright year
2019-02-09 07:24:06 +01:00
Daniel Marjamäki
437800f46d
CLI: Added --max-ctu-depth
2019-02-03 17:51:36 +01:00
Daniel Marjamäki
961f66baff
Fixed #8820 (import GUI project)
...
This has basic handling of GUI projects. But further work will be needed to handle addons etc, the plan is that we will be able to run addons from the command line soon.
2019-01-31 20:40:21 +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
Paul Fultz II
9e4b605fca
Properly find pcre ( #1607 )
2019-01-18 21:13:35 +01:00
IOBYTE
f0cfe03f7b
template simplifier: add cli --debug-template option to print the parsed template information ( #1598 )
2019-01-14 08:29:32 +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
Daniel Marjamäki
792419a591
Use OVERRIDE macro in cli
2019-01-12 15:42:50 +01:00
Paul Fultz II
800076f9b8
Install to the correct cfgdir ( #1593 )
2019-01-12 08:05:03 +01:00
Daniel Marjamäki
5051744304
astyle formatting
...
[ci skip]
2019-01-09 19:47:46 +01:00
vahtis
5fc7fadf84
SunOs 11 compatibility with dirent ( #1574 )
...
* SunOs 11 compatibility issue solved. Member d_type is a BSD extension
* Added test for BSD also.
* Extra empty lines removed
2019-01-08 21:17:04 +01:00
Sebastian
b51f19d530
Fix some doxygen warnings/issues in the comments ( #1537 )
2018-12-21 21:23:03 +01:00
PKEuS
886aa07ffb
Set version to 1.86.99/1.87 dev
2018-12-08 11:53:37 +01:00
Daniel Marjamäki
5e527bdd08
Update version
2018-12-08 08:17:05 +01:00
amai2012
52d042fd48
Correct file size calculation
2018-11-30 23:18:51 +01:00
Daniel Marjamäki
895772711a
1.85: Set version
2018-10-13 18:55:19 +02:00
IOBYTE
24f2e288d5
Make --debug alias --debug-normal for backwards compatibility. ( #1414 )
2018-10-09 14:47:50 +02:00
orbitcowboy
361ae311f6
cmdlineparser: Stop processing in case an invalid path for --includes-file=<PATH> and --config-excludes-file=<PATH> is provided.
2018-09-04 16:37:43 +02:00
Kamil Dudka
0ca6ab1a71
ErrorLogger: add {cwe} ( #1341 )
2018-08-21 13:58:19 +02:00
Daniel Marjamäki
19af19b15e
doxygen: Updated documentation shown on main page
2018-08-18 17:36:40 +02:00
Daniel Marjamäki
67e9a9cb25
naming convention conformance
2018-08-18 15:52:18 +02:00
Daniel Marjamäki
5ebfa035aa
Updated variable names according to naming convention
2018-08-18 15:45:42 +02:00
Daniel Marjamäki
ddbe4b89b5
Renamed --debug to --debug-simplified
2018-08-05 11:19:20 +02:00
firewave
01ceb9bae7
fixed issue 8661: Misleading error message when compilation database is not recognized
2018-07-25 16:26:25 +02:00
orbitcowboy
f27baf0956
cli: stop processing in case an invalid or non-existant rule-file is provided.
2018-07-25 08:25:18 +02:00
Olivier Croquette
b05ae44edb
Fix link error when building with MinGW about __imp_PathFileExistsA ( #1310 )
...
Following error occurs when building with MinGW 7.2.0 and Ninja on Windows:
cli/CMakeFiles/cli_objs.dir/filelister.cpp.obj: In function `MyIsDirectory':
cppcheck-1.84\build/../cli/filelister.cpp:49: undefined reference to `__imp_PathIsDirectoryA'
cli/CMakeFiles/cli_objs.dir/filelister.cpp.obj: In function `MyFileExists':
cppcheck-1.84\build/../cli/filelister.cpp:67: undefined reference to `__imp_PathFileExistsA'
collect2.exe: error: ld returned 1 exit status
This is the corresponding code in filelister.cpp:
#ifdef _WIN32
// snip
static BOOL MyIsDirectory(const std::string& path)
{
#ifdef __BORLANDC__
return (GetFileAttributes(path.c_str()) & FILE_ATTRIBUTE_DIRECTORY);
#else
// See http://msdn.microsoft.com/en-us/library/bb773621(VS.85).aspx
return PathIsDirectoryA(path.c_str());
#endif
}
static BOOL MyFileExists(const std::string& path)
{
#ifdef __BORLANDC__
DWORD fa = GetFileAttributes(path.c_str());
BOOL result = FALSE;
if (fa != INVALID_FILE_ATTRIBUTES && !(fa & FILE_ATTRIBUTE_DIRECTORY))
result = TRUE;
#else
const BOOL result = PathFileExistsA(path.c_str());
#endif
return result;
}
The else blocks assume that Shlwapi.lib is available on Windows except with Borland,
so the patch set ensures that the library is linked on the same condition.
2018-07-15 22:26:02 +02:00
PKEuS
009287f912
Set version to 1.84.99/1.85 dev
2018-06-25 21:03:43 +02:00
Daniel Marjamäki
a21c05edfe
1.84: Set versions
...
[ci skip]
2018-06-10 22:21:57 +02:00
Daniel Marjamäki
45379a3aa6
Updated copyright year for modified files
...
[ci skip]
2018-06-10 22:07:21 +02:00
bwoester
9b28499412
Import BCB6 projects ( #1245 )
...
* added support for reading borland c++ builder 6 projects
* add: fetch sysdefines from project
add: start providing bcb6 predefines (WIP)
* configure all the internal defines for BCB6
* make sure define strings don't start with ';'
* improvements on bwoesters BCB6 project support
- improved `*.bpr` XML handling by reducing the number of loops
- added `const` where aplicable
- optimized compiler argument parser performance
- reformatted code with provided astyle config
* - undo looping (keep it the same as the other implementations)
- keep parsing of cflags simple and separate from the synonym cleanup (no need for micro optimization in this place)
- move input validation to FileSettings::setDefines
- re-run astyle
* use [] instead of at() when comparing characters
2018-05-20 18:19:20 +02:00
IOBYTE
ce50df8047
Fix override warnings. ( #1234 )
2018-05-15 16:37:40 +02:00
Daniel Marjamäki
cdf7ea0a33
daca2: remove {code} in results
2018-04-24 16:16:45 +02:00
Daniel Marjamäki
cf4367d013
daca2: remove 'inconclusive' keyword
2018-04-24 11:06:25 +02: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
b596b0d549
Refactorization: pass std::string directly to std::*fstream
2018-04-11 09:50:42 +02:00
PKEuS
d2146844dd
Refactorizations:
...
- Replace several push_back-calls by emplace_back
- Replace some x = x.substr(0, y) calls by x.erase(y)
2018-04-11 09:44:35 +02:00
Daniel Marjamäki
a0906140a6
Suppressions: New extensible Suppressions xml format that allow more attributes. To start with it also allows symbolName.
2018-04-09 06:43:48 +02:00
PKEuS
a5162e26e8
Set minimum required compilers to GCC 4.6 or Visual Studio 2013 to support more C++11 features. Use VS 2013 and VS 2017 in AppVeyor.
2018-04-08 23:03:57 +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
PKEuS
32a2060f14
Set version to 1.83.99/1.84 dev
...
Updated copyright year in version.h
2018-04-02 15:21:37 +02:00
Daniel Marjamäki
7260be81a6
Update version
2018-03-31 21:25:29 +02:00
Daniel Marjamäki
7e4dba6a7e
Updated copyright year
2018-03-31 20:59:09 +02:00
Daniel Marjamäki
e9fefcac46
gcc 4.5 compatibility
2018-03-30 21:04:32 +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
Daniel Marjamäki
46307df9b6
Renamed method
2018-03-11 15:06:08 +01:00
orbitcowboy
50844aa7fc
checkType: Take into account the size of char.
2018-02-18 14:28:48 +01:00
Sebastian
78cceea8f6
dmake: Fix windows project and build ( #1091 )
...
Replace legacy dmake.vcproj with according .sln and .vcxproj files.
Update windows code in filelister.cpp so dmake compiles and works again.
2018-02-17 06:31:12 +01:00
Daniel Marjamäki
db274e8308
Fix testrunner in cygwin
2018-02-10 15:34:49 +01:00
Daniel Marjamäki
780bd7e63e
More flexible loading of platform files, when using --platform it should not be necessary to provide the full path
2018-02-09 16:22:22 +01:00
Matthias Krüger
f009cfc845
fix some typos found by codespell.
2018-02-04 20:53:43 +01:00
Daniel Marjamäki
2f508c0bba
1.82: Updated versions
2018-01-14 16:25:17 +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
BNT
fd76abba16
also generate debug information when building for release. This makes ( #1003 )
...
debugging and profiling easier and has now drawback as long as the PDB
files are not distributed (which would blow up installers)
2017-11-29 08:31:30 +01:00
amai2012
2f2172e1a7
#8178 Remove all references to XML version 1
2017-11-22 10:49:59 +01:00
Ali Can Demiralp
bf174f583b
Link to Shlwapi.lib on MSVC to get rid of missing symbol issues. ( #978 )
2017-10-18 17:38:15 +02:00
Dmitry-Me
93e5140945
Better variable names
2017-10-14 23:05:58 +03:00
PKEuS
a29b33b833
Set version to 1.81.99/1.82 dev
2017-10-07 23:22:31 +02:00
Daniel Marjamäki
cebf34e718
1.81: Set versions
2017-10-07 12:55:36 +02:00
Oleksandr Redko
2bee664ec9
Return non-const object to enable move compiler optimization ( #966 )
2017-10-03 18:24:18 +02:00
Daniel Marjamäki
9f306cf3aa
Added C++14 option
2017-09-22 22:00:00 +02:00
Ayaz Salikhov
2604156fe7
Use C++ headers ( #949 )
2017-09-07 13:02:44 +02:00
Ayaz Salikhov
76dc828e24
Use nullptr ( #950 )
...
Refactoring: use nullptr
2017-09-07 10:33:52 +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
Dmitry-Me
b6c218b7af
Resolve CID 1365360
...
Do not ignore failures to load windows.cfg
2017-08-22 18:09:02 +03:00
Heiko Eißfeldt
de9f8b8a3c
refactoring ansiToOEM
2017-08-22 13:15:11 +02:00
Alexander Mai
0cae823c5d
Fix doxygen comments
2017-08-21 21:13:01 +02:00
Dmitry-Me
2820febaff
Resolve CID 1379700
...
Ensure the string is null-terminated
2017-08-21 18:25:12 +03: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
3e7f4c214d
minor code cleanup
2017-08-13 13:27:32 +02:00
Ayaz Salikhov
b8cd7dbb5c
Use nullptr instead of 0 or NULL ( #936 )
2017-08-09 20:00:26 +02:00
orbitcowboy
61e47208eb
Removed hard coded avr8 platform and moved it into a platform file (avr8.xml).
2017-08-09 11:58:27 +02:00
PKEuS
9558877458
Set version to 1.80.99/1.81 dev
2017-07-30 08:48:47 +02:00
Daniel Marjamäki
91eb0f1fad
Removed XML version 1
2017-07-29 18:56:22 +02:00
Daniel Marjamäki
baedfa6718
1.80: Set versions
2017-07-29 12:55:53 +02:00
BNT
f3cef7f9eb
add missing change from "GUI: Rename methods in FileList and PathMatch" ( #929 )
2017-07-28 16:37:59 +02:00
Daniel Marjamäki
515e84ed00
Renamed PathMatch::Match to PathMatch::match
2017-07-28 11:27:04 +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
Ayaz Salikhov
132c0af22a
Simplify some statements
2017-06-01 02:02:12 +03: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
Daniel Marjamäki
18adb97873
astyle formatting
...
[ci skip]
2017-05-28 15:56:26 +02:00
Ayaz Salikhov
28aa939d69
iwyu - include what you use
2017-05-27 04:33:47 +02:00
uburuntu
809ccc7b7f
not initialized members in constructor I dont know how to fix, so left comments about it
2017-05-27 04:18:19 +02:00
Daniel Marjamäki
0262020707
--template: Removed 'clang' and renamed 'cppcheck2' to 'daca2'
2017-05-25 05:24:42 +02:00
Daniel Marjamäki
a3c0eecccf
Added --template=cppcheck2 output format
2017-05-23 12:19:11 +02:00
orbitcowboy
ffe6582e6b
Added platform support for Atmel AVR 8 bit microcontrollers.
2017-05-22 14:46:19 +02:00
Daniel Marjamäki
b53a2ff9eb
Command line: Added --template=clang formatting
2017-05-19 17:09:49 +02:00
Daniel Marjamäki
6967d68137
Add --plist-output argument
2017-05-16 14:07:23 +02:00
PKEuS
3432257390
Removed deprecated command --append
2017-05-14 11:57:04 +02:00
PKEuS
fda1f67da6
Set version to 1.79.99/1.80 dev
2017-05-14 10:07:38 +02:00
PKEuS
fb94ad21fa
Updated Visual Studio solution to VS2017.
2017-05-14 10:04:25 +02:00
Daniel Marjamäki
e5e5a5e4b8
1.79: Set version
2017-05-13 11:25:16 +02:00
Daniel Marjamäki
bc7799dccd
Fixed #7888 (false positive from knownConditionTrueFalse with sizeof(int) == sizeof(long))
2017-05-01 12:23:28 +02:00
PKEuS
b1f4bd7504
Refactorization: Reimplemented Settings::_enabled as a bitfeld instead of std::set ( #7995 )
2017-04-11 11:49:26 +02:00
PKEuS
47570f5791
Set version to 1.78.99/1.79 dev
2017-04-05 11:24:26 +02:00
Benjamin Fovet
1f83c014d5
Remove redundant word in --library description ( #886 )
2017-04-04 01:40:37 +02:00
Daniel Marjamäki
c2a6ee3ea1
Use 'endsWith'
2017-04-01 18:27:53 +02:00
Daniel Marjamäki
2eda59eb72
Update version
2017-04-01 11:03:45 +02:00
Daniel Marjamäki
633ed23c0d
Fix Cppcheck warnings about mismatching function argument names
2017-04-01 09:31:27 +02:00
PKEuS
8ba9ce4924
Set version to 1.77.99/1.78 dev
2017-01-01 11:58:39 +01:00
Daniel Marjamäki
bf5fa90952
updated version info
2016-12-31 18:35:08 +01:00
Daniel Marjamäki
e9d950d4f5
Cppcheck build dir: Better handling when --project is used
2016-12-08 22:46:44 +01:00
PKEuS
cfac3b457d
Several small refactorizations
2016-12-06 22:12:02 +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
Stefan Weil
57b57428c2
Fix some typos in comments (found by codespell)
...
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-11-27 11:40:42 +01:00
Matthias Krüger
2832b61a7c
--cppcheck-build-dir: --help was telling about --analyze-dir while the actual flag according to code is --cppcheck-build-dir.
...
Fix --help.
2016-11-16 01:33:39 +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
9ff3e85899
Added --cppcheck-build-dir flag
2016-10-29 12:18:11 +02:00
Daniel Marjamäki
324f68ca36
rename function
2016-10-28 12:10:19 +02:00
PKEuS
e417e15567
Set version to 1.76.99/1.77 dev
2016-10-09 10:33:03 +02:00
PKEuS
29e1fe136a
Fixed Visual Studio build after pathmatch.h/cpp was moved to lib, fixed compiler errors about getcwd
2016-10-02 15:48:03 +02:00
Daniel Marjamäki
3605457cbe
CLI: Fix exclude of absolute path. #4399
2016-10-02 12:38:44 +02:00
orbitcowboy
a50405b8ab
cli: Added documentation for --doc option.
2016-09-09 14:03:12 +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
f45dc345a9
Merge branch 'master' into project
2016-08-07 15:47:41 +02:00
Daniel Marjamäki
78fc307c73
1
2016-08-07 15:45:36 +02:00
Matthias Krüger
45e600f71c
Only warn about XML 1 if XML output is desired.
2016-08-07 15:37:06 +02:00
Daniel Marjamäki
f83661b206
Merge branch 'master' into project
2016-08-07 15:36:35 +02:00
Daniel Marjamäki
4dbdb50317
split
2016-08-07 15:35:41 +02:00
Daniel Marjamäki
fab2c96622
j2
2016-08-07 14:30:09 +02:00
Daniel Marjamäki
e0f4ce9358
vs
2016-08-07 13:55:27 +02:00
PKEuS
ec4a85ecef
Added deprecation warning for XML format 1, which will be removed in cppcheck 1.81
2016-08-07 13:50:52 +02:00
Daniel Marjamäki
f0727f2148
Merge branch 'master' into project
2016-08-06 21:05:29 +02:00
Daniel Marjamäki
09d6f4f0a4
1
2016-08-06 21:04:50 +02:00
Frank Zingsheim
47c063e13f
Fixed #7660 (cmake build does not handle simplecpp)
2016-08-06 18:21:54 +02:00
Daniel Marjamäki
2f1c80560a
1.75: Set versions
2016-08-06 11:47:27 +02:00
Daniel Marjamäki
3f3fc3d232
1
2016-08-05 19:46:24 +02:00
PKEuS
63aa2fbed0
--append is deprecated now and will be removed in cppcheck 1.80.
2016-07-29 10:50:37 +02:00
PKEuS
eafed235a6
Attempt to fix build on Unix systems, ran AStyle.
2016-07-26 16:50:32 +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
PKEuS
12e3cf584c
Visual Studio solution:
...
- Fixed include paths
- Export simplecpp to cppcheck-core.dll
- Added /Zc:rvalueCast
2016-07-21 20:38:58 +02:00
Daniel Marjamäki
8b69d61d34
update AdditionalIncludeDirectories in vcxproj files
2016-07-20 22:01:53 +02:00
Daniel Marjamäki
03d2829fb9
Merge simplecpp branch
2016-07-20 12:21:00 +02:00
PKEuS
b5d3ecb942
Updated TinyXML, make use of second argument of XMLElement::Attribute()
2016-07-09 11:56:07 +02:00
PKEuS
321d2aeafb
Set version to 1.74.99/1.75 dev
2016-06-07 19:19:58 +02:00
Daniel Marjamäki
e7f1318d4b
1.74: set version
2016-06-05 18:21:33 +02:00
Daniel Marjamäki
85c7456546
http://cppcheck.sourceforge.net => http://cppcheck.net
2016-06-05 18:17:47 +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
PKEuS
7ff90e7fae
Set version to 1.73.99/1.74 dev
2016-04-22 16:55:19 +02:00
Daniel Marjamäki
b6d3aefba6
1.73: Set versions
2016-04-08 20:46:59 +02:00
Lau bakman
53f07c1423
Determine if path is directory for XFS filesystem
...
The dir_result->d_type == DT_DIR does not work on XFS file systems.
This is fixed by using the FileLister::isDirectory when dir_result->d_type == DT_UNKNOWN.
According to readdir_r documentation, the case where d_type == DT_UNKNOWN should be handled.
2016-01-20 12:55:48 +01:00
PKEuS
f47e05b6a7
Set version to 1.72.99/1.73 dev
2016-01-10 10:10:33 +01:00
Daniel Marjamäki
890ceea3bf
1.72: Set version
2016-01-09 14:41:54 +01: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
ec733e7e71
CLI: added --platform=<file> interface
2016-01-07 20:19:08 +01:00
Daniel Marjamäki
79e663dd6f
Settings: Remove '_' prefix for public member variables
2016-01-03 16:18:17 +01:00
Daniel Marjamäki
599327bfb1
cmdlineparser: Added -E option
2016-01-02 11:48:36 +01:00
Lauri Nurmi
996c9244d8
Update copyright year to 2007-2016.
2016-01-01 15:34:45 +02:00
Daniel Marjamäki
3082612e6d
astyle formatting
2015-12-14 10:41:04 +01:00
Daniel Marjamäki
2ad159a45a
FileLister: minor update, append char instead of string
2015-12-13 15:16:00 +01:00
Pavel Bibergal
e4dc97c81c
faster recursive file collection on huge codebases (posix systems), was 47sec to collect all files, now its only 3
2015-12-13 15:21:01 +02:00
Daniel Marjamäki
1f16e72b19
Removed --debug-fp. The reduce tool should be used instead.
2015-12-10 10:44:36 +01:00
Alexander Mai
5cf923d091
Don't run SymbolDatabase::validate on --debug. Replace some NULL by nullptr
2015-12-05 21:07:03 +01: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