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
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
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
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
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
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
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
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
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
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
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
IOBYTE
f0cfe03f7b
template simplifier: add cli --debug-template option to print the parsed template information ( #1598 )
2019-01-14 08:29:32 +01: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
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
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
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
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
jrp2014
b813a6d407
Refactoring
2018-04-04 21:11:23 +02:00
jrp2014
07b5afcdc6
Improve constness
2018-04-04 21:02:13 +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
46307df9b6
Renamed method
2018-03-11 15:06:08 +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
Daniel Marjamäki
c4caee6b18
Updated copyright year
2018-01-14 15:37:52 +01:00
amai2012
2f2172e1a7
#8178 Remove all references to XML version 1
2017-11-22 10:49:59 +01:00
Daniel Marjamäki
9f306cf3aa
Added C++14 option
2017-09-22 22:00:00 +02:00
Dmitry-Me
b6c218b7af
Resolve CID 1365360
...
Do not ignore failures to load windows.cfg
2017-08-22 18:09:02 +03:00
Ayaz Salikhov
3e7f4c214d
minor code cleanup
2017-08-13 13:27:32 +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
Daniel Marjamäki
91eb0f1fad
Removed XML version 1
2017-07-29 18:56:22 +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
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
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
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
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
9ff3e85899
Added --cppcheck-build-dir flag
2016-10-29 12:18:11 +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
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
09d6f4f0a4
1
2016-08-06 21:04:50 +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
b5d3ecb942
Updated TinyXML, make use of second argument of XMLElement::Attribute()
2016-07-09 11:56:07 +02:00
Daniel Marjamäki
85c7456546
http://cppcheck.sourceforge.net => http://cppcheck.net
2016-06-05 18:17:47 +02: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