Commit Graph

637 Commits

Author SHA1 Message Date
Daniel Marjamäki f68b219300 Revert "cppcheckdata: a bit better handling for windows"
This reverts commit ef6bbcb6ad.
2022-02-23 22:38:26 +01:00
Daniel Marjamäki ef6bbcb6ad cppcheckdata: a bit better handling for windows 2022-02-23 20:40:00 +01:00
Daniel Marjamäki ef28c579bf misra,cert: use premiumaddon if it exists 2022-02-23 20:26:31 +01:00
Daniel Marjamäki bb8b9a8001 misra: optional interactions with premium addon 2022-02-17 11:18:54 +01:00
Daniel Marjamäki 68b00b3cfc misra: fix 7.2 checking 2022-02-12 12:44:44 +01:00
Daniel Marjamäki 515649217f fix 2022-02-12 07:47:26 +01:00
Georgiy Komarov 47e9ed6e06
cert: Fix FP on pointer types (#3800)
Closes issue 10782
2022-02-05 14:02:01 +01:00
Daniel Marjamäki ebd1fbbfd8 cert: improved check for int31-c 2022-01-20 21:09:39 +01:00
Daniel Marjamäki 31f16d01d6 fix in misra test code 2022-01-18 20:59:30 +01:00
Daniel Marjamäki 5ebcd1dd52 misra; update test there was a warning about missing return 2022-01-18 20:55:30 +01:00
Paul Fultz II ccea1da33a
Add missing valueflow attributes to cppcheckdata.py (#3663) 2022-01-02 08:11:36 +01:00
Daniel Marjamäki 5491670792 Fixed #10528 (FP: misra-c2012-8.4) 2021-12-22 18:55:28 +01:00
Daniel Marjamäki cf203e2285 misra; fix typo 2021-12-14 17:32:05 +01:00
Daniel Marjamäki d0e68e0d77 misra; add rule 17.3 2021-12-11 12:42:15 +01:00
Daniel Marjamäki 10109a5ef7 dumpfile: remove redundant Variable attributes isArgument and isLocal. Add isVolatile. 2021-11-19 17:21:27 +01:00
Daniel Marjamäki 593683ab69 Fixed #9459 (MISRA Rule 2.2: Find dead code in arithmetic operators) 2021-11-17 17:44:54 +01:00
Daniel Marjamäki 4f9a563570 Fixed #10583 (False positive: misra-15.6) 2021-11-15 21:27:36 +01:00
Daniel Marjamäki 2a64ad8dbb Fixed #10481 (misra.py: Bailing out from checking test.c since there was an internal error: Failed to ...) 2021-09-25 21:53:55 +02:00
Daniel Marjamäki 3c1ae77962 Fixed #10499 (FP: misra-c2012-10.4) 2021-09-23 10:44:38 +02:00
Dani Martin f01ffddca6
Fix in MISRA rule 6.1 check (#3458) 2021-09-22 19:25:02 +02:00
Daniel Marjamäki 4ad09f181a Fixed #10480 (FP: misra-c2012-10.4 (char)) 2021-09-22 13:02:11 +02:00
Daniel Marjamäki 47ea670eb3 Fixed #10486 (FP: misra-c2012-8.4) 2021-09-20 21:27:05 +02:00
Daniel Marjamäki adb703c09d Fixed #10487 (FP: misra-c2012-10.6 (bit fields)) 2021-09-20 20:27:43 +02:00
Armin Müller c6f8995bf0
Typos found by running "codespell" (#3463) 2021-09-20 19:51:38 +02:00
Daniel Marjamäki ee475b181d Fixed #10488 (FP: misra-c2012-10.7) 2021-09-19 20:22:30 +02:00
Daniel Marjamäki a6c98e9e60 Fixed #10482 (FP: misra-c2012-12.2) 2021-09-17 14:21:25 +02:00
Daniel Marjamäki b6abe9c5fe misra; fix test_rules_suppression 2021-09-17 08:23:48 +02:00
Daniel Marjamäki c296115cd3 misra; fixed test 2021-09-17 08:08:40 +02:00
Daniel Marjamäki b938ee69d0 Fixed #10486 (FP: misra-c2012-8.4) 2021-09-16 11:41:50 +02:00
Daniel Marjamäki 8de160a163 Fixed #10447 (FP: misra-c2012-10.3) 2021-09-12 09:12:47 +02:00
Daniel Marjamäki c120c59912 Fixed #10446 (FP: misra-c2012-10.1 (u8 & 0x42U)) 2021-09-12 08:56:07 +02:00
PeterSchops 42f66433bc
Misra add c11 keywords (#3448) 2021-09-06 20:13:15 +02:00
Daniel Marjamäki 055d111ee9 Revert "misra.py: Fixed FN for rule 21.8"
This reverts commit 870b8b9c60.
2021-08-30 19:50:36 +02:00
orbitcowboy 870b8b9c60 misra.py: Fixed FN for rule 21.8 2021-08-30 11:07:38 +02:00
Daniel Marjamäki 43fa7d2ebe misra; Robustness. Fix AttributeErrors. getEssentialType might return None. 2021-08-28 15:27:35 +02:00
Daniel Marjamäki ca047e57bf Switch from http to https on our sourceforge webpage 2021-08-28 12:46:54 +02:00
Daniel Marjamäki e1d0db38ee Fixed #10380 (FP: misra-c2012-20.9) 2021-08-22 21:13:27 +02:00
Daniel Marjamäki ac662ec07d misra: map cppcheck errors 2021-08-22 17:02:37 +02:00
Daniel Marjamäki 0662c94d83 misra: implement rule 21.20 2021-08-22 07:38:07 +02:00
Daniel Marjamäki ec301b2447 cppcheckdata.py: fixed Value::tokvalue 2021-08-22 05:56:16 +02:00
PeterSchops 7199dde161
Fix issue in misra 9 x (#3409) 2021-08-21 22:01:24 +02:00
Daniel Marjamäki 6e4acbd3bc misra: implement rule 21.19 2021-08-19 06:58:49 +02:00
Daniel Marjamäki 8700d1b86d update misra test 2021-08-16 20:46:37 +02:00
Daniel Marjamäki 864d6462d0 misra: implement rule 21.16 2021-08-15 20:50:20 +02:00
Daniel Marjamäki ecba12a6b8 misra: improved generateTable 2021-08-15 20:12:51 +02:00
Daniel Marjamäki 8d67653de3 misra: implement rule 21.14 2021-08-15 19:23:51 +02:00
Daniel Marjamäki 682c4510a9 misra: implement rule 1.4 2021-08-15 13:39:14 +02:00
Daniel Marjamäki 6ddb8388ed misra: implement rule 21.21 2021-08-15 13:38:04 +02:00
Daniel Marjamäki 10c2dcf721 misra: implement rule 22.7 2021-08-15 12:04:55 +02:00
Daniel Marjamäki b3034a5628 misra: implement rule 22.9 2021-08-15 07:46:32 +02:00
Daniel Marjamäki 5313a40c3b misra; implement rule 22.8 2021-08-14 19:24:31 +02:00
Daniel Marjamäki 4b126db9ca misra: implement rule 22.10 2021-08-13 18:03:37 +02:00
Paul Fultz II 2a3657154b
Dont require __main__ for an addon (#3363) 2021-08-12 20:17:51 +02:00
Daniel Marjamäki f85f3c28e1 misra; implement rule 21.15 2021-07-30 15:53:10 +02:00
Daniel Marjamäki e08ee3bac7 addons; Add get_function_call_name_args 2021-07-24 19:34:11 +02:00
Daniel Marjamäki 4baf221a6b misra; implemented rule 21.2 2021-07-22 20:39:04 +02:00
Daniel Marjamäki 388b7a0fae misra; implemented rule 20.12 2021-07-22 19:51:31 +02:00
Daniel Marjamäki a65fa9b682 misra; implement rule 20.11 2021-07-22 16:11:25 +02:00
Daniel Marjamäki 3ba4696f4f misra; implement rule 20.9 2021-07-22 12:08:51 +02:00
Daniel Marjamäki 74ab8f1a48 misra; implemented rule 20.8 2021-07-22 08:46:28 +02:00
Daniel Marjamäki d2843b70ca misra; implement rule 10.7 2021-07-21 19:18:12 +02:00
Daniel Marjamäki fb8d6daf79 misra; implement rule 10.5 2021-07-21 15:25:01 +02:00
Daniel Marjamäki f5fe562050 misra; improved checking of 10.3 2021-07-21 10:56:17 +02:00
Daniel Marjamäki 4428efbd2b misra; improved essential type for composite expressions 2021-07-21 08:20:15 +02:00
Daniel Marjamäki b409d4a598 misra; implement rule 16.1 2021-07-20 20:40:42 +02:00
Daniel Marjamäki e72e59f934 misra; implement rule 12.4 2021-07-20 19:50:31 +02:00
Daniel Marjamäki 937146127a misra; fix essential type for integer literals 2021-07-20 18:27:49 +02:00
Daniel Marjamäki bc43bfcb73 misra; fix essential type for comparisons and logical operators 2021-07-20 16:50:43 +02:00
Daniel Marjamäki b320a092d0 misra; fix essential type for char literals 2021-07-20 16:39:59 +02:00
Daniel Marjamäki 6f7722873e CI; specify unix64 platform when running misra-test 2021-07-20 12:23:16 +02:00
Daniel Marjamäki d467505696 misra; update essential type for variables 2021-07-19 17:12:24 +02:00
Daniel Marjamäki 657d530fa1 misra; implement rule 10.3 2021-07-19 14:54:17 +02:00
escherstair 2d57f60225
Misra: improve misra.py (#3343) 2021-07-19 14:29:53 +02:00
Daniel Marjamäki d1fe34e167 misra; implement rule 8.10 2021-07-18 21:18:07 +02:00
Daniel Marjamäki 5f548a4b6c misra; implement rule 8.9 2021-07-18 10:31:52 +02:00
Daniel Marjamäki 59c797c776 misra; implement rule 8.8 2021-07-17 23:38:29 +02:00
Daniel Marjamäki f44a82856f misra; implement rule 8.7 2021-07-17 22:36:03 +02:00
Daniel Marjamäki 77d8b714ea misra; implement rule 8.6 2021-07-17 21:24:53 +02:00
Daniel Marjamäki aa910d3c38 misra; implemented rule 8.5 2021-07-17 19:59:21 +02:00
Daniel Marjamäki e4ae4471e8 misra; implement rule 11.2 2021-07-11 20:55:54 +02:00
Daniel Marjamäki 9d5c65fcce CI; Improved testing of misra addon 2021-07-11 17:24:14 +02:00
Daniel Marjamäki 754d648b0f misra; implement rule 11.1 2021-07-11 07:50:13 +02:00
Daniel Marjamäki 009c144455 misra; implement rule 8.4 2021-07-10 20:10:44 +02:00
Daniel Marjamäki 599a559351 misra; implement rule 5.9 2021-07-10 12:51:40 +02:00
Daniel Marjamäki c77235f12c misra; implement rule 5.8 2021-07-09 09:47:23 +02:00
Daniel Marjamäki db58952a33 Addons CTU; pass all filenames for whole program analysis in file instead of through command line 2021-07-09 08:33:07 +02:00
Daniel Marjamäki e05a9d7e65 misra: implement rule 2.5 2021-07-08 22:03:27 +02:00
Daniel Marjamäki 4ecf3ccd17 misra: implement rule 22.5 2021-07-07 23:00:12 +02:00
Daniel Marjamäki cf049cb759 misra: implement rule 5.7 2021-07-07 21:47:17 +02:00
Daniel Marjamäki 859e541661 misra: implement rule 2.4 2021-07-07 20:30:52 +02:00
Daniel Marjamäki 13d55c7060 misra; implement rule 2.3 2021-07-07 15:16:53 +02:00
Daniel Marjamäki 00a9671f46 misra: implement 8.1 2021-07-07 13:34:55 +02:00
Daniel Marjamäki 9172f2ab3b addons; add CTU infrastructure 2021-07-07 10:58:13 +02:00
Georgiy Komarov 81eabb5f61
addons: Fix arguments parser when running pytest (#3327) 2021-07-06 22:13:04 +02:00
Georgiy Komarov 6f389014f1
cppcheckdata: Fix crash on an empty union (#3326) 2021-07-06 17:01:58 +02:00
Georgiy Komarov 426117a30d
misra: Improve warning messages for rule 8.2 when the missing arguments are on the next line (#3320)
This makes it easier for the user to find the violation.

Suggested in the forum: https://sourceforge.net/p/cppcheck/discussion/development/thread/801dc07e59/#a1a8/d3e9/c455/8915/747c/2525/0eb8/0f7d
2021-07-01 21:08:40 +02:00
Georgiy Komarov 10123b4ad2
misra: Emit more accurate warnings for unused arguments in rule 2.7 (#3314)
Make the MISRA addon emit extra warnings for unused arguments placed in
lines other than the function definition. This makes it easier for the
user to find violations.
2021-06-29 11:17:38 +02:00
Georgiy Komarov a2cb9f17c1
misra: Don't consider variadic arguments as the violation of rule 2.7 (#3315)
The MISRA 2012 standard does not say anything about variadic functions
in the definition of rule 2.7. Therefore, these cases should be
considered as false positives.
2021-06-29 08:46:35 +02:00
Georgiy Komarov 62dbe2eb2f
misra: Fix false positives for rule 8.2 (#3311)
Reported in the forum: https://sourceforge.net/p/cppcheck/discussion/development/thread/801dc07e59/?page=1&limit=25#a1a8
2021-06-27 22:57:50 +02:00
Georgiy Komarov 6432922c76
misra: Fix crash on rule 8.2 (#3310)
The example code that reproduces this crash:

```
int misra_8_2_o(
    const uint32_t a1,
    const uint8_t *const a2
)
{ return *a2 + a1; }
int misra_8_2_p(
    const uint32_t a1,
    const uint8_t *const a2
);
```

The unit test was not added because it looks like a typo and regressions
are unlikely.
2021-06-27 22:57:37 +02:00