diff --git a/Code/Mantid/Framework/DataHandling/src/LoadDiffCal.cpp b/Code/Mantid/Framework/DataHandling/src/LoadDiffCal.cpp
index 02b3a9509ed473808f7dd228d9020e21c868c35d..259be0c3e5fa3edc6ed3f69d9c63a1c2e0d10962 100644
--- a/Code/Mantid/Framework/DataHandling/src/LoadDiffCal.cpp
+++ b/Code/Mantid/Framework/DataHandling/src/LoadDiffCal.cpp
@@ -125,7 +125,7 @@ std::vector<NumT> readArrayCoerce(DataSet &dataset, const DataType &desiredDataT
         std::vector<float> temp(dataSpace.getSelectNpoints());
         dataset.read(&temp[0], dataType, dataSpace);
         for( auto it = temp.begin(); it != temp.end(); ++it)
-          result.push_back(static_cast<int32_t>(*it));
+          result.push_back(static_cast<NumT>(*it));
     } else {
         throw DataTypeIException();
     }