Building against Slicer r24904 on Ubuntu 15.10 using g++ 5.2.1 returns the following
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx: In member function ‘itk::Image<short int, 3u>::Pointer vtkSlicerPETTumorSegmentationLogic::ConvertLabelImageToITK(vtkMRMLPETTumorSegmentationParametersNode*, vtkImageData*)’:
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:189:119: warning: narrowing conversion of ‘-(* vtkLabelVolume->vtkMRMLScalarVolumeNode::<anonymous>.vtkMRMLVolumeNode::GetOrigin())’ from ‘double’ to ‘float’ inside { } is ill-formed in C++11 [-Wnarrowing]
float origin2[3] = {-vtkLabelVolume->GetOrigin()[0], -vtkLabelVolume->GetOrigin()[1], vtkLabelVolume->GetOrigin()[2]};
^
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:189:119: warning: narrowing conversion of ‘-(*(vtkLabelVolume->vtkMRMLScalarVolumeNode::<anonymous>.vtkMRMLVolumeNode::GetOrigin() + 8u))’ from ‘double’ to ‘float’ inside { } is ill-formed in C++11 [-Wnarrowing]
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:189:118: warning: narrowing conversion of ‘*(vtkLabelVolume->vtkMRMLScalarVolumeNode::<anonymous>.vtkMRMLVolumeNode::GetOrigin() + 16u)’ from ‘double’ to ‘float’ inside { } is ill-formed in C++11 [-Wnarrowing]
float origin2[3] = {-vtkLabelVolume->GetOrigin()[0], -vtkLabelVolume->GetOrigin()[1], vtkLabelVolume->GetOrigin()[2]};
^
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx: In member function ‘itk::Image<float, 3u>::Pointer vtkSlicerPETTumorSegmentationLogic::GetPETVolume(vtkMRMLPETTumorSegmentationParametersNode*)’:
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:1765:113: warning: narrowing conversion of ‘-(* vtkPetVolume->vtkMRMLScalarVolumeNode::<anonymous>.vtkMRMLVolumeNode::GetOrigin())’ from ‘double’ to ‘float’ inside { } is ill-formed in C++11 [-Wnarrowing]
float origin2[3] = {-vtkPetVolume->GetOrigin()[0], -vtkPetVolume->GetOrigin()[1], vtkPetVolume->GetOrigin()[2]};
^
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:1765:113: warning: narrowing conversion of ‘-(*(vtkPetVolume->vtkMRMLScalarVolumeNode::<anonymous>.vtkMRMLVolumeNode::GetOrigin() + 8u))’ from ‘double’ to ‘float’ inside { } is ill-formed in C++11 [-Wnarrowing]
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:1765:112: warning: narrowing conversion of ‘*(vtkPetVolume->vtkMRMLScalarVolumeNode::<anonymous>.vtkMRMLVolumeNode::GetOrigin() + 16u)’ from ‘double’ to ‘float’ inside { } is ill-formed in C++11 [-Wnarrowing]
float origin2[3] = {-vtkPetVolume->GetOrigin()[0], -vtkPetVolume->GetOrigin()[1], vtkPetVolume->GetOrigin()[2]};
^
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx: In instantiation of ‘typename ITKImageType::Pointer vtkSlicerPETTumorSegmentationLogic::convert2ITK(vtkSmartPointer<vtkImageData>) [with ITKImageType = itk::Image<short int, 3u>; typename ITKImageType::Pointer = itk::SmartPointer<itk::Image<short int, 3u> >]’:
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:187:85: required from here
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:1583:103: warning: narrowing conversion of ‘-(&(& itkVolume.itk::SmartPointer<TObjectType>::operator-><itk::Image<short int, 3u> >()->itk::Image<short int, 3u>::<anonymous>)->itk::ImageBase<VImageDimension>::GetOrigin<3u>())->itk::Point<double, 3u>::<anonymous>.itk::FixedArray<TValue, VLength>::operator[]<double, 3u>(0)’ from ‘itk::FixedArray<double, 3u>::ValueType {aka double}’ to ‘float’ inside { } is ill-formed in C++11 [-Wnarrowing]
float origin[3] = {-itkVolume->GetOrigin()[0], -itkVolume->GetOrigin()[1], itkVolume->GetOrigin()[2]};
^
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:1583:103: warning: narrowing conversion of ‘-(&(& itkVolume.itk::SmartPointer<TObjectType>::operator-><itk::Image<short int, 3u> >()->itk::Image<short int, 3u>::<anonymous>)->itk::ImageBase<VImageDimension>::GetOrigin<3u>())->itk::Point<double, 3u>::<anonymous>.itk::FixedArray<TValue, VLength>::operator[]<double, 3u>(1)’ from ‘itk::FixedArray<double, 3u>::ValueType {aka double}’ to ‘float’ inside { } is ill-formed in C++11 [-Wnarrowing]
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:1583:103: warning: narrowing conversion of ‘(itk::FixedArray<double, 3u>::ValueType)(&(& itkVolume.itk::SmartPointer<TObjectType>::operator-><itk::Image<short int, 3u> >()->itk::Image<short int, 3u>::<anonymous>)->itk::ImageBase<VImageDimension>::GetOrigin<3u>())->itk::Point<double, 3u>::<anonymous>.itk::FixedArray<TValue, VLength>::operator[]<double, 3u>(2)’ from ‘itk::FixedArray<double, 3u>::ValueType {aka double}’ to ‘float’ inside { } is ill-formed in C++11 [-Wnarrowing]
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx: In instantiation of ‘typename ITKImageType::Pointer vtkSlicerPETTumorSegmentationLogic::convert2ITK(vtkSmartPointer<vtkImageData>) [with ITKImageType = itk::Image<float, 3u>; typename ITKImageType::Pointer = itk::SmartPointer<itk::Image<float, 3u> >]’:
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:1763:74: required from here
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:1583:103: warning: narrowing conversion of ‘-(&(& itkVolume.itk::SmartPointer<TObjectType>::operator-><itk::Image<float, 3u> >()->itk::Image<float, 3u>::<anonymous>)->itk::ImageBase<VImageDimension>::GetOrigin<3u>())->itk::Point<double, 3u>::<anonymous>.itk::FixedArray<TValue, VLength>::operator[]<double, 3u>(0)’ from ‘itk::FixedArray<double, 3u>::ValueType {aka double}’ to ‘float’ inside { } is ill-formed in C++11 [-Wnarrowing]
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:1583:103: warning: narrowing conversion of ‘-(&(& itkVolume.itk::SmartPointer<TObjectType>::operator-><itk::Image<float, 3u> >()->itk::Image<float, 3u>::<anonymous>)->itk::ImageBase<VImageDimension>::GetOrigin<3u>())->itk::Point<double, 3u>::<anonymous>.itk::FixedArray<TValue, VLength>::operator[]<double, 3u>(1)’ from ‘itk::FixedArray<double, 3u>::ValueType {aka double}’ to ‘float’ inside { } is ill-formed in C++11 [-Wnarrowing]
/home/jcfr/Projects/PETTumorSegmentation/PETTumorSegmentation/Logic/vtkSlicerPETTumorSegmentationLogic.cxx:1583:103: warning: narrowing conversion of ‘(itk::FixedArray<double, 3u>::ValueType)(&(& itkVolume.itk::SmartPointer<TObjectType>::operator-><itk::Image<float, 3u> >()->itk::Image<float, 3u>::<anonymous>)->itk::ImageBase<VImageDimension>::GetOrigin<3u>())->itk::Point<double, 3u>::<anonymous>.itk::FixedArray<TValue, VLength>::operator[]<double, 3u>(2)’ from ‘itk::FixedArray<double, 3u>::ValueType {aka double}’ to ‘float’ inside { } is ill-formed in C++11 [-Wnarrowing]