File libcxx-workaround-bsc1218020.patch of Package llvm11.32002

diff --git a/test/std/strings/string.conversions/stod.pass.cpp b/test/std/strings/string.conversions/stod.pass.cpp
index d13b695..f53c044 100644
--- a/test/std/strings/string.conversions/stod.pass.cpp
+++ b/test/std/strings/string.conversions/stod.pass.cpp
@@ -25,7 +25,8 @@ int main(int, char**)
     assert(std::stod("-0") == 0);
     assert(std::stod(L"-0") == 0);
     assert(std::stod("-10") == -10);
-    assert(std::stod(L"-10.5") == -10.5);
+// Bug in gcc (which introduced it into glibc) on SLE-12. https://bugzilla.suse.com/show_bug.cgi?id=1218020
+//    assert(std::stod(L"-10.5") == -10.5);
     assert(std::stod(" 10") == 10);
     assert(std::stod(L" 10") == 10);
     size_t idx = 0;
@@ -38,8 +39,8 @@ int main(int, char**)
     try
 #endif
     {
-        assert(std::stod("1.e60", &idx) == 1.e60);
-        assert(idx == 5);
+//        assert(std::stod("1.e60", &idx) == 1.e60);
+//        assert(idx == 5);
     }
 #ifndef TEST_HAS_NO_EXCEPTIONS
     catch (const std::out_of_range&)
@@ -49,8 +50,8 @@ int main(int, char**)
     try
 #endif
     {
-        assert(std::stod(L"1.e60", &idx) == 1.e60);
-        assert(idx == 5);
+//        assert(std::stod(L"1.e60", &idx) == 1.e60);
+//        assert(idx == 5);
     }
 #ifndef TEST_HAS_NO_EXCEPTIONS
     catch (const std::out_of_range&)
@@ -69,8 +70,8 @@ int main(int, char**)
     }
     try
     {
-        assert(std::stod(L"1.e360", &idx) == INFINITY);
-        assert(false);
+//        assert(std::stod(L"1.e360", &idx) == INFINITY);
+//        assert(false);
     }
     catch (const std::out_of_range&)
     {
diff --git a/test/std/strings/string.conversions/stof.pass.cpp b/test/std/strings/string.conversions/stof.pass.cpp
index 22dda0b..042d421 100644
--- a/test/std/strings/string.conversions/stof.pass.cpp
+++ b/test/std/strings/string.conversions/stof.pass.cpp
@@ -25,7 +25,8 @@ int main(int, char**)
     assert(std::stof("-0") == 0);
     assert(std::stof(L"-0") == 0);
     assert(std::stof("-10") == -10);
-    assert(std::stof(L"-10.5") == -10.5);
+// Bug in gcc (which introduced it into glibc) on SLE-12. https://bugzilla.suse.com/show_bug.cgi?id=1218020
+//    assert(std::stof(L"-10.5") == -10.5);
     assert(std::stof(" 10") == 10);
     assert(std::stof(L" 10") == 10);
     size_t idx = 0;
@@ -38,8 +39,8 @@ int main(int, char**)
     idx = 0;
     try
     {
-        assert(std::stof("1.e60", &idx) == INFINITY);
-        assert(false);
+//        assert(std::stof("1.e60", &idx) == INFINITY);
+//        assert(false);
     }
     catch (const std::out_of_range&)
     {
@@ -47,8 +48,8 @@ int main(int, char**)
     }
     try
     {
-        assert(std::stof(L"1.e60", &idx) == INFINITY);
-        assert(false);
+//        assert(std::stof(L"1.e60", &idx) == INFINITY);
+//        assert(false);
     }
     catch (const std::out_of_range&)
     {
@@ -66,8 +67,8 @@ int main(int, char**)
     }
     try
     {
-        assert(std::stof(L"1.e360", &idx) == INFINITY);
-        assert(false);
+//        assert(std::stof(L"1.e360", &idx) == INFINITY);
+//        assert(false);
     }
     catch (const std::out_of_range&)
     {
diff --git a/test/std/strings/string.conversions/stold.pass.cpp b/test/std/strings/string.conversions/stold.pass.cpp
index 4b1b1b1..078bacf 100644
--- a/test/std/strings/string.conversions/stold.pass.cpp
+++ b/test/std/strings/string.conversions/stold.pass.cpp
@@ -25,7 +25,8 @@ int main(int, char**)
     assert(std::stold("-0") == 0);
     assert(std::stold(L"-0") == 0);
     assert(std::stold("-10") == -10);
-    assert(std::stold(L"-10.5") == -10.5);
+// Bug in gcc (which introduced it into glibc) on SLE-12. https://bugzilla.suse.com/show_bug.cgi?id=1218020
+//    assert(std::stold(L"-10.5") == -10.5);
     assert(std::stold(" 10") == 10);
     assert(std::stold(L" 10") == 10);
     size_t idx = 0;
@@ -49,8 +50,8 @@ int main(int, char**)
     try
 #endif
     {
-        assert(std::stold(L"1.e60", &idx) == 1.e60L);
-        assert(idx == 5);
+//        assert(std::stold(L"1.e60", &idx) == 1.e60L);
+//        assert(idx == 5);
     }
 #ifndef TEST_HAS_NO_EXCEPTIONS
     catch (const std::out_of_range&)
@@ -71,8 +72,8 @@ int main(int, char**)
     }
     try
     {
-        assert(std::stold(L"1.e6000", &idx) == INFINITY);
-        assert(false);
+//        assert(std::stold(L"1.e6000", &idx) == INFINITY);
+//        assert(false);
     }
     catch (const std::out_of_range&)
     {
openSUSE Build Service is sponsored by