Macaulay2 / M2

The primary source code repository for Macaulay2, a system for computing in commutative algebra, algebraic geometry and related fields.
https://macaulay2.com
343 stars 230 forks source link

Compile d directory using C++17 (autotools) #3325

Closed d-torrance closed 3 months ago

d-torrance commented 3 months ago

We already do this in the e directory. This silences the following compiler warnings:

CXX engine-tmp.cc
In file included from ../../../../Macaulay2/d/../e/ExponentList.hpp:9,
                 from ../../../../Macaulay2/d/../e/monomial.hpp:8,
                 from ../../../../Macaulay2/d/engine.dd:96:
../../../../Macaulay2/d/../e/ExponentVector.hpp: In static member function ‘static void ExponentVector<Exponent, overflow_check>::mult(int, ConstExponents, ConstExponents, Exponents)’:
../../../../Macaulay2/d/../e/ExponentVector.hpp:70:8: warning: ‘if constexpr’ only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions]
   70 |     if constexpr (OC)
      |        ^~~~~~~~~
../../../../Macaulay2/d/../e/ExponentVector.hpp: In static member function ‘static void ExponentVector<Exponent, overflow_check>::power(int, ConstExponents, Exponent, Exponents)’:
../../../../Macaulay2/d/../e/ExponentVector.hpp:82:8: warning: ‘if constexpr’ only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions]
   82 |     if constexpr (OC)
      |        ^~~~~~~~~
../../../../Macaulay2/d/../e/ExponentVector.hpp: In static member function ‘static void ExponentVector<Exponent, overflow_check>::multpower(int, ConstExponents, ConstExponents, Exponent, Exponents)’:
../../../../Macaulay2/d/../e/ExponentVector.hpp:95:8: warning: ‘if constexpr’ only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions]
   95 |     if constexpr (OC)
      |        ^~~~~~~~~
../../../../Macaulay2/d/../e/ExponentVector.hpp: In static member function ‘static void ExponentVector<Exponent, overflow_check>::divide(int, ConstExponents, ConstExponents, Exponents)’:
../../../../Macaulay2/d/../e/ExponentVector.hpp:117:8: warning: ‘if constexpr’ only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions]
  117 |     if constexpr (OC)
      |        ^~~~~~~~~
../../../../Macaulay2/d/../e/ExponentVector.hpp: In static member function ‘static void ExponentVector<Exponent, overflow_check>::quotient(int, ConstExponents, ConstExponents, Exponents)’:
../../../../Macaulay2/d/../e/ExponentVector.hpp:129:8: warning: ‘if constexpr’ only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions]
  129 |     if constexpr (OC)
      |        ^~~~~~~~~
../../../../Macaulay2/d/../e/ExponentVector.hpp: In static member function ‘static ExponentVector<Exponent, overflow_check>::Exponent ExponentVector<Exponent, overflow_check>::simple_degree(int, ConstExponents)’:
../../../../Macaulay2/d/../e/ExponentVector.hpp:190:8: warning: ‘if constexpr’ only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions]
  190 |     if constexpr (OC)
      |        ^~~~~~~~~
../../../../Macaulay2/d/../e/ExponentList.hpp: In static member function ‘static const ExponentList<Exponent, legacy_length>::Exponent ExponentList<Exponent, legacy_length>::length(ConstExponents)’:
../../../../Macaulay2/d/../e/ExponentList.hpp:73:8: warning: ‘if constexpr’ only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions]
   73 |     if constexpr (L)
      |        ^~~~~~~~~
../../../../Macaulay2/d/../e/ExponentList.hpp: In static member function ‘static const ExponentList<Exponent, legacy_length>::Exponent ExponentList<Exponent, legacy_length>::npairs(ConstExponents)’:
../../../../Macaulay2/d/../e/ExponentList.hpp:80:8: warning: ‘if constexpr’ only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions]
   80 |     if constexpr (L)
      |        ^~~~~~~~~