92 Commits

Author SHA1 Message Date
Oliver Stöneberg
f2461781fd
added xml.h wrapper for TinyXML2 / cleaned up suppressions of Clang compiler warnings (#5700) 2023-11-26 14:04:35 +01:00
Oliver Stöneberg
e6d15b17ff
extracted FileSettings from ImportProject to filesettings.h (#5604) 2023-11-02 17:42:41 +01:00
Oliver Stöneberg
0f28f3e493
generate AddonInfo only once (#4958)
Currently the `AddonInfo` is generated and discarded on each addon
invocation. This leads to an unnecessary process invocation for each
addon on each file.

Also if an addon is completely broken we will still perform the whole
analysis only for it to be failed at the end so we should bail out early
if we know it doesn't work at all.
2023-10-08 21:28:57 +02:00
Daniel Marjamäki
d069dbfd93
Fix #12029 (Fix definitions of global constants) (#5504) 2023-10-02 20:32:51 +02:00
Paul Fultz II
e6632d93e3
Fix 11983: False positive: uninitialized variable (#5443) 2023-09-13 23:27:08 +02:00
Oliver Stöneberg
b31860b72d
fixed #11925 (build slowest files first) (#5419)
This will mainly help if you only build the `cppcheck` targets and the
more threads you utilize for compilation.
2023-09-11 20:22:07 +02:00
Daniel Marjamäki
44c149e51b
Fix #11897 (Safety: show what checks are enabled/disabled) (#5378)
This primarily adds the corresponding report in the GUI that we have in
the command line already
2023-08-31 18:28:47 +02:00
Oliver Stöneberg
d8b44dff56
fixed/suppressed several compiler warnings (#5327) 2023-08-16 19:35:53 +02:00
Oliver Stöneberg
674231ae52
added clean C/C++ keyword lists and use them in TokenList (#3774) 2023-02-24 21:43:27 +01:00
Oliver Stöneberg
bea6aec2b2
extracted ValueFlow::Value to vfvalue.{cpp|h} (#4642) 2023-01-26 22:23:22 +01:00
Oliver Stöneberg
41849b1a78
generate *.vcxproj file lists with dmake (#4652) 2023-01-21 11:55:36 +01:00
Oliver Stöneberg
29e0133cb5
extracted FwdAnalysis from astutils.{cpp|h} (#4637)
* added missing filtering offiles in Visual Studio project

* extracted `FwdAnalysis` from `astutils.{cpp|h}`
2022-12-13 22:29:23 +01:00
Daniel Marjamäki
8f386e15fd Remove bug hunting. This feature will be provided in Cppcheck premium. 2022-04-11 07:31:33 +02:00
Paul Fultz II
a1e0ef9b38
Refactor: Use interval analysis for symbolic values for inferCondtion (#3488) 2021-10-09 16:19:06 +02:00
Paul Fultz II
8dc1fa7a59
Add colors to CLI reporting (#3304) 2021-07-08 21:21:35 +02:00
Daniel Marjamäki
d2d2124238 Revert "Clang import; This experimental feature didn't "take off" much. After a lot of work we are still far fram the goal. I remove it now but don't rule out completely that it could ever be added again."
This reverts commit 207361b174102f38909aec9a996b944ecb370464.
2021-04-30 16:47:02 +02:00
Daniel Marjamäki
207361b174 Clang import; This experimental feature didn't "take off" much. After a lot of work we are still far fram the goal. I remove it now but don't rule out completely that it could ever be added again. 2021-04-21 18:59:48 +02:00
Daniel Marjamäki
37a5ec8cd5 Summaries: Moved to its own files 2020-12-20 19:53:58 +01:00
Daniel Marjamäki
ad4185428e Run dmake again 2020-11-16 09:14:31 +01:00
Daniel Marjamäki
c7cbe7f2d3 rename externals/tinyxml to externals/tinyxml2 2020-11-16 09:11:53 +01:00
Paul Fultz II
bd7e915c20
Add generic reverse valueflow (#2878) 2020-11-10 16:00:55 +01:00
Daniel Marjamäki
d0ac583b97 Add 'bughuntingchecks' 2020-06-19 13:16:48 +02:00
Oliver Stöneberg
37bc0483a4
made check.h less heavy (#2633) 2020-05-23 07:16:49 +02:00
amai2012
d78ff975a0 Run dmake 2020-05-19 10:11:56 +02:00
Paul Fultz II
7368a54629
Add generic valueflow forward analysis (#2511) 2020-02-13 16:27:06 +01:00
Daniel Marjamäki
4c778e0999 Clang import; Rename files/namespace 2020-01-10 16:29:06 +01:00
Daniel Marjamäki
b03bdfaf72 Import Clang ast dump (experimental) 2020-01-05 15:12:53 +01:00
Daniel Marjamäki
33d43808f7 Run dmake 2019-10-30 18:38:37 +01: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
Rikard Falkeborn
f139558d90 Dmake cleanups (#2077)
* dmake: Refactor object files to separate function

No functional change.

* dmake: Use range for loops

No functional change.

* Add all external cpp files instead of open coding

No functional change.

* Remove duplicate check.h in lib.pri HEADERS

* Add missing newline

No functional change, but the readability of the generated Makefile is
slightly improved.
2019-08-14 20:53:51 +02:00
Rikard Falkeborn
0324bbf63c dmake: Fix check of last header file in lib.pri (#2045)
Since the number of test files is larger than the number of lib files,
this only caused an extra harmless '\' being printed after the last
header file in lib.pri. If the number of test files would have been
smaller than the number of lib files, the generated lib.pri would have
been broken.
2019-07-27 09:45:04 +02:00
Daniel Marjamäki
271763e680 CTU: Refactoring 2018-12-25 21:11:23 +01:00
Daniel Marjamäki
9ff3e85899 Added --cppcheck-build-dir flag 2016-10-29 12:18:11 +02:00
Daniel Marjamäki
3605457cbe CLI: Fix exclude of absolute path. #4399 2016-10-02 12:38:44 +02:00
Daniel Marjamäki
606e31602c Fixed #7177 (Support compile_commands.json) 2016-08-13 10:50:03 +02:00
Daniel Marjamäki
03d2829fb9 Merge simplecpp branch 2016-07-20 12:21:00 +02:00
Aleksandr Pikalev
e92bbf6481 Fixed #7275 - Make GUI tests buildable
* Use -std=c++11 flag for gcc and clang
 * Use $$PWD variable in qmake files to have correct paths
 * Change tokenizer.simplifyTokenList() to tokenizer.simplifyTokenList2()
 * Add build-generated files to .gitignore
 * Link libpcre only if rules are enabled
2016-01-08 15:21:36 +01:00
Alexander Mai
b1385dd951 Run dmake to update Makefile etc. 2015-11-22 10:40:48 +01:00
Alexander Mai
96c3c111fc Refactoring: Move some AST related functions to distinct source file 2015-08-02 21:57:32 +02:00
Daniel Marjamäki
c2a15ac286 Removed ExecutionPath 2015-07-23 19:01:12 +02:00
PKEuS
1e8c7e102d Revert "run dmake"
This reverts commit 8ccf9eed09f11f72ce3d615c14bf74847d4aa835.
2014-09-23 21:04:31 +02:00
Matthias Krüger
8ccf9eed09 run dmake 2014-09-23 16:20:19 +02:00
Lauri Nurmi
1cc872f5b2 Change "obsolete" in all filenames into "obsolescent", and also update all references to such files.
Neither the C standard, the C++ standard, or POSIX talks about "obsolete". All of them use the word "obsolescent", which is a different word with a different meaning.
2014-09-23 16:18:04 +02:00
Daniel Marjamäki
7847263451 Fixed #6158 (New check: dangerous sign conversion) 2014-09-11 18:10:19 +02:00
Daniel Marjamäki
3ac5f16668 Makefile: generate new Makefile with dmake 2014-08-29 18:32:50 +02:00
Matthias Krüger
cd33d784d5 run dmake 2014-08-27 09:45:50 +02:00
Matthias Krüger
b5cf56790c dmake: update 2014-08-06 14:25:49 +02:00
Daniel Marjamäki
bb8973aac7 Updated Makefile 2014-05-24 12:54:16 +02:00
Daniel Marjamäki
d8270c710a Add new experimental value flow analysis 2014-01-04 20:57:02 +01:00
Daniel Marjamäki
8ba14edb51 dmake: fixed lib.pri for gui (tinyxml) 2013-07-08 21:56:09 +02:00