Daniel Marjamäki
727d086dc4
Fix #12217 (misra 11.4: report conversion in macro) ( #5692 )
2023-11-22 12:47:48 +01:00
chrchr-github
8b6cbe2e9e
Fix crash in SymbolDatabase::addClassFunction() (f'up to #12209 ) ( #5689 )
2023-11-21 12:57:38 +01:00
Oliver Stöneberg
2b61c9ef2f
Tokenizer: moved `VariableMap` into anonymous namespace ( #5686 )
2023-11-21 11:35:17 +01:00
chrchr-github
f5630e7049
Fix #12209 "debug: Executable scope 'x' with unknown function." with anonymous namespace ( #5688 )
2023-11-20 22:28:38 +01:00
chrchr-github
f9521cfb4e
Fix #12208 FN constParameterReference with nested struct/class ( #5685 )
2023-11-20 22:01:22 +01:00
chrchr-github
d09a6514cd
Fix #11012 FP unassignedVariable when passed in init list ( #5684 )
2023-11-20 19:43:29 +01:00
chrchr-github
d7c7a39afe
Fix crash in CheckLeakAutoVar (f'up to #12186 ) ( #5683 )
2023-11-20 18:26:05 +01:00
Daniel Marjamäki
036df0aca9
Fix #12181 (Suppressions: allow that id with * is added) ( #5681 )
2023-11-20 11:54:41 +01:00
chrchr-github
cd21918520
Fix FP memleak with outparam allocation (f'up to #12186 ) ( #5677 )
...
I wonder if it is worth trying to get this right. We also have FPs when
the return value is assigned to a variable, and that seems much harder
to fix.
2023-11-19 19:51:32 +01:00
Daniel Marjamäki
56c7ac3771
Fix #12182 (speedup valueFlow by only running valueFlowNumber once) ( #5678 )
2023-11-19 18:56:48 +01:00
chrchr-github
61bd8fddbf
Partial fix for #11469 FP mismatchingContainerExpression warning ( #5674 )
2023-11-17 17:12:38 +01:00
chrchr-github
3e47acd580
Fix FP memleak (f'up to #12186 ) ( #5671 )
2023-11-16 18:35:32 +01:00
chrchr-github
4b9f3c68fb
Fix #12188 FN uninitvar with increment of struct member ( #5665 )
2023-11-16 18:11:12 +01:00
chrchr-github
831aec5c03
Fix #12185 FN constVariablePointer with stream ( #5659 )
2023-11-16 17:43:20 +01:00
Daniel Marjamäki
e01e090f1c
Fix #10866 (no preprocessorErrorDirective and code generated in case of unconditional #error) ( #5670 )
2023-11-16 17:25:49 +01:00
Oliver Stöneberg
e47300016b
moved some classes/structs into anonymous namespace ( #5669 )
2023-11-16 15:49:41 +01:00
chrchr-github
63a5a71c20
Fix #12186 FN memleak with outparam allocation ( #5661 )
2023-11-16 15:23:40 +01:00
Oliver Stöneberg
9cf0342f9d
optimized `ProgramMemory` a bit ( #5668 )
...
Scanning `common/file.c` of the `xrdp` project with `--force --std=c11
--std=c++11 --inline-suppr --enable=warning`:
Clang 16 `4,208,373,435` -> `4,156,024,955`
GCC 13 `4,336,042,153` -> `4,277,293,971`
2023-11-16 14:35:25 +01:00
chrchr-github
85172fe770
Don't report checkLibraryUseIgnore for known functions (refs #7719 ) ( #5664 )
2023-11-16 14:23:08 +01:00
Oliver Stöneberg
682901ac2a
fixed #10760 - added file name to ValueFlow `--debug` output ( #5655 )
2023-11-16 13:44:50 +01:00
Oliver Stöneberg
d3a8eb1ae2
config.h: improved and cleaned up some preprocessor checks ( #5663 )
2023-11-15 15:31:12 +01:00
chrchr-github
3bd5a034bd
Fix #12176 false positive: unassignedVariable ( #5656 )
2023-11-14 12:26:12 +01:00
chrchr-github
6ac804d209
Fix #12178 extern "C++" scope generates valueflow ( #5654 )
2023-11-14 10:02:41 +01:00
Stefan van Kessel
d3520943ad
Minor: fix msvc warning "not all control paths return a value" ( #5650 )
...
When building with /Od - default cmake debug build for me, the
__assume(false); trick does not work to get rid of the C4714 warnings
https://godbolt.org/z/a6xGnfP7d
D:\tmp\cppcheck\lib\keywords.cpp(205): warning C4715:
'Keywords::getOnly': not all control paths return a value
D:\tmp\cppcheck\lib\keywords.cpp(226): warning C4715:
'Keywords::getOnly': not all control paths return a value
D:\tmp\cppcheck\lib\keywords.cpp(168): warning C4715:
'Keywords::getAll': not all control paths return a value
D:\tmp\cppcheck\lib\keywords.cpp(188): warning C4715:
'Keywords::getAll': not all control paths return a value
Proposed fix: also define NORETURN to [[noreturn]] when according to
__has_cpp_attribute [[noreturn]] is supported
https://en.cppreference.com/w/cpp/feature_test
(For previous discussion see also
https://github.com/danmar/cppcheck/pull/5497 )
2023-11-12 17:30:06 +01:00
chrchr-github
a6b7a8c1cc
Fix #12170 FP knownPointerToBool with function pointer ( #5646 )
2023-11-12 10:20:18 +01:00
chrchr-github
212d2141d3
Fix #12173 FP danglingTempReference with loop over init list ( #5652 )
2023-11-12 10:19:45 +01:00
chrchr-github
2d232dcaac
Fix varid0 with rvalue reference typedef ( #5649 )
2023-11-11 10:09:08 +01:00
chrchr-github
328daeceb4
Fix #11334 debug: varid0 with anonymous union ( #5648 )
2023-11-11 10:01:03 +01:00
chrchr-github
d24074f7b1
Fix #12166 debug: varid0 with reference typedef ( #5643 )
...
Why do we even split any declarations in the first place?
2023-11-09 10:11:34 +01:00
Daniel Marjamäki
780b742568
Fix #12165 (simplifyTypedef: the "enum" token is not inserted) ( #5641 )
2023-11-09 07:48:33 +01:00
chrchr-github
30bf5cac0a
Partial fix for #12162 false negative: functionConst ( #5639 )
2023-11-08 22:37:45 +01:00
Daniel Marjamäki
8f432880fa
Fix #12164 (False positive: operator precedence warning even though there are parentheses) ( #5640 )
2023-11-08 18:54:40 +01:00
chrchr-github
1fa785d81d
Fix #12159 FP CastAddressToIntegerAtReturn with std::future ( #5634 )
2023-11-08 13:12:50 +01:00
Oliver Stöneberg
2a15428096
fixed #12059 - added `--fsigned-char` and `--funsigned-char` command-line options ( #5580 )
2023-11-08 09:28:33 +01:00
chrchr-github
cf64ccea22
Fix #12147 false negative: passedByValue ( #5626 )
2023-11-07 22:50:31 +01:00
Oliver Stöneberg
bc174c502a
fixed #12145 - provided order of source files is not preserved ( #5625 )
2023-11-07 21:21:24 +01:00
Daniel Marjamäki
8c63c8ced1
Fix #12156 (AST: do not create AST for variable declaration 'bool& var') ( #5631 )
2023-11-07 20:48:56 +01:00
Oliver Stöneberg
87886576fc
TokenList: actually consider configured standard in `isKeyword()` ( #5619 )
2023-11-07 20:39:44 +01:00
chrchr-github
d3d70dcc4e
Fix #12157 SymbolDatabase: Token::type() is not set properly when inn… ( #5635 )
...
…er enum has same name as outer class
2023-11-07 19:57:45 +01:00
Daniel Marjamäki
c1aed9681d
Fix #12151 (Tokenizer::arraySize: enum constant used as index in array initialization) ( #5633 )
2023-11-07 19:19:19 +01:00
chrchr-github
d26022ac9a
Fix #11302 debug: SymbolDatabase::isFunction found C function 'main' without a return type. ( #5630 )
2023-11-06 21:03:11 +01:00
chrchr-github
a57fc9ace6
Partial fix for #12153 FN returnReference ( #5629 )
2023-11-06 20:29:13 +01:00
chrchr-github
de2cfb05b0
Fix #12150 FP uninitialized member array, initialized in range for loop ( #5627 )
2023-11-06 16:15:47 +01:00
Daniel Marjamäki
fc8c244675
CI: Add selfcheck using Cppcheck Premium. Activates Misra C++ 2008 and Cert C++ 2016 checkers. ( #5623 )
2023-11-06 15:31:47 +01:00
chrchr-github
83ac6bfa0f
Fix crash when calling estimateSize() (f'up to #12139 ) ( #5628 )
2023-11-06 15:22:59 +01:00
Daniel Marjamäki
0dc53ac7fe
Fix #12144 (Error messages from addons has the wrong file0) ( #5621 )
2023-11-04 17:07:30 +01:00
chrchr-github
72a36172aa
Fix #12142 FP uninitStructMember, unreadVariable with pointer to member ( #5618 )
2023-11-04 13:40:06 +01:00
chrchr-github
fa7891e37b
Fix #12139 FP redundantCopyLocalConst for small type ( #5617 )
2023-11-04 13:38:02 +01:00
chrchr-github
789c032e42
Fix #12138 FP passedByValue with anonymous union ( #5611 )
2023-11-04 13:34:08 +01:00
Oliver Stöneberg
ca6d1aafdb
moved `fileSettings` out of `Settings` ( #5608 )
...
Moved the `FileSettings` out of the `Settings` and pass them around
explicitly. They can never be specified at the same time and are used
exclusively. The code hasn't been fully adjusted to reflect this as this
is only the refactoring without any functional changes.
2023-11-03 23:24:04 +01:00
Oliver Stöneberg
8b0916c319
ValueFlow: improved `checkLevelNormal` message ( #5584 )
2023-11-03 21:05:56 +01:00
Oliver Stöneberg
989d276dde
removed the need for `Check` object in `CTU::getUnsafeUsage()` callback / some CheckUninitVar cleanups ( #5610 )
...
The `Check` objects were just created for that purpose so they basically
just were wrappers for the pointers passed into them and were
unnecessary.
2023-11-03 18:27:11 +01:00
chrchr-github
099d96ffa1
Fix #12137 syntaxError with attribute in typedef ( #5612 )
2023-11-03 09:56:41 +01:00
Oliver Stöneberg
63e00ea918
fixed some "Variable can be made constexpr" Rider warnings ( #5615 )
2023-11-03 09:55:44 +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
dd627a2b1d
moved `ImportProject` out of `Settings` and only store `fileSettings` ( #5603 )
...
`ImportProject` is not needed outside of the command-line parsing so we
do not need it inside the `Settings` at all. We only use the
`fileSettings` in the executors.
2023-11-01 21:08:30 +01:00
chrchr-github
10654386db
Fix #12128 FP uninitDerivedMemberVar with brace init ( #5606 )
2023-11-01 09:49:32 +01:00
chrchr-github
29001b651b
Fix #12129 FN (regression): constParameterPointer ( #5605 )
2023-11-01 09:49:19 +01:00
chrchr-github
67b61a0ab7
Fix #12134 false negative: passedByValue ( #5607 )
2023-10-31 19:08:08 +01:00
chrchr-github
c2d5aef435
Fix #12083 FN passedByValue with usage in ternary ( #5575 )
2023-10-31 16:12:38 +01:00
chrchr-github
bbaa7be901
Fix #12118 FP passedByValue for callbacks ( #5591 )
2023-10-31 12:06:31 +01:00
Swasti Shrivastava
7618e100b4
Do not add AST for pointer in variable declaration ( #5593 )
2023-10-31 10:26:03 +01:00
Paul Fultz II
18373bc64b
Fix 12116: FP negativeContainerIndex with redundant assignment (regression) ( #5602 )
2023-10-29 00:11:03 +02:00
Daniel Marjamäki
083c4aa34b
Fix #12079 (Make misra-config a critical error) ( #5578 )
2023-10-28 16:58:59 +02:00
chrchr-github
77bfec4317
Fix #12119 FN constVariablePointer with reassigned pointer ( #5592 )
2023-10-28 16:48:39 +02:00
chrchr-github
cae27c5ec7
Fix #12117 FP integerOverflowCond for shift by 31 bits ( #5596 )
2023-10-28 16:47:57 +02:00
chrchr-github
f6fb3334f3
Set enumerator in ctor init list (refs #10045 ) ( #5599 )
2023-10-28 13:51:52 +02:00
chrchr-github
6bc164e0d0
Fix #12122 FP knownConditionTrueFalse with type traits ( #5595 )
2023-10-26 23:33:35 +02:00
chrchr-github
80c5cb6690
Fix #12008 debug: Executable scope 'x' with unknown function. ( #5588 )
2023-10-25 14:50:10 +02:00
chrchr-github
502d7ea6db
Fix #12120 FP constStatement with class in C code ( #5594 )
2023-10-25 10:05:42 +02:00
chrchr-github
89df134fed
Fix #12109 Crash in calculate.h ( #5587 )
2023-10-24 10:05:32 +02:00
chrchr-github
7e2fcea3d9
Fix #12044 FN knownConditionTrueFalse comparing qualified constant with number ( #5518 )
2023-10-23 11:18:05 +02:00
Oliver Stöneberg
a765a1310d
ValueFlow: omit unnecessary location information from `valueFlowBailoutIncompleteVar` ( #5583 )
...
This is unnecessary since we only issue it from a single location. It
also leads to a lot of unnecessary noise in the daca diff reports.
2023-10-23 10:13:10 +02:00
Oliver Stöneberg
3103736c51
refs #11928 / refs #10045 / fixes #11794 - generate `limits.h`/`climits` defines from platform ( #5414 )
2023-10-21 17:21:12 +02:00
Oliver Stöneberg
09785a4eb8
moved `MyFileInfo` definitions into source files ( #4697 )
2023-10-21 16:58:29 +02:00
chrchr-github
26ba29c303
Fix #12086 FN passedByValue with index operator and namespaced function call ( #5574 )
2023-10-21 12:41:39 +02:00
chrchr-github
f4d18a8d1e
#12077 FP constStatement with ctor in namespace ( #5572 )
2023-10-21 12:12:56 +02:00
Oliver Stöneberg
85f40ed47c
moved `TokensFrontBack` from `token.h` to `tokenlist.h` ( #5547 )
2023-10-21 09:14:25 +02:00
Oliver Stöneberg
7086ffaa1b
fixed #12045 - print error when using an option which has not been compiled in instead of treating it as non-existent or a no-op ( #5508 )
...
Also disabled more internal code around those options and did some
cleanups.
2023-10-21 09:12:59 +02:00
chrchr-github
41bd28c0b3
Fix #12087 Library: add Container::Action::FIND_CONST ( #5579 )
2023-10-20 21:22:06 +02:00
chrchr-github
b61feaf77f
Fix syntaxError with const lambda (refs #11275 ) ( #5571 )
2023-10-20 15:32:46 +02:00
chrchr-github
0070a78101
Fix #12088 FP constStatement with delete in loop increment ( #5576 )
2023-10-20 10:25:31 +02:00
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
7c3ae68e4d
Fix #11893 FP constStatement unused variable ( #5567 )
2023-10-19 10:51:16 +02:00
Paul Fultz II
e1a120e6b0
Partial fix for 12031: False positive: uninitialized variable ( #5573 )
2023-10-18 23:49:22 +02:00
chrchr-github
09f426d980
Fix #12082 FP uninitvar for assignment to array member in conditional ( #5570 )
2023-10-18 18:50:49 +02:00
chrchr-github
285ef96b5b
Report unknownMacro in string concatenation (refs #11378 ) ( #5558 )
2023-10-18 18:46:47 +02:00
chrchr-github
b60b374f9c
Fix internalASTError with decltype (regression, refs #11378 ) ( #5564 )
2023-10-18 12:17:20 +02:00
Oliver Stöneberg
bfe19af6b2
fixed some "Declaration and assignment can be joined" Rider warnings ( #5569 )
2023-10-18 10:06:17 +02:00
Oliver Stöneberg
85fe627c68
fixed some typos ( #5562 )
2023-10-17 18:32:07 +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
3811d01498
fixed "Redundant dereferencing and tasking address expression" Rider warnings ( #5563 )
2023-10-16 14:09:03 +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
93297727ef
Fix internalASTError with decltype (refs #11378 ) ( #5553 )
2023-10-15 20:47:01 +02:00
chrchr-github
f13134a6a4
Refactoring: use init list, redundant init ( #5552 )
2023-10-15 14:51:12 +02:00
chrchr-github
903df84ddc
Fix #12072 FN constStatement with enum ( #5554 )
2023-10-13 21:40:47 +02:00
Daniel Marjamäki
ec15772381
Refactoring suppressions code. ( #5550 )
2023-10-13 19:57:08 +02:00
chrchr-github
efd488b519
Partial fix for #12062 FN: memleak ( #5548 )
2023-10-13 18:47:06 +02:00
chrchr-github
f56677a99d
Fix #11857 FP constParameterReference with std::map ( #5551 )
2023-10-13 18:08:40 +02:00