Modernize conversion to bool to the explicit bool conversion operator (library wide).  This fixes http://llvm.org/bugs/show_bug.cgi?id=12058.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@151088 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/__config b/include/__config
index 5e0db7c..6d551c9 100644
--- a/include/__config
+++ b/include/__config
@@ -376,6 +376,12 @@
 #define __has_feature(__x) 0
 #endif
 
+#if __has_feature(cxx_explicit_conversions)
+#   define _LIBCPP_EXPLICIT explicit
+#else
+#   define _LIBCPP_EXPLICIT
+#endif
+
 #ifdef _LIBCPP_HAS_NO_STRONG_ENUMS
 #define _LIBCPP_DECLARE_STRONG_ENUM(x) struct _LIBCPP_VISIBLE x { enum _
 #define _LIBCPP_DECLARE_STRONG_ENUM_EPILOG(x) \