Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(config): Add labels for new checks of Clang SA & Tidy #4051

Merged

Conversation

whisperity
Copy link
Member

The following checks were analysed on our usual set of ~20 test projects, these produced no crashes and most of them gave sensible results. Personally, I really enjoy the fact that bugprone-incorrect-enable-if is a thing!

  • bugprone-empty-catch
  • bugprone-incorrect-enable-if
  • bugprone-non-zero-enum-to-bool-conversion
  • bugprone-optional-value-conversion
  • cppcoreguidelines-misleading-capture-default-by-value
  • cppcoreguidelines-noexcept-destructor
  • cppcoreguidelines-noexcept-move-operations
  • cppcoreguidelines-noexcept-swap
  • performance-noexcept-destructor
  • performance-noexcept-swap
  • readability-reference-to-constructed-temporary
  • core.BitwiseShift
  • unix.StdCLibraryFunctions

The following checks produced no reports on the test set, and as such, their evaluation was done by looking at the documentation and the tests. They also did not crash.

  • bugprone-compare-pointer-to-member-virtual-function
  • bugprone-multiple-new-in-one-expression
  • bugprone-unique-ptr-array-mismatch
  • cppcoreguidelines-no-suspend-with-lock
  • misc-coroutine-hostile-raii
  • modernize-use-constraints
  • modernize-use-std-print
  • readability-operators-representation

@whisperity whisperity added analyzer 📈 Related to the analyze commands (analysis driver) clang sa 🐉 The Clang Static Analyzer is a source code analysis tool that finds bugs in C-family programs. clang-tidy 🐉 clang-tidy is a clang-based C++ “linter” tool. config ⚙️ labels Oct 19, 2023
@whisperity whisperity added this to the release 6.23.0 milestone Oct 19, 2023
@whisperity whisperity requested review from vodorok, bruntib and dkrupp and removed request for bruntib October 19, 2023 15:41
@whisperity whisperity force-pushed the chore/6.22.2/update-checker-config branch from a50223a to 9624e97 Compare October 19, 2023 16:01
@whisperity whisperity marked this pull request as ready for review October 19, 2023 16:19
Copy link
Collaborator

@vodorok vodorok left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the classification, great work!
LGTM

@vodorok
Copy link
Collaborator

vodorok commented Oct 26, 2023

One question tho, there are some cppcheck checkers found by the coverage job.
Are you planning to review those too?

Checkers ADDED to upstream, without labels in CodeChecker:

  • cppcheck-constParameterPointer
  • cppcheck-constParameterReference
  • cppcheck-constVariablePointer
  • cppcheck-constVariableReference
  • cppcheck-knownPointerToBool
  • cppcheck-pointerOutOfBoundsCond

@vodorok vodorok merged commit 6a5af0e into Ericsson:master Oct 26, 2023
8 of 9 checks passed
@whisperity
Copy link
Member Author

@vodorok Eventually. We will need to do another round of the checker testing when the release is upon us...

I don't think there is an infrastructure in our internal CI to run CppCheck, unfortunately, so a large-scale evaluation is not really possible. 😖

@whisperity whisperity deleted the chore/6.22.2/update-checker-config branch December 9, 2023 12:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
analyzer 📈 Related to the analyze commands (analysis driver) clang sa 🐉 The Clang Static Analyzer is a source code analysis tool that finds bugs in C-family programs. clang-tidy 🐉 clang-tidy is a clang-based C++ “linter” tool. config ⚙️
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants