cppcheck and clang static analyzer warnings that need a look
I fixed some cppcheck and clang static analyzer warnings, but others need someone that knows the code:
The enclosing 'for' loop goes to m_NDims (the ivar), should be _nDims (the param)?
src/metaImage.cxx:584:18: Assigned value is garbage or undefined
src/metaImage.cxx:590:25: Assigned value is garbage or undefined
These may be dead code, or something is failing to use those results...
src/metaImage.cxx:1205:5: Value stored to 'posend' is never read
src/metaImage.cxx:2908:9: Value stored to 'fileImageDim' is never read
src/metaImage.cxx:3044:9: Value stored to 'maxV' is never read
redundantAssignment,src/metaImage.cxx:3051,style,Variable 'maxV' is reassigned a value before the old one has been used.
unreadVariable,src/metaImage.cxx:1205,style,Variable 'posend' is assigned a value that is never used.
unreadVariable,src/metaImage.cxx:1290,style,Variable 'elementDataFileName' is assigned a value that is never used.
Is this issue addressed by one of your recent PRs? Perhaps write Closes #66 in the commit message or PR description to reference this issue and have it automatically closed when the PR is merged. You can also reference a merged PR from here and close the issue manually.
No, I created this ticket precisely because I don't know how to properly fix them, if I did, I would have just created a PR. :)
These need someone that knows the code.
@dzenanz @hjmjohnson @aylward
I've just run cppcheck again and fixed a few more things in: https://github.com/Kitware/MetaIO/pull/103
There are a few more that look legit that I daren't fix not knowing this codebase at all:
derefInvalidIteratorRedundantCheck,src/metaCommand.cxx:819,warning,Either the condition 'it!=m_OptionVector.end()' is redundant or there is possible dereference of an invalid iterator: it.
ignoredReturnValue,src/metaImage.cxx:1059,warning,Return value of function buffer.find() is not used.
unreadVariable,src/metaImage.cxx:1136,style,Variable 'elementDataFileName' is assigned a value that is never used.