diff --git a/src/Magnum/Animation/Track.h b/src/Magnum/Animation/Track.h index f389b71d6..67c267de3 100644 --- a/src/Magnum/Animation/Track.h +++ b/src/Magnum/Animation/Track.h @@ -677,7 +677,9 @@ template data, Interpolation interpolation, Extrapolation extrapolation = Extrapolation::Constant) noexcept: TrackView{data, interpolation, extrapolation, extrapolation} {} /** @brief Convert a mutable view to a const one */ - template::value>::type> /*implicit*/ TrackView(const TrackView::type, typename std::remove_const::type, R>& other) noexcept: TrackViewStorage{other._keys, reinterpret_cast&>(other._values), other._interpolation, reinterpret_cast(other._interpolator), other._before, other._after} {} + /* This is the only variant that works on MSVC 2015, std::remove_const + in the signature didn't work there */ + template::value && std::is_same::value>::type> /*implicit*/ TrackView(const TrackView& other) noexcept: TrackViewStorage{other._keys, reinterpret_cast&>(other._values), other._interpolation, reinterpret_cast(other._interpolator), other._before, other._after} {} /** * @brief Interpolation function