-
Notifications
You must be signed in to change notification settings - Fork 128
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
Cppcheck suppressions set 56 #38744
base: main
Are you sure you want to change the base?
Cppcheck suppressions set 56 #38744
Conversation
Py_RETURN_NONE renamed to Py_NONE and return removed (now to be done manually) as not used anywhere else and was confusing cppcheck with missing return. Had to make lambda function wrapper if wanted to return const pointer in AlgorithmProperty.cpp Co-authored-by: Mohamed Almaki <[email protected]>
0f31aaf
to
4cdedb9
Compare
Cancelling other tests as it seems there are genuine failures |
Framework/PythonInterface/mantid/api/src/Exports/AlgorithmProperty.cpp
Outdated
Show resolved
Hide resolved
4cdedb9
to
53c7a22
Compare
This is ready for review as I resolved the issue, do you have any additions? @RichardWaiteSTFC |
No, thanks for setting ready to review and for fixing the above issue! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall all good, I would only request changes to one of these, which is the cstyle casts, see below my comment.
Framework/PythonInterface/mantid/api/src/Exports/IFunction1D.cpp
Outdated
Show resolved
Hide resolved
22356ce
to
53c7a22
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should make it clear that the reason we're suppressing it is because static_cast
does not fix it, so I just thought that the best way to do it is to use static_cast
and then add a comment about it.
Framework/PythonInterface/mantid/api/src/Exports/IPeakFunction.cpp
Outdated
Show resolved
Hide resolved
Framework/PythonInterface/mantid/api/src/Exports/IFunction1D.cpp
Outdated
Show resolved
Hide resolved
….cpp Co-authored-by: Gui Maciel Pereira <[email protected]>
Co-authored-by: Gui Maciel Pereira <[email protected]>
for more information, see https://pre-commit.ci
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the following changes will fix it, the reason it failed cppcheck is because the formatting changed added a new line which means the supression was not acting on the correct line
Framework/PythonInterface/mantid/api/src/Exports/IFunction1D.cpp
Outdated
Show resolved
Hide resolved
Framework/PythonInterface/mantid/api/src/Exports/IPeakFunction.cpp
Outdated
Show resolved
Hide resolved
Co-authored-by: Gui Maciel Pereira <[email protected]>
….cpp Co-authored-by: Gui Maciel Pereira <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think these changes are good to go now. Maybe @jhaigh0 and @thomashampson can have a look at the cstyleCast
suppression to confirm it.
static const AlgorithmProperty *(*const createPropertyWithValidator)(const std::string &, const IValidator *) = | ||
+[](const std::string &name, const IValidator *validator) -> const AlgorithmProperty * { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you explain this syntax?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CppCheck complained that the function pointer could be passed as a const pointer. So, I converted the function into a const function pointer. This syntax uses C++ lambda expressions to create a function and then convert it to a C-style function pointer. I just realised that we might not need the conversion and could use a C++ function pointer instead. It is also strange that CppCheck is raising this issue only with this function and not with the others.
Description of work
There is no associated issue. Part of cpp hackathon
Report to: @cailafinn
To test:
CI passes
This does not require release notes because will not affect the user
Reviewer
Please comment on the points listed below (full description).
Your comments will be used as part of the gatekeeper process, so please comment clearly on what you have checked during your review. If changes are made to the PR during the review process then your final comment will be the most important for gatekeepers. In this comment you should make it clear why any earlier review is still valid, or confirm that all requested changes have been addressed.
Code Review
Functional Tests
Does everything look good? Mark the review as Approve. A member of
@mantidproject/gatekeepers
will take care of it.Gatekeeper
If you need to request changes to a PR then please add a comment and set the review status to "Request changes". This will stop the PR from showing up in the list for other gatekeepers.