diff --git a/test/Jamfile.v2 b/test/Jamfile.v2 index 1bf1968..546e823 100644 --- a/test/Jamfile.v2 +++ b/test/Jamfile.v2 @@ -19,6 +19,7 @@ import testing ; test-suite optional : [ run optional_test.cpp ] [ run ak_test_vc14_noexcept.cpp ] + [ run ak_test_trait_noexcept_default.cpp ] [ run optional_test_swap.cpp ] [ run optional_test_conversions_from_U.cpp ] [ run optional_test_tie.cpp ] diff --git a/test/ak_test_trait_noexcept_default.cpp b/test/ak_test_trait_noexcept_default.cpp new file mode 100644 index 0000000..7dd8ac2 --- /dev/null +++ b/test/ak_test_trait_noexcept_default.cpp @@ -0,0 +1,26 @@ +#include +#include +#include + +namespace some_namespace +{ + class base_class + { + public: + base_class & operator=(const base_class &){ throw int(); } + virtual ~base_class() {} + }; + + class class_without_default_ctor : public base_class + { + public: + char data; + explicit class_without_default_ctor(char arg) : data(arg) {} + }; +} + +int main() +{ + BOOST_TEST_TRAIT_FALSE((boost::has_nothrow_default_constructor)); + return boost::report_errors(); +}