2
0
mirror of https://github.com/boostorg/math.git synced 2026-01-19 04:22:09 +00:00

Merge pull request #1277 from boostorg/build2

Add C++14 <type_trait> requirement to builds
This commit is contained in:
Matt Borland
2025-06-27 11:39:25 -04:00
committed by GitHub
4 changed files with 18 additions and 0 deletions

View File

@@ -22,6 +22,7 @@ project
[ check-target-builds ../config//has_gcc_visibility "gcc visibility" : <toolset>gcc:<cxxflags>-fvisibility=hidden : ]
[ requires cxx11_noexcept cxx11_rvalue_references sfinae_expr cxx11_auto_declarations cxx11_lambdas cxx11_unified_initialization_syntax cxx11_hdr_tuple cxx11_hdr_initializer_list cxx11_hdr_chrono cxx11_thread_local cxx11_constexpr cxx11_nullptr cxx11_numeric_limits cxx11_decltype cxx11_hdr_array cxx11_hdr_atomic cxx11_hdr_type_traits cxx11_allocator cxx11_explicit_conversion_operators ]
[ requires cxx14_constexpr cxx14_decltype_auto cxx14_generic_lambdas cxx14_return_type_deduction cxx14_variable_templates ]
[ check-target-builds ../config//has_cxx14_type_traits "cxx14_type_traits" : : <build>no ]
: usage-requirements
<define>BOOST_MATH_TR1_NO_LIB=1
;

View File

@@ -36,6 +36,7 @@ obj has_gmp : has_gmp.cpp :
obj is_ci_sanitizer_run : is_ci_sanitizer_run.cpp ;
obj is_ci_standalone_run : is_ci_standalone_run.cpp ;
obj is_cygwin_run : is_cygwin_run.cpp ;
obj has_cxx14_type_traits : has_cxx14_type_traits.cpp ;
explicit has_long_double_support ;
explicit has_mpfr_class ;
@@ -52,3 +53,4 @@ explicit has_fftw3 ;
explicit is_ci_sanitizer_run ;
explicit is_ci_standalone_run ;
explicit is_cygwin_run ;
explicit has_cxx14_type_traits ;

View File

@@ -0,0 +1,14 @@
// Copyright 2025 Matt Borland
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt
#include <type_traits>
#include <cstdint>
using big_int = std::conditional_t<(sizeof(long) > sizeof(std::uint32_t)), long, std::uint32_t>;
static_assert(sizeof(big_int) >= sizeof(std::uint32_t), "big_int is too small");
int main()
{
return 0;
}

View File

@@ -76,6 +76,7 @@ project
<search>$(mpfr_path)/build.vc10/lib/Win32/Debug
[ requires cxx11_noexcept cxx11_rvalue_references sfinae_expr cxx11_auto_declarations cxx11_lambdas cxx11_unified_initialization_syntax cxx11_hdr_tuple cxx11_hdr_initializer_list cxx11_hdr_chrono cxx11_thread_local cxx11_constexpr cxx11_nullptr cxx11_numeric_limits cxx11_decltype cxx11_hdr_array cxx11_hdr_atomic cxx11_hdr_type_traits cxx11_allocator cxx11_explicit_conversion_operators ]
[ requires cxx14_constexpr cxx14_decltype_auto cxx14_generic_lambdas cxx14_return_type_deduction cxx14_variable_templates ]
[ check-target-builds ../config//has_cxx14_type_traits "cxx14_type_traits" : : <build>no ]
;
if $(ntl-path)