71 Commits

Author SHA1 Message Date
Oliver Stöneberg
4182f943aa
use more granular suppressions in selfcheck and prefer inline suppressions (#5703) 2023-12-01 15:59:01 +01:00
Oliver Stöneberg
3bafe164a3
enabled some clang-tidy warnings for non-GUI code (#5679)
There are some clang-tidy warnings which cannot properly handle the
extensions used in the Qt code so the produce lots of false positives
and were previously enabled. With clang-tidy now offering the
possibility to inherit the parent configuration we can enable these
across the project and simply disable them for the GUI code.

No additional warnings were found as they were already fixed in earlier
commits without enabling the checks in question.
2023-11-20 10:06:46 +01:00
Oliver Stöneberg
92c089d4ad
fixed some "Parameter can be made pointer/reference to const" Rider warnings (#5680) 2023-11-20 07:23:45 +01:00
Daniel Marjamäki
ae3f7bd800
Fixed #12187 (Windows build GUI with cmake) (#5662) 2023-11-15 16:56:46 +01:00
Oliver Stöneberg
63e00ea918
fixed some "Variable can be made constexpr" Rider warnings (#5615) 2023-11-03 09:55:44 +01:00
chrchr-github
f4030c4b1a
Fix #11791 Build regression with GCC 13 (#5193)
Patch supplied by Joachim Reichel.
2023-06-26 11:15:41 +02:00
Rainer Wiesenfarth
f4f58bf020
Fix #11081 GUI: Windows release build crashes (#5083)
* Fix #11081 GUI: Windows release build crashes

Use generator expressions rather than if statements when adding compiler
options or definitions.

* Fix #11081 GUI: Windows CMake debug build fails with default options

When DISABLE_CRTDBG_MAP_ALLOC is using the default value (OFF), the
debug build of cppcheck-gui fails, as the "realloc" method names in some
of the Qt headers are replaced by the macro defined by the compiler.
Thus DISABLE_CRTDBG_MAP_ALLOC is explicitely set when compiling
cppcheck-gui in Debug mode using MSVC.
2023-06-07 11:33:55 +02:00
chrchr-github
78182d4773
Fix FN constVariablePointer (#5076)
* Fix FN constVariablePointer

* Fix FP

* Add const

* Fix tests

* Add const
2023-05-22 19:53:51 +02:00
Oliver Stöneberg
5be8eee943
iwyu.yml: use a distro which has the latest include-what-you-use / enabled Qt mappings / cleaned up includes (#4885) 2023-04-08 16:08:47 +02:00
Oliver Stöneberg
0c95971c54
added .gitattributes and normalized files (#4668) 2022-12-30 21:33:45 +01:00
Daniel Marjamäki
883908b439 triage tool: handle reports when cppcheck is run on local packages 2022-12-01 06:34:23 +01:00
Oliver Stöneberg
cff1cd9cda
applied clang-tidy misc-const-correctness fixes for POD types, iterators and references (#4529)
* applied `misc-const-correctness` fixes for POD types and iterators

* applied `misc-const-correctness` fixes for references
2022-10-02 07:12:40 +02:00
Oliver Stöneberg
858585ceb1
disabled all clang-tidy checks for Qt generated files (#4525)
* disabled cll clang-tidy checks for Qt generated files

* enabled `bugprone-suspicious-include` clang-tidy warning
2022-09-30 07:27:03 +02:00
Oliver Stöneberg
339484d2a1
mitigated and enabled more clang-tidy warnings (#4470)
* fixed some `performance-inefficient-string-concatenation` clang-tidy warnings

* fixed and enabled `modernize-replace-random-shuffle` clang-tidy warning

* fixed and enabled `bugprone-suspicious-string-compare` clang-tidy warning

* mitigated and enabled `readability-non-const-parameter` clang-tidy warnings

* clang-tidy.md: documented some disabled checks

* mitigated and enabled `performance-unnecessary-value-param` clang-tidy warnings
2022-09-16 18:58:59 +02:00
Oliver Stöneberg
54771306c5
selfcheck : cleaned up some suppressions, fixed warnings and some cleanups (#4436)
* cleaned up triage.pro and pass all triage files to selfcheck

* CI-unixish.yml: factored out redundant selfcheck flags

* CI-unixish.yml: cleaned up selfcheck suppressions and fixed warnings

* added explicit `missingInclude` checks to selfcheck to work around current issues/limitations / fixed selfcheck includes / added some unit tests for `missingInclude`

* applied the selfcheck changes to the sanitizer jobs

* only fail TSAN CI build in case of TSAN error / updated sanitizer CI build TODOs
2022-09-06 23:11:39 +02:00
Oliver Stöneberg
e8b0f12367
replaced if(MATCHES) with if(STREQUAL) (#4263)
`MATCHES` does regular expression matching which is not the intended behavior here. `Clang` still requires it since it also needs to match `AppleClang.
2022-07-11 10:46:18 +02:00
Oliver Stöneberg
d299d22fa2
updated CI to latest ubuntu and clang (#4004) 2022-05-22 15:27:32 +02:00
Oliver Stöneberg
c71033548f
fixed some clang-tidy warnings (#3080) 2022-05-08 20:42:06 +02:00
Oliver Stöneberg
36ef4dc5b8
added support for Qt6 (#3930) 2022-04-15 18:49:24 +02:00
Oliver Stöneberg
902f46bae5
some minor QRegularExpression usage optimizations and cleanups (#3999) 2022-04-11 19:15:42 +02:00
Oliver Stöneberg
a0bab85bf9
ported GUI code from QRegExp to QRegularExpression (#3785) 2022-03-23 18:16:22 +01:00
chrchr-github
0e147502cc
Fix #10888 FN variableScope with enum and struct (#3920)
* Fix #10888 FN variableScope with enum and struct

* Scope reduction

* Scope reduction
2022-03-21 16:05:38 +01:00
Oliver Stöneberg
0d336b868c
avoid some Clang compiler warnings (#3896) 2022-03-13 20:07:58 +01:00
Oliver Stöneberg
e208fc67c1
small selfcheck improvements (#3888)
* CI-unixish.yml: added missing cppcheck-lib library to GUI selfcheck

* CI-unixish.yml: split triage from tools selfcheck since it requires the qt library

* replaced Q_NULLPTR with nullptr

* fixed passedByValue selfcheck warning
2022-03-11 21:42:46 +01:00
Oliver Stöneberg
d528555002
some preparations for Qt6 support (#3777)
* findDependencies.cmake: cleaned up find_package() call for Qt

* some CMake preparations for Qt6 support

* some Qt6 compilation fixes
2022-02-07 17:35:25 +01:00
Oliver Stöneberg
9d36dd56a8
reordered includes in GUI code (#3790) 2022-02-02 16:17:28 +01:00
Oliver Stöneberg
38420c8ecf
added some more missing copyright headers (#3766) 2022-01-28 15:56:11 +01:00
Daniel Marjamäki
4d5ad5e42e triage: make it possible to copy selected results 2021-12-22 18:58:11 +01:00
Oliver Stöneberg
54d621555d
scan GUI sources with clang-tidy in CI (#3233)
* build UI dependencies before running clang-tidy

* clang-tidy.yml: enabled GUI sources and build some dependencies for clang-tidy

* work around missing dependency for Qt install step
2021-10-31 20:15:32 +01:00
Oliver Stöneberg
b4704ba065
use target-specific configuration instead of global ones in CMake (#3534) 2021-10-30 09:08:07 +02:00
Alfi Maulana
aab5b39e2d
feat: add support for .ipp and .ixx extensions (#3383) 2021-08-09 10:46:56 +02:00
Maksim Derbasov
5dae162780
[triage tool] Keep UI alive while wget and tar execution (#3296) 2021-06-13 10:51:42 +02:00
Oliver Stöneberg
6397e29f84
cleaned up includes based on include-what-you-use (#3141) 2021-04-03 21:30:50 +02:00
Rikard Falkeborn
50cdb6cbfc
Astyle: sync windows and linux folders (#3016) 2021-01-06 17:13:44 +01:00
Daniel Marjamäki
8a90e55ece triage: fix version match for 2.1 2020-09-14 15:43:24 +02:00
Daniel Marjamäki
33388217a5 new default branch is main 2020-06-15 20:04:57 +02:00
Oliver Stöneberg
1388e9385b
cleaned up setting of compiler options and a few more things in CMake (#2599)
* cleaned up compiler options related code in CMake

* moved cmake_minimum_required() and raised to latest 2.8.x version

* use proper compiler version check / print compiler version

* fixed linking of sanitized builds

* added proper version checks to newer Clang warnings and enabled them / moved tinyxml_objs flags to proper compiler

* disabled -Wdeprecated-declarations for Clang

* compileroptions.cmake: removed unnecessary check for clang++ existence - CMAKE_CXX_COMPILER_ID is determined by CMake

* printInfo.cmake: removed unnecessary message for ANALYZE_ADDRESS - LSAN is part of ASAN and enabled by default

* cleaned up if() comparisons in CMake

* added/adjusted TODOs
2020-04-22 11:04:19 +02:00
Oliver Stöneberg
1af959af2c
fixed -Wextra-semi-stmt Clang warnings (#2553)
* fixed -Wextra-semi-stmt Clang warnings

* adjusted REDIRECT macro to require a semicolon

* testmathlib.cpp: rolled back accidental change
2020-04-21 17:27:51 +02:00
Rikard Falkeborn
41caf28c6f Make triage work with log-files from test-my-pr.py (#2468)
* triage: Allow master as version

Log-files from test-my-pr.py shows "master" as version. Extend regexp to
match "master", and improve regexp handling slightly to avoid making
assumptions on the length of the version.

* triage: Show log-files when opening files

test-my-pr.py defaults to save output as "my_check_diff.log". Show
log-files by default to make it more convenient to check these files as
well.
2020-01-03 19:33:42 +01:00
Armin Müller
130ebe4b85 Typos found by running "codespell" (#2380) 2019-11-19 20:02:24 +01:00
Maksim Derbasov
afe59531c7 Triage cleanup (#2324)
* regex for version

* fields names improved

* codestyle

* m prefix for fsmodel

* string duplication removed

* find in files: show all entries

* spaces

* added hint to checkboxes; element naming fixed

* layout naming improvement

* spacing 6->1
2019-11-04 07:10:31 +01:00
Maksim Derbasov
7de55b09f8 Triage tool ui improvement (#2320)
* triage tool: ui improvement

* small code tweak

* ci fix

* ci fix 2nd attempt
2019-11-03 08:30:30 +01:00
Maksim Derbasov
91a4bcd71e Triage tool usability improvement (#2319)
* gitignore for triage tool

* window header

* Search filename / in files functionallity for triage tool

* small codeclean
2019-11-01 09:29:00 +01:00
Scott Furry
e459762bcd Suppress Code semantic and syntax warnings (#1936)
Sources were built with Clang but with increased verbosity of error detection.

A number of syntax and semantic warnings were encountered. Commit adds
changes to correct these warnings.

Some changes involve removing extra, and unncessary, semi-colons at EOL
(e.g. at end of switch clause).

Project astyle settings are not currently setup to detect if a file is to
have an extra carriage return after the last line of data. Two files were
altered to ensure an extra carriage return.

An advisory to enhance code was encountered in triage code. Clang advisory
on a for-loop interation value suggested that:
`use reference type 'const QString &' to prevent copying`
2019-06-30 21:43:25 +02:00
Scott Furry
0d76d078e2 Implement User Selectable Code Editor Style in cppcheck-gui (#1913)
Building on #1874, commit adds user controls to choose
or edit style in cppcheck-gui ONLY. Commit does not
address CodeEditor style usage in triage app at this time.

Code Editor style can be altered from the added "Code Editor"
tab in the user preferences. The user has the option to select
default light, default dark, or to customize.

If user leaves the style set to light or dark defaults, this
will be reflected in the choices shown in the preferences
dialog.

User choice for Code Editor Style is saved in the cppcheck-gui
preferences under the heading "EditorStyle".
2019-06-23 19:04:53 +02:00
Daniel Marjamäki
a140095bbe Fix Cppcheck warning 2019-06-15 14:37:02 +02:00
Paul Fultz II
12f4353d40 Add build scripts for triage tool (#1862) 2019-06-01 10:48:39 +02:00
Daniel Marjamäki
5915fd50a5 triage: add options 'show 100 random results' and 'version' 2019-03-09 11:01:22 +01:00
Sebastian
ff16995b26
triage: Implement Clang-Tidy and Clazy hints (#1674)
These are mainly readability and optimization changes.
2019-02-16 17:52:36 +01:00
Sebastian
37f2aa0e2d
triage tool: Add "Load from clipboard" functionality (#1599)
The user now can choose to "Load from file" or "Load from clipboard".
readme.txt has been adapted.
2019-01-14 17:49:10 +01:00