Commit Graph

14417 Commits

Author SHA1 Message Date
chrchr-github cf4334904c
Fix FN functionConst with non-dereferenceable pointer access ()
* Partial fix for  FN functionConst with non-dereferenceable pointer access

* Fix  FN functionConst with non-dereferenceable pointer access

* Fix test
2023-05-28 19:42:47 +02:00
chrchr-github 4c1e06a84b
Fix Regression: false negative autovarInvalidDeallocation since 1.79 () 2023-05-28 14:34:07 +02:00
chrchr-github 774123d28d
Remove hardcoded lists of functions/templates/types ()
* Remove hardcoded list of functions

* Remove hardcoded list of templates

* Remove hardcoded list of types

* Format

* Fix test

* Unused variable

* Add tests

* auto -> int
2023-05-28 14:33:41 +02:00
chrchr-github ac41b45a5f
Fix danglingLifetime of static variable () 2023-05-28 14:33:12 +02:00
chrchr-github 163fb79de1
Fix FP autoVariables when reassigning argv () 2023-05-28 13:51:41 +02:00
chrchr-github 647432580f
Fix FN functionConst when using base class members ()
* Fix  FN functionConst when using base class members

* Format

* Add const

* Add const

* Improve const check for arguments, comments, tests

* Add test for 

* Add test for 

* Fix merge

* Add tests

* Use ASSERT_EQUALS

* Redundant check
2023-05-28 01:11:59 +02:00
chrchr-github 17789778c9
Fix FN stlcstrParam with std::string_view ()
* Fix  FN stlcstrParam with std::string_view

* Add suppression

* Use emplace()
2023-05-28 01:11:11 +02:00
Daniel Marjamäki 6b9fac41f4
Fixed (stylistic warnings from addons are not filtered when style is not enabled) () 2023-05-27 10:24:00 +02:00
Anton Lindqvist 96c6276ce7
Suppress unused struct members from types expanded from macros () 2023-05-26 17:48:49 +02:00
chrchr-github 10b55cc0cf
Fix FN functionConst if only non-const member usage is call to itself ()
* Fix  FN functionConst if only non-const member usage is call to itself

* Format

* Add const
2023-05-26 17:24:13 +02:00
Anton Lindqvist 3d6c453058
Fix uninitvar false positive in designed initializers ()
Stop interpreting struct fields in designed initializers as usage of local
variables which can happen if they share the same name.

```
$ cat test.c
struct a { int b; };
int main() {
  char *b;
  extern int foo(struct a *);
  return foo(&(struct a){.b = 0});
}
$ cppcheck --quiet test.c
test.c:5:27: error: Uninitialized variable: b [legacyUninitvar]
  return foo(&(struct a){.b = 0});
```
2023-05-26 11:59:10 +02:00
chrchr-github fb850a844b
Use path to executable when trying to load library ()
* Use path to executable when trying to load library

* Fix function call, add support for more OS, add test

* Format

* Handle MacOS

* Amend

* Argument as fallback

* Use Path::getCurrentExecutablePath()

* Move to cmdlineparser.cpp

* Debug output

* Use argv[0] in Cygwin

* Revert "Debug output"

This reverts commit 5a68d71f1d27549c7b4a46363f3cd5cd912018e7.

* Use native python in Cygwin
2023-05-26 06:55:36 +02:00
chrchr-github bc03bed075
FP unusedFunction with templates and --cppcheck-build-dir ()
*  FP unusedFunction with templates and --cppcheck-build-dir

* Add test
2023-05-26 06:13:48 +02:00
chrchr-github beea1a2345
Fix FP constStatement with nested typedefs ()
* Fix  FP constStatement with nested typedefs

* Add test
2023-05-26 06:12:40 +02:00
Daniel Marjamäki 107eea236f
Improved handling of alignas. alignas will not be removed from now on so we don't loose this information. () 2023-05-24 10:33:53 +02:00
chrchr-github 94b6c87049
Fix FP unreadVariable with brace-init () 2023-05-23 20:21:02 +02:00
Rainer Wiesenfarth d1781a8cfb
Fix Limit check to selected VS configurations does not work ()
Fix  Limit check to selected VS configurations does not work
2023-05-23 12:44:03 +02:00
chrchr-github 6d2662b8a2
Fix FN (error) Memory leak - assignment to reference of a pointer ()
* Fix  false negative: (error) Memory leak - assignment to reference of a pointer

* Comment

* Run tests as C++

* Add TODOs

* Bail out for local references
2023-05-23 06:29:20 +02:00
Stefan Hagen 9e8cb6904a
[nit] Fixed lib/tokenize.cpp:2815:2: warning: extra ‘;’ [-Wpedantic] ()
Single character fix removing extra semi colon.
2023-05-23 06:27:25 +02:00
chrchr-github 33f728df14
Fix Hang in simplifyTypedef() with extra parentheses ()
* Fix   Hang in simplifyTypedef() with extra parentheses

* Amend test
2023-05-23 06:26:22 +02:00
chrchr-github 00733893e0
Fix "this->" confuses non void return check () 2023-05-22 20:23:09 +02:00
chrchr-github 78182d4773
Fix FN constVariablePointer ()
* Fix FN constVariablePointer

* Fix FP

* Add const

* Fix tests

* Add const
2023-05-22 19:53:51 +02:00
chrchr-github 8eabf5c211
Fix FN unused variable not detected when there is lambda ()
* Fix  FN unused variable not detected when there is lambda

* Format

* Fix tests

* Check lambda return

* Add test

* Undo, add test

* simpleMatch()

* Rename test
2023-05-22 07:39:57 +02:00
chrchr-github e621f721fc
Use library to get deallocation function ()
* Use library to get deallocation function

* Add suppressions

* Amend

* Remove suppression

* More getDeallocFuncInfo()

* Fix suppressions

* Fix suppression
2023-05-21 14:01:14 +02:00
chrchr-github d30f8e18f7
Partial fix for FN functionConst with non-dereferenceable pointer access () 2023-05-21 14:00:24 +02:00
chrchr-github ba57e15cb2
Fix Warn when C++ code is scanned as C (prevent FPs) ()
* Fix  Warn when C++ code is scanned as C (prevent FPs)

* Don't throw for operators

* Detect reference variables

* Fix tests

* Fix compilation

* Fix test

* Fix another test

* Use strAt()
2023-05-21 13:59:49 +02:00
Daniel Marjamäki f72db74817
Fixed (FP overlappingWriteUnion with anonymous struct in union) () 2023-05-20 10:34:42 +02:00
chrchr-github e6576dd949
Fix internal error: converting '1f' to integer failed ()
* Fix  "internal error: converting '1f' to integer failed - not an integer" with width in printf format string

* Format
2023-05-18 23:26:56 +02:00
chrchr-github 518b6a27ab
Fix Handle lambdas in global scope ()
* Fix  Handle lambdas in global scope

* Capture list
2023-05-17 14:37:56 +02:00
chrchr-github 1999bc68bf
Set values when assigning init list ()
* Assign values to pointers with C++11 init

* Handle assigning empty init list

* Fix  FN uninitdata with value initialization

* Fix test

* Set values when assigning init list
2023-05-14 17:01:07 +02:00
Daniel Marjamäki d475591665
Tokenizer: simplification of typedefs in _Generic arguments () 2023-05-14 15:14:52 +02:00
Daniel Marjamäki 793d6aef01
Tokenizer: do not report unknownMacro for alignas () 2023-05-14 15:14:41 +02:00
chrchr-github cf4d59a835
Partial fix for False positives with function pointers ()
* Partial fix for  False positives with function pointers

* Add test for 
2023-05-14 12:16:17 +02:00
chrchr-github 096d3a78b0
Fix FN uninitdata with value initialization ()
* Assign values to pointers with C++11 init

* Handle assigning empty init list

* Fix  FN uninitdata with value initialization

* Fix test
2023-05-13 22:07:09 +02:00
chrchr-github 6a8c70c1b9
Fix false negative: autoVariables [inconclusive] (regression) ()
* Fix  false negative: autoVariables [inconclusive] (regression)

* Use link()

* Use linkAt()

* Skip over [][]
2023-05-13 14:11:01 +02:00
chrchr-github dc7550ed9f
Assign values to pointers with C++11 init ()
* Assign values to pointers with C++11 init

* Handle assigning empty init list
2023-05-13 14:09:47 +02:00
Daniel Marjamäki 2b74a2084e
Fixed (simplifyTypedef: function with const should be handled better) () 2023-05-12 20:39:08 +02:00
Stefan Hagen 2abd9dcf79
nit: removed stray semicolon in checkother.cpp ()
This fixed nit removes a compiler warning.
2023-05-12 11:27:21 +02:00
chrchr-github 2a0143c8e1
Fix Bad ValueFlow depending on initialization () 2023-05-12 07:19:44 +02:00
chrchr-github f5b1537ed1
Fix internalASTError with decltype() () 2023-05-11 14:35:23 +02:00
Daniel Marjamäki e1d5d9988d
Fixed (Add --showtime=file-total option to show checking time of each file) () 2023-05-11 14:04:22 +02:00
Daniel Marjamäki d5951fa2b9
Tokenizer: Add attribute for exported symbols () 2023-05-09 20:15:00 +02:00
Daniel Marjamäki d24a1342a6
Fixed (Tokenizer: varId not set properly in function call) () 2023-05-08 12:11:30 +02:00
Daniel Marjamäki 527b6fbb45 Revert "ValueFlow: Set max iterations to 2 in normal analysis ()"
This reverts commit 02a3d03a05.
2023-05-07 18:28:01 +02:00
Paul Fultz II 02a3d03a05
ValueFlow: Set max iterations to 2 in normal analysis () 2023-05-07 11:03:27 +02:00
chrchr-github 580eb8eb83
Remove dead URL () 2023-05-06 08:14:43 +02:00
Paul Fultz II 543b4adc8a
Fix 11682: False positive: constParameterReference with overloaded method ()
* Fix 11682: False positive: constParameterReference with overloaded method

* Format
2023-05-05 11:27:15 +02:00
Oliver Stöneberg a77ab9759c
Suppressions: some cleanups ()
* Suppressions: merged `isSuppressedLocal()` into `isSuppressed()`

* avoid some unnecessary copies when adding suppressions

* TestSuppressions: improved readability of multiple line string literals

* supressions.h: got rid of unnecessary copy and assignment operators for `Suppressions::Suppression` - fixes `performance-move-const-arg` clang-tidy warning

* TestSuppressions: cleaned up a variable construction
2023-05-04 18:15:18 +02:00
chrchr-github d3bdb84650
Fix performance regression (hang) in 2.11dev () 2023-05-04 11:59:03 +02:00
chrchr-github 100d17df4f
Fix FN constParameterPointer with std::vector () 2023-05-04 11:10:58 +02:00