ITK icon indicating copy to clipboard operation
ITK copied to clipboard

GCC 9.30 uninitialized memory read discovered

Open hjmjohnson opened this issue 4 years ago • 2 comments

Description

Steps to Reproduce

''' ITK/Modules/Core/Common/include/itkHexahedronCell.hxx:385:34: warning: ‘derivs[16]’ is used uninitialized in this function [-Wuninitialized] 385 | tcol[j] += pt[j] * derivs[i + 2 * Self::NumberOfPoints]; | ^ ITK/Modules/Core/Common/include/itkHexahedronCell.hxx:385:34: warning: ‘derivs[17]’ is used uninitialized in this function [-Wuninitialized] ITK/Modules/Core/Common/include/itkHexahedronCell.hxx:385:34: warning: ‘derivs[18]’ is used uninitialized in this function [-Wuninitialized] ITK/Modules/Core/Common/include/itkHexahedronCell.hxx:385:34: warning: ‘derivs[19]’ is used uninitialized in this function [-Wuninitialized] ITK/Modules/Core/Common/include/itkHexahedronCell.hxx:385:34: warning: ‘derivs[20]’ is used uninitialized in this function [-Wuninitialized] ITK/Modules/Core/Common/include/itkHexahedronCell.hxx:385:34: warning: ‘derivs[21]’ is used uninitialized in this function [-Wuninitialized] ITK/Modules/Core/Common/include/itkHexahedronCell.hxx:385:34: warning: ‘derivs[22]’ is used uninitialized in this function [-Wuninitialized] ITK/Modules/Core/Common/include/itkHexahedronCell.hxx:385:34: warning: ‘derivs[23]’ is used uninitialized in this function [-Wuninitialized]

ITK/Modules/Core/Common/include/itkDefaultPixelAccessor.h:72:5: warning: ‘MEM[(const struct CovariantVector &)&correctedGradient + 12]’ may be used uninitialized in this function [-Wmaybe-uninitialized] 72 | output = input; | ^ ITK/Modules/Filtering/ImageGradient/include/itkGradientRecursiveGaussianImageFilter.h:214:29: note: ‘MEM[(const struct CovariantVector &)&correctedGradient + 12]’ was declared here 214 | OutputPixelType correctedGradient; | ^ '''

Expected behavior

No compiler warnings, no buffer reads of uninitialized variables.

Actual behavior

Compiler warnings

Reproducibility

Versions

ITK Head 2021-12-15

Environment

Ubuntu 20.04

g++ --version 
g++ (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

hjmjohnson avatar Dec 15 '21 16:12 hjmjohnson

I have seen this, looked into it, and I did not see an underlying issue. The warning seems to be limited to certain GCC versions. If I recall correctly, it may be also related to Release builds.

thewtex avatar Dec 22 '21 18:12 thewtex

This issue has been automatically marked as stale because it has not had recent activity. Thank you for your contributions.

stale[bot] avatar Apr 27 '22 19:04 stale[bot]