]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/math/test/multiprc_concept_check_4.cpp
import new upstream nautilus stable release 14.2.8
[ceph.git] / ceph / src / boost / libs / math / test / multiprc_concept_check_4.cpp
1
2 // Copyright John Maddock 2013.
3 // Use, modification and distribution are subject to the
4 // Boost Software License, Version 1.0. (See accompanying file
5 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6
7 //
8 // This tests two things: that multiprecision::number meets our
9 // conceptual requirements, and that we can instantiate
10 // all our distributions and special functions on this type.
11 //
12 #define BOOST_MATH_ASSERT_UNDEFINED_POLICY false
13 #define TEST_GROUP_9
14
15 #ifdef _MSC_VER
16 # pragma warning(disable:4800)
17 # pragma warning(disable:4512)
18 # pragma warning(disable:4127)
19 # pragma warning(disable:4512)
20 # pragma warning(disable:4503) // decorated name length exceeded, name was truncated
21 #endif
22
23 #include <boost/multiprecision/cpp_dec_float.hpp>
24 #include <boost/math/concepts/real_type_concept.hpp>
25 #include "compile_test/instantiate.hpp"
26
27 using namespace boost::multiprecision;
28
29 typedef number<cpp_dec_float<50>, et_on> test_type;
30
31 // We get sporadic internal compiler errors from gcc-7.x when CI testing
32 // that don't appear to be reproducable locally. gcc-6.x and gcc-8.x are fine
33 // so for now it's a <shrug> and move on...
34 #if ! (defined(BOOST_GCC) && (__GNUC__ == 7))
35
36 void foo()
37 {
38 instantiate(test_type());
39 }
40
41 #endif
42
43 int main()
44 {
45 //BOOST_CONCEPT_ASSERT((boost::math::concepts::RealTypeConcept<test_type>));
46 }
47
48