diff --git a/Applications/ApplicationsLib/ProjectData.cpp b/Applications/ApplicationsLib/ProjectData.cpp
index d8feea6de30d032c21beaf86f14ed3fa9f2d27b0..58cf4244c201136810b9b900b66c61c41bbea0d2 100644
--- a/Applications/ApplicationsLib/ProjectData.cpp
+++ b/Applications/ApplicationsLib/ProjectData.cpp
@@ -359,8 +359,8 @@ void ProjectData::parseNonlinearSolvers(BaseLib::ConfigTree const& config)
 static std::unique_ptr<MathLib::PiecewiseLinearInterpolation>
 createPiecewiseLinearInterpolation(BaseLib::ConfigTree const& config)
 {
-	auto const coords = config.getConfParam<std::vector<double>>("coords");
-	auto const values = config.getConfParam<std::vector<double>>("values");
+	auto coords = config.getConfParam<std::vector<double>>("coords");
+	auto values = config.getConfParam<std::vector<double>>("values");
 	if (coords.empty() || values.empty())
 	{
 		ERR("The given co-ordinates or values vector is empty.");
@@ -373,7 +373,8 @@ createPiecewiseLinearInterpolation(BaseLib::ConfigTree const& config)
 	}
 
 	return std::unique_ptr<MathLib::PiecewiseLinearInterpolation>{
-	    new MathLib::PiecewiseLinearInterpolation{coords, values}};
+	    new MathLib::PiecewiseLinearInterpolation{std::move(coords),
+	                                              std::move(values)}};
 }
 
 void ProjectData::parseCurves(
diff --git a/NumLib/Function/LinearInterpolationAlongPolyline.cpp b/NumLib/Function/LinearInterpolationAlongPolyline.cpp
index a9ad05c2ce6b786d3ee054b4ca70a8bf31d37dbd..115978a9bbcb0311bc8a948581e50dda339c8742 100644
--- a/NumLib/Function/LinearInterpolationAlongPolyline.cpp
+++ b/NumLib/Function/LinearInterpolationAlongPolyline.cpp
@@ -55,7 +55,8 @@ MathLib::PiecewiseLinearInterpolation LinearInterpolationAlongPolyline::createIn
 		}
 	}
 
-	return MathLib::PiecewiseLinearInterpolation(vec_known_dist, vec_known_values);
+	return MathLib::PiecewiseLinearInterpolation{std::move(vec_known_dist),
+	                                             std::move(vec_known_values)};
 }
 
 double LinearInterpolationAlongPolyline::operator()(const MathLib::Point3d& pnt) const
diff --git a/Tests/MathLib/TestPiecewiseLinearInterpolation.cpp b/Tests/MathLib/TestPiecewiseLinearInterpolation.cpp
index e6fdbfc22f7c93fb578429f0def4d3b8444662d1..2d65607999aea7fb90490f54d928634f36358d0b 100644
--- a/Tests/MathLib/TestPiecewiseLinearInterpolation.cpp
+++ b/Tests/MathLib/TestPiecewiseLinearInterpolation.cpp
@@ -32,7 +32,8 @@ TEST(MathLibInterpolationAlgorithms, PiecewiseLinearInterpolation)
 		}
 	}
 
-	MathLib::PiecewiseLinearInterpolation interpolation(supp_pnts, values);
+	MathLib::PiecewiseLinearInterpolation interpolation{std::move(supp_pnts),
+	                                                    std::move(values)};
 	// Interpolation
 	for (std::size_t k(0); k<size-1; ++k) {
 		ASSERT_NEAR(0.5, interpolation.getValue(k+0.5), std::numeric_limits<double>::epsilon());
@@ -67,7 +68,8 @@ TEST(MathLibInterpolationAlgorithms, PiecewiseLinearInterpolationSupportPntsInRe
 		}
 	}
 
-	MathLib::PiecewiseLinearInterpolation interpolation(supp_pnts, values);
+	MathLib::PiecewiseLinearInterpolation interpolation{std::move(supp_pnts),
+	                                                    std::move(values)};
 	// Interpolation
 	for (std::size_t k(0); k<size-1; ++k) {
 		ASSERT_NEAR(0.5, interpolation.getValue(k+0.5), std::numeric_limits<double>::epsilon());