]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/libs/date_time/test/testfrmwk.hpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / libs / date_time / test / testfrmwk.hpp
index 9aff6611b377bb82f489d0ce5c2b3c59d7843df4..fde39ab6668351d511cb9b60f23fcb05a92a3ae7 100644 (file)
@@ -56,6 +56,20 @@ inline bool check(const std::string& testname, bool testcond)
   }
 }
 
+// In the comparisons below, it is possible that T and U are signed and unsigned integer types, which generates warnings in some compilers.
+#if defined(BOOST_MSVC)
+# pragma warning(push)
+# pragma warning(disable: 4389)
+#elif defined(BOOST_CLANG) && defined(__has_warning)
+# if __has_warning("-Wsign-compare")
+#  pragma clang diagnostic push
+#  pragma clang diagnostic ignored "-Wsign-compare"
+# endif
+#elif defined(BOOST_GCC) && (BOOST_GCC+0) >= 40600
+# pragma GCC diagnostic push
+# pragma GCC diagnostic ignored "-Wsign-compare"
+#endif
+
 template< typename T, typename U >
 inline bool check_equal(const std::string& testname, T const& left, U const& right)
 {
@@ -67,6 +81,16 @@ inline bool check_equal(const std::string& testname, T const& left, U const& rig
   return res;
 }
 
+#if defined(BOOST_MSVC)
+# pragma warning(pop)
+#elif defined(BOOST_CLANG) && defined(__has_warning)
+# if __has_warning("-Wsign-compare")
+#  pragma clang diagnostic pop
+# endif
+#elif defined(BOOST_GCC) && (BOOST_GCC+0) >= 40600
+# pragma GCC diagnostic pop
+#endif
+
 #ifndef BOOST_NO_STD_WSTRING
 inline bool check_equal(const std::string& testname, std::wstring const& left, std::wstring const& right)
 {