From 9e137468bca16cc7861771aeb0069c4b47e9ccfe Mon Sep 17 00:00:00 2001 From: Hans Johnson Date: Sun, 5 Apr 2020 16:49:54 -0500 Subject: [PATCH] COMP: Suppress compiler warning about value trucation ITKv5/Modules/Filtering/ImageIntensity/include/itkShiftScaleImageFilter.hxx:97:22: warning: implicit conversion from 'itk::NumericTraits::ValueType' (aka 'unsigned long') to 'double' changes value from 18446744073709551615 to 18446744073709551616 [-Wimplicit-int-float-conversion] else if (value > NumericTraits::max()) ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ITKv5/Modules/Filtering/ImageIntensity/include/itkShiftScaleImageFilter.h:105:3: note: in instantiation of member function 'itk::ShiftScaleImageFilter, itk::Image >::ThreadedGenerateData' requested here ShiftScaleImageFilter(); ^ --- .../ImageIntensity/include/itkShiftScaleImageFilter.hxx | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Modules/Filtering/ImageIntensity/include/itkShiftScaleImageFilter.hxx b/Modules/Filtering/ImageIntensity/include/itkShiftScaleImageFilter.hxx index 2e8d253ee8d..90a44fcffc6 100644 --- a/Modules/Filtering/ImageIntensity/include/itkShiftScaleImageFilter.hxx +++ b/Modules/Filtering/ImageIntensity/include/itkShiftScaleImageFilter.hxx @@ -77,7 +77,6 @@ ShiftScaleImageFilter::ThreadedGenerateData( const OutputImageRegionType & outputRegionForThread, ThreadIdType threadId) { - RealType value; ImageRegionConstIterator it(this->m_InputImage, outputRegionForThread); ImageRegionIterator ot(this->m_OutputImage, outputRegionForThread); @@ -88,13 +87,13 @@ ShiftScaleImageFilter::ThreadedGenerateData( // shift and scale the input pixels while (!it.IsAtEnd()) { - value = (static_cast(it.Get()) + m_Shift) * m_Scale; + const RealType value = (static_cast(it.Get()) + m_Shift) * m_Scale; if (value < NumericTraits::NonpositiveMin()) { ot.Set(NumericTraits::NonpositiveMin()); m_ThreadUnderflow[threadId]++; } - else if (value > NumericTraits::max()) + else if (value > static_cast(NumericTraits::max())) { ot.Set(NumericTraits::max()); m_ThreadOverflow[threadId]++;