# Castor compile warnings

**URL:** <https://castor-project.discourse.group/t/castor-compile-warnings/43>\
**Category:** General Discussions\
**Created:** [March 29, 2018, 9:42am UTC](https://castor-project.discourse.group/t/castor-compile-warnings/43 "2018-03-29T09:42:41Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Michael\_Ljungberg](https://avatars.discourse-cdn.com/v4/letter/m/a4c791/32.png) [@Michael\_Ljungberg](https://castor-project.discourse.group/u/Michael_Ljungberg)\
**Post date:** [March 29, 2018, 9:42am UTC](https://castor-project.discourse.group/t/castor-compile-warnings/43/1 "2018-03-29T09:42:41Z")

</div>

Hi Castor developers

For your information, I get the following warnings when compile latest version on a Mac Sierra High 10.13.13.

Hälsningar / Best regards

Michael Ljungberg  
Lund university  
Sweden

mlj-mac ~/castor\> make  
Making dependencies for castor-recon.cc ...  
Making dependencies for toolkits/castor-datafileConversionEx.cc ...  
Making dependencies for toolkits/castor-PetScannerLutEx.cc ...  
Making dependencies for toolkits/castor-GATERootToCastor.cc ...  
Making dependencies for toolkits/castor-GATEMacToGeom.cc ...  
Making dependencies for scanner/vScanner.cc ...  
Making dependencies for scanner/sScannerManager.cc ...  
Making dependencies for scanner/oMatrix.cc ...  
Making dependencies for scanner/iScannerSPECTConv.cc ...  
Making dependencies for scanner/iScannerPET.cc ...  
Making dependencies for projector/vProjector.cc ...  
Making dependencies for projector/oSystemMatrix.cc ...  
Making dependencies for projector/oProjectorManager.cc ...  
Making dependencies for projector/oProjectionLine.cc ...  
Making dependencies for projector/iProjectorTemplate.cc ...  
Making dependencies for projector/iProjectorJoseph.cc ...  
Making dependencies for projector/iProjectorIncrementalSiddonMulti.cc ...  
Making dependencies for projector/iProjectorIncrementalSiddon.cc ...  
Making dependencies for projector/iProjectorClassicSiddon.cc ...  
Making dependencies for optimizer/vPenalty.cc ...  
Making dependencies for optimizer/vOptimizer.cc ...  
Making dependencies for optimizer/oOptimizerManager.cc ...  
Making dependencies for optimizer/iOptimizerTemplate.cc ...  
Making dependencies for optimizer/iOptimizerOriginalAML.cc ...  
Making dependencies for optimizer/iOptimizerNEGML.cc ...  
Making dependencies for optimizer/iOptimizerMLEM.cc ...  
Making dependencies for optimizer/iOptimizerLandweber.cc ...  
Making dependencies for management/sRandomNumberGenerator.cc ...  
Making dependencies for management/sOutputManager.cc ...  
Making dependencies for management/sAddonManager.cc ...  
Making dependencies for management/gOptions.cc ...  
Making dependencies for management/gDataConversionUtilities.cc ...  
Making dependencies for image/vImageProcessingModule.cc ...  
Making dependencies for image/vImageConvolver.cc ...  
Making dependencies for image/vDeformation.cc ...  
Making dependencies for image/oInterfileIO.cc ...  
Making dependencies for image/oImageSpace.cc ...  
Making dependencies for image/oImageProcessingManager.cc ...  
Making dependencies for image/oImageDimensionsAndQuantification.cc ...  
Making dependencies for image/oImageConvolverManager.cc ...  
Making dependencies for image/oDeformationManager.cc ...  
Making dependencies for image/iImageProcessingTemplate.cc ...  
Making dependencies for image/iImageConvolverTemplate.cc ...  
Making dependencies for image/iImageConvolverStationaryGaussian.cc ...  
Making dependencies for image/iDeformationTemplate.cc ...  
Making dependencies for dynamic/vDynamicModel.cc ...  
Making dependencies for dynamic/oDynamicModelManager.cc ...  
Making dependencies for dynamic/iPatlakModel.cc ...  
Making dependencies for dynamic/iDynamicModelTemplate.cc ...  
Making dependencies for datafile/vEvent.cc ...  
Making dependencies for datafile/vDataFile.cc ...  
Making dependencies for datafile/oDynamicDataManager.cc ...  
Making dependencies for datafile/iEventTransmission.cc ...  
Making dependencies for datafile/iEventSPECT.cc ...  
Making dependencies for datafile/iEventPET.cc ...  
Making dependencies for datafile/iEventNorm.cc ...  
Making dependencies for datafile/iEventListSPECT.cc ...  
Making dependencies for datafile/iEventListPET.cc ...  
Making dependencies for datafile/iEventHistoSPECT.cc ...  
Making dependencies for datafile/iEventHistoPET.cc ...  
Making dependencies for datafile/iDataFileTransmission.cc ...  
Making dependencies for datafile/iDataFileSPECT.cc ...  
Making dependencies for datafile/iDataFilePET.cc ...  
Making dependencies for analytic\_simulator/oComputeProjection.cc ...  
Making dependencies for analytic\_simulator/oAnalyticProjection.cc ...  
Making dependencies for algorithm/oSensitivityGenerator.cc ...  
Making dependencies for algorithm/oIterativeAlgorithm.cc ...  
Compiling castor-recon.cc ...  
Compiling algorithm/oIterativeAlgorithm.cc ...  
Compiling algorithm/oSensitivityGenerator.cc ...  
Compiling analytic\_simulator/oAnalyticProjection.cc ...  
Compiling analytic\_simulator/oComputeProjection.cc ...  
Compiling datafile/iDataFilePET.cc ...  
Compiling datafile/iDataFileSPECT.cc ...  
Compiling datafile/iDataFileTransmission.cc ...  
Compiling datafile/iEventHistoPET.cc ...  
Compiling datafile/iEventHistoSPECT.cc ...  
Compiling datafile/iEventListPET.cc ...  
Compiling datafile/iEventListSPECT.cc ...  
Compiling datafile/iEventNorm.cc ...  
Compiling datafile/iEventPET.cc ...  
Compiling datafile/iEventSPECT.cc ...  
Compiling datafile/iEventTransmission.cc ...  
Compiling datafile/oDynamicDataManager.cc ...  
Compiling datafile/vDataFile.cc ...  
Compiling datafile/vEvent.cc ...  
Compiling dynamic/iDynamicModelTemplate.cc ...  
Compiling dynamic/iPatlakModel.cc ...  
Compiling dynamic/oDynamicModelManager.cc ...  
Compiling dynamic/vDynamicModel.cc ...  
Compiling image/iDeformationTemplate.cc ...  
Compiling image/iImageConvolverStationaryGaussian.cc ...  
Compiling image/iImageConvolverTemplate.cc ...  
Compiling image/iImageProcessingTemplate.cc ...  
Compiling image/oDeformationManager.cc ...  
Compiling image/oImageConvolverManager.cc ...  
Compiling image/oImageDimensionsAndQuantification.cc ...  
Compiling image/oImageProcessingManager.cc ...  
Compiling image/oImageSpace.cc ...  
Compiling image/oInterfileIO.cc ...  
src/image/oInterfileIO.cc:3239:24: warning: comparison of unsigned expression \<  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 is always false [-Wtautological-compare]  
&nbsp;&nbsp;if(ap\_IF-\>mtx\_size[2]\<0 && ap\_IF-\>nb\_total\_imgs\>0)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ~~~~~~~~~~~~~~~~~~ ^~  
1 warning generated.  
Compiling image/vDeformation.cc ...  
Compiling image/vImageConvolver.cc ...  
Compiling image/vImageProcessingModule.cc ...  
Compiling management/gDataConversionUtilities.cc ...  
Compiling management/gOptions.cc ...  
src/management/gOptions.cc:179:19: warning: comparison of unsigned expression \<  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 is always false [-Wtautological-compare]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(pos\<0)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~~~^~  
src/management/gOptions.cc:198:24: warning: comparison of unsigned expression \<  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 is always false [-Wtautological-compare]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pos = (pos2\<0) ? -1 : pos2+1 ;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ~~~~ ^~  
src/management/gOptions.cc:307:21: warning: comparison of unsigned expression \<  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 is always false [-Wtautological-compare]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(pos\<0)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~~~^~  
src/management/gOptions.cc:325:26: warning: comparison of unsigned expression \<  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 is always false [-Wtautological-compare]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pos = (pos2\<0) ? -1 : pos2+1 ;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ~~~~ ^~  
src/management/gOptions.cc:435:21: warning: comparison of unsigned expression \<  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 is always false [-Wtautological-compare]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(pos\<0)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~~~^~  
src/management/gOptions.cc:453:26: warning: comparison of unsigned expression \<  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 is always false [-Wtautological-compare]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pos = (pos2\<0) ? -1 : pos2+1 ;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ~~~~ ^~  
src/management/gOptions.cc:569:21: warning: comparison of unsigned expression \<  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 is always false [-Wtautological-compare]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(pos\<0)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~~~^~  
src/management/gOptions.cc:587:26: warning: comparison of unsigned expression \<  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 is always false [-Wtautological-compare]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pos = (pos2\<0) ? -1 : pos2+1 ;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ~~~~ ^~  
src/management/gOptions.cc:711:23: warning: comparison of unsigned expression \<  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 is always false [-Wtautological-compare]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(pos\<0)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~~~^~  
src/management/gOptions.cc:729:28: warning: comparison of unsigned expression \<  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0 is always false [-Wtautological-compare]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pos = (pos2\<0) ? -1 : pos2+1 ;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ~~~~ ^~  
10 warnings generated.  
Compiling management/sAddonManager.cc ...  
Compiling management/sOutputManager.cc ...  
Compiling management/sRandomNumberGenerator.cc ...  
Compiling optimizer/iOptimizerLandweber.cc ...  
Compiling optimizer/iOptimizerMLEM.cc ...  
Compiling optimizer/iOptimizerNEGML.cc ...  
Compiling optimizer/iOptimizerOriginalAML.cc ...  
Compiling optimizer/iOptimizerTemplate.cc ...  
Compiling optimizer/oOptimizerManager.cc ...  
Compiling optimizer/vOptimizer.cc ...  
Compiling optimizer/vPenalty.cc ...  
Compiling projector/iProjectorClassicSiddon.cc ...  
Compiling projector/iProjectorIncrementalSiddon.cc ...  
Compiling projector/iProjectorIncrementalSiddonMulti.cc ...  
Compiling projector/iProjectorJoseph.cc ...  
Compiling projector/iProjectorTemplate.cc ...  
Compiling projector/oProjectionLine.cc ...  
Compiling projector/oProjectorManager.cc ...  
Compiling projector/oSystemMatrix.cc ...  
In file included from src/projector/oSystemMatrix.cc:41:  
include/projector/oSystemMatrix.hh:124:15: warning: private field 'mp\_Scanner'  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is not used [-Wunused-private-field]  
&nbsp;&nbsp;&nbsp;&nbsp;vScanner\* mp\_Scanner; /\*!\< The pointer t...  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
1 warning generated.  
Compiling projector/vProjector.cc ...  
src/projector/vProjector.cc:250:32: warning: logical not is only applied to the  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;left hand side of this comparison [-Wlogical-not-parentheses]  
&nbsp;&nbsp;if (m\_applyTOF!=USE\_NOTOF && !m\_TOFnbSigmas\>0.)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^ ~  
src/projector/vProjector.cc:250:32: note: add parentheses after the '!' to  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evaluate the comparison first  
&nbsp;&nbsp;if (m\_applyTOF!=USE\_NOTOF && !m\_TOFnbSigmas\>0.)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;( )  
src/projector/vProjector.cc:250:32: note: add parentheses around left hand side  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;expression to silence this warning  
&nbsp;&nbsp;if (m\_applyTOF!=USE\_NOTOF && !m\_TOFnbSigmas\>0.)  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;( )  
1 warning generated.  
Compiling scanner/iScannerPET.cc ...  
Compiling scanner/iScannerSPECTConv.cc ...  
Compiling scanner/oMatrix.cc ...  
Compiling scanner/sScannerManager.cc ...  
Compiling scanner/vScanner.cc ...  
Compiling toolkits/castor-GATEMacToGeom.cc ...  
Compiling toolkits/castor-GATERootToCastor.cc ...  
Compiling toolkits/castor-PetScannerLutEx.cc ...  
toolkits/castor-PetScannerLutEx.cc:508:5: warning: 'delete' applied to a pointer  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;that was allocated with 'new[]'; did you mean 'delete[]'?  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[-Wmismatched-new-delete]  
&nbsp;&nbsp;&nbsp;&nbsp;delete crystal\_positionX;  
&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[]  
toolkits/castor-PetScannerLutEx.cc:308:35: note: allocated with 'new[]' here  
&nbsp;&nbsp;&nbsp;&nbsp;FLTNBLUT\* crystal\_positionX = new FLTNBLUT[nb\_crystals\_lyr[lyr] ];  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
toolkits/castor-PetScannerLutEx.cc:509:5: warning: 'delete' applied to a pointer  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;that was allocated with 'new[]'; did you mean 'delete[]'?  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[-Wmismatched-new-delete]  
&nbsp;&nbsp;&nbsp;&nbsp;delete crystal\_positionY;  
&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[]  
toolkits/castor-PetScannerLutEx.cc:309:35: note: allocated with 'new[]' here  
&nbsp;&nbsp;&nbsp;&nbsp;FLTNBLUT\* crystal\_positionY = new FLTNBLUT[nb\_crystals\_lyr[lyr] ];  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
toolkits/castor-PetScannerLutEx.cc:510:5: warning: 'delete' applied to a pointer  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;that was allocated with 'new[]'; did you mean 'delete[]'?  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[-Wmismatched-new-delete]  
&nbsp;&nbsp;&nbsp;&nbsp;delete crystal\_positionZ;  
&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[]  
toolkits/castor-PetScannerLutEx.cc:310:35: note: allocated with 'new[]' here  
&nbsp;&nbsp;&nbsp;&nbsp;FLTNBLUT\* crystal\_positionZ = new FLTNBLUT[nb\_crystals\_lyr[lyr] ];  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
toolkits/castor-PetScannerLutEx.cc:511:5: warning: 'delete' applied to a pointer  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;that was allocated with 'new[]'; did you mean 'delete[]'?  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[-Wmismatched-new-delete]  
&nbsp;&nbsp;&nbsp;&nbsp;delete crystal\_orientationX;  
&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[]  
toolkits/castor-PetScannerLutEx.cc:311:38: note: allocated with 'new[]' here  
&nbsp;&nbsp;&nbsp;&nbsp;FLTNBLUT\* crystal\_orientationX = new FLTNBLUT[nb\_crystals\_lyr[lyr] ];  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
toolkits/castor-PetScannerLutEx.cc:512:5: warning: 'delete' applied to a pointer  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;that was allocated with 'new[]'; did you mean 'delete[]'?  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[-Wmismatched-new-delete]  
&nbsp;&nbsp;&nbsp;&nbsp;delete crystal\_orientationY;  
&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[]  
toolkits/castor-PetScannerLutEx.cc:312:38: note: allocated with 'new[]' here  
&nbsp;&nbsp;&nbsp;&nbsp;FLTNBLUT\* crystal\_orientationY = new FLTNBLUT[nb\_crystals\_lyr[lyr] ];  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
toolkits/castor-PetScannerLutEx.cc:513:5: warning: 'delete' applied to a pointer  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;that was allocated with 'new[]'; did you mean 'delete[]'?  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[-Wmismatched-new-delete]  
&nbsp;&nbsp;&nbsp;&nbsp;delete crystal\_orientationZ;  
&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[]  
toolkits/castor-PetScannerLutEx.cc:313:38: note: allocated with 'new[]' here  
&nbsp;&nbsp;&nbsp;&nbsp;FLTNBLUT\* crystal\_orientationZ = new FLTNBLUT[nb\_crystals\_lyr[lyr] ];  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
6 warnings generated.  
Compiling toolkits/castor-datafileConversionEx.cc ...  
toolkits/castor-datafileConversionEx.cc:737:23: warning: variable 'rSectorID1'  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is uninitialized when used here [-Wuninitialized]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+ rSectorID1\*nb\_crystals\_trs  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^ ~~~~~~~~~  
toolkits/castor-datafileConversionEx.cc:667:21: note: initialize the variable  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'rSectorID1' to silence this warning  
&nbsp;&nbsp;int32\_t rSectorID1, rSectorID2;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 0  
toolkits/castor-datafileConversionEx.cc:721:44: warning: variable 'crystalID1'  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is uninitialized when used here [-Wuninitialized]  
&nbsp;&nbsp;&nbsp;&nbsp;uint32\_t crystals\_trs\_id1 = (uint32\_t)(crystalID1/nb\_crystals\_trs);  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^ ~~~~~~~~~  
toolkits/castor-datafileConversionEx.cc:669:21: note: initialize the variable  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'crystalID1' to silence this warning  
&nbsp;&nbsp;int32\_t crystalID1, crystalID2;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 0  
toolkits/castor-datafileConversionEx.cc:741:23: warning: variable 'rSectorID2'  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is uninitialized when used here [-Wuninitialized]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+ rSectorID2\*nb\_crystals\_trs  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^ ~~~~~~~~~  
toolkits/castor-datafileConversionEx.cc:667:33: note: initialize the variable  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'rSectorID2' to silence this warning  
&nbsp;&nbsp;int32\_t rSectorID1, rSectorID2;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 0  
toolkits/castor-datafileConversionEx.cc:726:44: warning: variable 'crystalID2'  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is uninitialized when used here [-Wuninitialized]  
&nbsp;&nbsp;&nbsp;&nbsp;uint32\_t crystals\_trs\_id2 = (uint32\_t)(crystalID2/nb\_crystals\_trs);  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^ ~~~~~~~~~  
toolkits/castor-datafileConversionEx.cc:669:33: note: initialize the variable  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'crystalID2' to silence this warning  
&nbsp;&nbsp;int32\_t crystalID1, crystalID2;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 0  
toolkits/castor-datafileConversionEx.cc:723:24: warning: variable 'moduleID1' is  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;uninitialized when used here [-Wuninitialized]  
&nbsp;&nbsp;&nbsp;&nbsp;uint32\_t ringID1 = moduleID1\*nb\_crystals\_axl  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^ ~~~~~~~~  
toolkits/castor-datafileConversionEx.cc:668:20: note: initialize the variable  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'moduleID1' to silence this warning  
&nbsp;&nbsp;int32\_t moduleID1, moduleID2;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 0  
toolkits/castor-datafileConversionEx.cc:728:24: warning: variable 'moduleID2' is  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;uninitialized when used here [-Wuninitialized]  
&nbsp;&nbsp;&nbsp;&nbsp;uint32\_t ringID2 = moduleID2\*nb\_crystals\_axl  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^ ~~~~~~~~  
toolkits/castor-datafileConversionEx.cc:668:31: note: initialize the variable  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'moduleID2' to silence this warning  
&nbsp;&nbsp;int32\_t moduleID1, moduleID2;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;^  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 0  
6 warnings generated.  
Linking castor-recon ...  
Linking castor-GATEMacToGeom ...  
Linking castor-GATERootToCastor ...  
Linking castor-PetScannerLutEx ...  
Linking castor-datafileConversionEx ...  
All executables are in bin

---

<div class="post-metadata">

**Author:** ![tmerlin](https://yyz2.discourse-cdn.com/free1/user_avatar/castor-project.discourse.group/tmerlin/32/216_2.png) [@tmerlin](https://castor-project.discourse.group/u/tmerlin)\
**Post date:** [March 30, 2018, 6:08pm UTC](https://castor-project.discourse.group/t/castor-compile-warnings/43/2 "2018-03-30T18:08:33Z")

</div>

Hello Michael,

Thank you very much for the feedback, these warnings will be addressed in the next version of the code.

Kind regards,

Thibaut
