summaryrefslogtreecommitdiffstats
path: root/src/boost/libs/logic/test/compile-fail/implicit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/boost/libs/logic/test/compile-fail/implicit.cpp')
-rw-r--r--src/boost/libs/logic/test/compile-fail/implicit.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/boost/libs/logic/test/compile-fail/implicit.cpp b/src/boost/libs/logic/test/compile-fail/implicit.cpp
new file mode 100644
index 000000000..ba56bfb86
--- /dev/null
+++ b/src/boost/libs/logic/test/compile-fail/implicit.cpp
@@ -0,0 +1,23 @@
+// Copyright 2018 James E. King III. Use, modification and
+// distribution is subject to the Boost Software License, Version
+// 1.0. (See accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#include <boost/logic/tribool.hpp>
+
+int main(int, char*[])
+{
+ using boost::logic::indeterminate;
+ using boost::logic::tribool;
+
+ tribool i(indeterminate);
+
+#if !defined( BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS )
+ bool b = i; // expect to see: no viable conversion from 'boost::logic::tribool' to 'bool'
+ return (int)b;
+#else
+#error in c++03 explicit conversions are allowed
+#endif
+ // NOTREACHED
+ return 0;
+}