]> git.tdb.fi Git - libs/math.git/commitdiff
Require C++11 for building
authorMikko Rasa <tdb@tdb.fi>
Sun, 13 Mar 2022 19:30:11 +0000 (21:30 +0200)
committerMikko Rasa <tdb@tdb.fi>
Sun, 13 Mar 2022 19:30:11 +0000 (21:30 +0200)
Build
source/linal/vector.h

diff --git a/Build b/Build
index f183ff5d02297cc5c9cefd290223e38ed3261951..7fa961cbcb4bab1e6dada5febe808308bd219e29 100644 (file)
--- a/Build
+++ b/Build
@@ -4,6 +4,11 @@ package "mspmath"
 
        require "mspdatafile";
 
+       build_info
+       {
+               standard CXX "c++11";
+       };
+
        library "mspmath"
        {
                source "source/interpolate";
index 31597d4282410e2606590eaea2faa6d3c22c2cd9..610ac2103a21ab83e0b58f88905e6d07c6962d2d 100644 (file)
@@ -84,14 +84,9 @@ public:
        use by Matrix row accessor. */
        Vector(const T *, unsigned);
 
-#if __cplusplus >= 201103L
        template<typename... Args>
        Vector(T, Args...);
-#else
-       Vector(T, T);
-       Vector(T, T, T);
-       Vector(T, T, T, T);
-#endif
+
        template<typename U>
        Vector(const Vector<U, N> &);
 
@@ -131,7 +126,6 @@ inline Vector<T, N>::Vector(const T *d, unsigned stride)
                (*this)[i] = d[i*stride];
 }
 
-#if __cplusplus >= 201103L
 template<typename T, unsigned N>
 template<typename... Args>
 inline Vector<T, N>::Vector(T x_, Args... v)
@@ -142,33 +136,6 @@ inline Vector<T, N>::Vector(T x_, Args... v)
        for(auto c: std::initializer_list<T> { static_cast<T>(v)... })
                (*this)[i++] = c;
 }
-#else
-/* The compiler won't instantiate these unless they are used.  Trying to use
-them on the wrong class results in an error. */
-template<typename T, unsigned N>
-inline Vector<T, N>::Vector(T x_, T y_)
-{
-       this->VectorComponents<T, 2>::x = x_;
-       this->VectorComponents<T, 2>::y = y_;
-}
-
-template<typename T, unsigned N>
-inline Vector<T, N>::Vector(T x_, T y_, T z_)
-{
-       this->VectorComponents<T, 3>::x = x_;
-       this->VectorComponents<T, 3>::y = y_;
-       this->VectorComponents<T, 3>::z = z_;
-}
-
-template<typename T, unsigned N>
-inline Vector<T, N>::Vector(T x_, T y_, T z_, T w_)
-{
-       this->VectorComponents<T, 4>::x = x_;
-       this->VectorComponents<T, 4>::y = y_;
-       this->VectorComponents<T, 4>::z = z_;
-       this->VectorComponents<T, 4>::w = w_;
-}
-#endif
 
 template<typename T, unsigned N>
 template<typename U>