integral_constant: As per std: Mark operator T as noexcept.

In the C++ Standard Library, `std::integral_constant`
has its `operator T` marked as `noexcept`:

https://timsong-cpp.github.io/cppwp/meta.help

We hereby do the same for the Boost version.
This commit is contained in:
Adder
2025-01-07 00:19:34 +02:00
committed by John Maddock
parent ff0ae13c64
commit f31a9da4d8

View File

@ -63,7 +63,7 @@ namespace boost{
const void* const pdata = data;
return *static_cast<const mpl::integral_c<T, val>*>(pdata);
}
BOOST_CONSTEXPR operator T()const { return val; }
BOOST_CONSTEXPR operator T()const BOOST_NOEXCEPT { return val; }
};
template <class T, T val>
@ -83,7 +83,7 @@ namespace boost{
const void* const pdata = data;
return *static_cast<const mpl::bool_<val>*>(pdata);
}
BOOST_CONSTEXPR operator bool()const { return val; }
BOOST_CONSTEXPR operator bool()const BOOST_NOEXCEPT { return val; }
};
template <bool val>