diff --git a/corsika/detail/modules/LongitudinalProfile.inl b/corsika/detail/modules/LongitudinalProfile.inl index e2490e1147d32c701f98005cd9a95f98643f2209..4e68c8f37020f61ce26892d12002da3647c4bc30 100644 --- a/corsika/detail/modules/LongitudinalProfile.inl +++ b/corsika/detail/modules/LongitudinalProfile.inl @@ -14,13 +14,14 @@ #include <cmath> #include <iomanip> #include <limits> +#include <utility> namespace corsika { template <typename TOutput> template <typename... TArgs> - inline LongitudinalProfile<TOutput>::LongitudinalProfile(TArgs... args) - : TOutput(args...) {} + inline LongitudinalProfile<TOutput>::LongitudinalProfile(TArgs&&... args) + : TOutput(std::forward<TArgs>(args)...) {} template <typename TOutput> template <typename TParticle, typename TTrack> diff --git a/corsika/modules/LongitudinalProfile.hpp b/corsika/modules/LongitudinalProfile.hpp index 0c56b3c32ba5768cd2080d23b3edacde5ca1d1ac..c34ee8f2ee2361c3fec488ea4229ae28e9188f67 100644 --- a/corsika/modules/LongitudinalProfile.hpp +++ b/corsika/modules/LongitudinalProfile.hpp @@ -41,7 +41,7 @@ namespace corsika { public: template <typename... TArgs> - LongitudinalProfile(TArgs... args); + LongitudinalProfile(TArgs&&... args); template <typename TParticle, typename TTrack> ProcessReturn doContinuous(