]>
Commit | Line | Data |
---|---|---|
7c673cae | 1 | |
1e59de90 | 2 | // Copyright John Maddock 2020. |
7c673cae FG |
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 | // | |
1e59de90 | 8 | // This tests two things: that multiprecision::number meets our |
7c673cae FG |
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 | |
1e59de90 | 13 | #define TEST_GROUP_14 |
7c673cae FG |
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 | ||
1e59de90 TL |
23 | #include <boost/multiprecision/cpp_dec_float.hpp> |
24 | #include "compile_test/instantiate.hpp" | |
7c673cae | 25 | |
1e59de90 | 26 | using namespace boost::multiprecision; |
7c673cae | 27 | |
1e59de90 TL |
28 | typedef number<cpp_dec_float<50>, et_on> test_type; |
29 | ||
30 | // We get sporadic internal compiler errors from gcc-7.x when CI testing | |
31 | // that don't appear to be reproducible locally. gcc-6.x and gcc-8.x are fine | |
32 | // so for now it's a <shrug> and move on... | |
33 | #if ! (defined(BOOST_GCC) && (__GNUC__ == 7)) | |
7c673cae FG |
34 | |
35 | void foo() | |
36 | { | |
1e59de90 | 37 | instantiate(test_type()); |
7c673cae FG |
38 | } |
39 | ||
1e59de90 TL |
40 | #endif |
41 | ||
7c673cae FG |
42 | int main() |
43 | { | |
1e59de90 | 44 | //BOOST_CONCEPT_ASSERT((boost::math::concepts::RealTypeConcept<test_type>)); |
7c673cae FG |
45 | } |
46 | ||
47 |