Daniel Marjamäki
17ea101e7b
Fix #12081 (Tokenizer::simplifyTypedef: Handle volatile structs better) ( #5577 )
2023-10-19 21:02:03 +02:00
Paul Fultz II
f2c8153231
Set the lower and upper bounds for variable that are only incremented or decremented ( #5523 )
...
Also, changed `isExpressionChanged` and `isThisChanged` to return the
token that is being modified and renamed the functions to
`findExpressionChanged` and `findThisChanged`.
2023-10-19 18:42:52 +02:00
chrchr-github
285ef96b5b
Report unknownMacro in string concatenation (refs #11378 ) ( #5558 )
2023-10-18 18:46:47 +02:00
Daniel Marjamäki
dd76504f82
Fixed #3537 (Allow inline suppression comments for macros) ( #5559 )
2023-10-16 19:43:15 +02:00
Oliver Stöneberg
5e89eb05a6
iwyu.yml: made `include-what-you-use` output more verbose / cleaned up includes ( #5540 )
2023-10-16 12:57:49 +02:00
chrchr-github
f13134a6a4
Refactoring: use init list, redundant init ( #5552 )
2023-10-15 14:51:12 +02:00
Oliver Stöneberg
ebb877adcc
gui/platforms.h: renamed `Platform` to `PlatformData` / Platform: removed unnecessary `cppcheck` namespace ( #5545 )
2023-10-13 16:02:04 +02:00
Oliver Stöneberg
8c0d43d928
removed unnecessary encapsulation of severity enum and made it an `enum class` ( #5541 )
2023-10-12 11:58:39 +02:00
Oliver Stöneberg
a22c181553
fixed "Redundant elaborated type specifier" Rider warnings ( #5517 )
2023-10-08 09:10:17 +02:00
Oliver Stöneberg
fe8730cf0f
MathLib: renamed `to{U}LongNumber()` to `toBig{U}Number()` ( #5503 )
...
The name was misleading as it was actually a `long long` and also if we
ever move to an (optional) 128-bit value it wouldn't even less fitting.
We should name it to match our alias type.
2023-10-05 19:21:42 +02:00
chrchr-github
d9a8909d2a
Fix #11408 debug: Function::addArguments found argument 't' with varid 0 ( #5507 )
2023-10-05 10:01:46 +02:00
Daniel Marjamäki
6a8f787915
Fix #12026 (simplifyTypedef: not handled properly when typedef and enum constant has same name) ( #5500 )
2023-10-01 21:26:54 +02:00
chrchr-github
6773cdb34b
Fix #12014 syntaxError due to bad typedef simplification ( #5493 )
2023-09-28 19:26:12 +02:00
Daniel Marjamäki
ed5532c2a7
Fix #12019 (False positive: null pointer, array zero initialization) ( #5495 )
2023-09-28 15:18:08 +02:00
chrchr-github
b745d9ad6e
Fix #12010 Improve unknownMacro message: int ( #5473 )
2023-09-22 10:16:21 +02:00
chrchr-github
dc59543348
Fix #12006 Improve unknownMacro message ( #5470 )
2023-09-21 00:28:49 +02:00
chrchr-github
57bbb17f3b
Fix #11986 debug: Executable scope 'x' with unknown function. ( #5463 )
2023-09-20 17:18:00 +02:00
Oliver Stöneberg
f49fedb2ad
fixed #11483 (FN unusedFunction for method with inline implementation) ( #5457 )
...
Co-authored-by: chrchr-github <78114321+chrchr-github@users.noreply.github.com>
2023-09-20 14:45:44 +02:00
chrchr-github
5a21851bb7
Fix #11981 internalAstError with using declaration ( #5446 )
2023-09-14 12:14:08 +02:00
chrchr-github
523c41a60b
Fix #11978 debug: Executable scope 'x' with unknown function. ( #5437 )
2023-09-13 11:39:09 +02:00
Oliver Stöneberg
02b836baad
do not pass POD types by reference (based on clazy `function-args-by-value` check) ( #5388 )
2023-09-11 20:40:39 +02:00
Oliver Stöneberg
639a4131c4
changed `bool_to_string()` to return `const char*` instead and use it in more cases ( #5385 )
2023-09-11 11:34:22 +02:00
Oliver Stöneberg
91070ca794
utils.h: added `startsWith()` and started using it ( #5381 )
...
This makes the code much more readable. It also makes it less prone to
errors because we do not need to specify the length of the string to
match and the returnvalue is clear.
The code with the bad returnvalue check was never executed and I added a
test to show that.
2023-09-08 19:30:25 +02:00
Daniel Marjamäki
c3136dbc2a
Refactor: The code to generate id string from pointer can be simplified ( #5382 )
2023-08-31 23:14:28 +02:00
Oliver Stöneberg
0fadf9ed25
sped up `Tokenizer::dump()` ( #5009 )
...
Scanning the `cli` folder with `DISABLE_VALUEFLOW=1` `Tokenizer::dump()`
will consume almost 25% of the total Ir count when an addon is
specified. This is mainly caused by the usage of `std::ostream`.
Encountered while profiling #4958 .
2023-08-31 11:54:46 +02:00
Oliver Stöneberg
e669b102f8
renamed `Check::reportError(const ErrorMessage&)` to `writeToErrorList()` to reflect its actual behavior ( #5322 )
2023-08-18 13:45:25 +02:00
Oliver Stöneberg
3cf9100198
fixed #6316 (Use std::to_string() in place of MathLib::toString() ...) - deleted default implementation of `Mathlib::toString()` ( #5341 )
...
It was also used inconsistently and seemed to imply there is some
special handling which wasn't the case. It was just an alias for
`std::to_string()` for non-`double` types. So there was no need for it.
---------
Co-authored-by: Robert Reif <reif@earthlink.net>
2023-08-17 16:46:32 +02:00
Anton Lindqvist
5c6962c273
Fix FP unusedVariable with arrays ( #5319 )
2023-08-12 16:55:52 +02:00
chrchr-github
c3d7c91e88
Additional call to setValueTypeInTokenList() ( #5300 )
2023-08-08 22:54:27 +02:00
chrchr-github
eee1221738
Use in-class initializers, default constructors, class -> struct ( #4842 )
2023-08-08 11:05:02 +02:00
Oliver Stöneberg
e38a031ae6
ValueFlow: pass `SymbolDatabase` by reference into `ValueFlow::setValues()` ( #5295 )
2023-08-07 18:41:50 +02:00
Oliver Stöneberg
77c479a6c4
pass `TokenList` as reference into `ValueFlow::setValues()` ( #4868 )
...
This avoid lots of unchecked pointer dereferences.
There was a single case which checked it and that looked like a
leftover. The only way this might have been a `nullptr` pointer was
through several default constructors which were not used at all so I
removed them.
2023-08-04 18:17:27 +02:00
chrchr-github
faf8047050
Fix FP truncLongCastReturn on Windows ( #5262 )
2023-08-02 12:27:29 +02:00
Oliver Stöneberg
45de338f1b
cleaned up includes based on include-what-you-use / iwyu.yml: updated to yet another distro to get the latest version and updated the Chaotic-AUR key ( #5267 )
...
This is a mess. The version is AUR is still outdated and also doesn't
install anymore. Fedora 38 carries the latest version of it so use that
now. Keep the old steps in case we need to switch again in the future.
2023-08-02 10:36:17 +02:00
chrchr-github
101ddea1e6
Fix #11840 FP constStatement with template parameters on operator ( #5258 )
2023-07-21 17:33:18 +02:00
chrchr-github
a6b0129725
Fix #11838 FP uninitvar with label matching variable name ( #5251 )
2023-07-20 10:45:44 +02:00
chrchr-github
2878c68ec0
Fix FP unknownMacro ( #5249 )
2023-07-18 12:16:54 +02:00
chrchr-github
a4a29bfbc5
Fix #11411 FP selfInitialization after initialization of previous member from initializer list ( #5239 )
2023-07-14 10:33:05 +02:00
chrchr-github
c0bd9f8bbd
Fix #11827 FP duplInheritedMember - different return type ( #5231 )
2023-07-12 15:56:07 +02:00
Daniel Marjamäki
3508464c6d
dump: fix dump output for typedef info, file is <stdout> ( #5236 )
2023-07-12 11:21:59 +02:00
chrchr-github
cc38ef4168
Fix #11818 FP constParameterReference / #11819 FP stlcstrConstructor / #11814 FP unknownMacro ( #5224 )
2023-07-07 15:54:07 +02:00
chrchr-github
fa03f49d2b
Fix #11810 nullptr deref in compilePrecedence2() (II) ( #5222 )
2023-07-07 10:42:11 +02:00
Daniel Marjamäki
2ff9e60650
Fix #11815 (dump: add token attribute isTemplateArg) ( #5220 )
2023-07-05 23:12:22 +02:00
chrchr-github
ee5cf0f141
Fix #11810 nullptr deref in compilePrecedence2() ( #5218 )
2023-07-05 22:34:25 +02:00
Daniel Marjamäki
96955ccfe9
Tokenizer: detect unknown macro 'if (x) MACRO }' ( #5209 )
2023-07-01 13:17:41 +02:00
chrchr-github
0a72cd3b72
Fix #11795 debug: simplifyUsing: unmatched body end ( #5198 )
2023-06-27 15:45:25 +02:00
Daniel Marjamäki
87c2b8df04
Tokenizer: dumpfile will say if type token is _Atomic ( #5189 )
2023-06-25 11:22:30 +02:00
chrchr-github
9a95d4fe67
Fix #11785 Syntax error: typedef not first keyword in statement ( #5178 )
2023-06-21 18:26:28 +02:00
chrchr-github
bb962e2bc3
Enable and mitigate readability-else-after-return ( #5175 )
2023-06-20 18:43:21 +02:00
chrchr-github
082331c210
Fix #11770 cppcheckError for unknown macro after else ( #5163 )
2023-06-17 18:39:23 +02:00