]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
libstdc++: Remove dg-xfail-run-if in std/time/tzdb_list/1.cc
authorJonathan Wakely <jwakely@redhat.com>
Sun, 15 Jan 2023 16:36:34 +0000 (16:36 +0000)
committerJonathan Wakely <jwakely@redhat.com>
Sun, 15 Jan 2023 16:45:57 +0000 (16:45 +0000)
Use the global override_used to tell whether the target supports the
override functionality that the test_reload and test_erase functions
rely on.

libstdc++-v3/ChangeLog:

* testsuite/std/time/tzdb_list/1.cc: Remove dg-xfail-run-if
and fail gracefully if defining the weak symbol doesn't work.

libstdc++-v3/testsuite/std/time/tzdb_list/1.cc

index 2b121ff219d22278b58d9d63d7e9f28639fe2e40..e52f346d2664d68a4160da5fd85b921ee11a2030 100644 (file)
@@ -2,13 +2,13 @@
 // { dg-do run { target c++20 } }
 // { dg-require-effective-target tzdb }
 // { dg-require-effective-target cxx11_abi }
-// { dg-xfail-run-if "no weak override on AIX" { powerpc-ibm-aix* } }
 
 #include <chrono>
 #include <fstream>
+#include <cstdio>
 #include <testsuite_hooks.h>
 
-static bool override_used = true;
+static bool override_used = false;
 
 namespace __gnu_cxx
 {
@@ -119,6 +119,12 @@ int main()
   std::ofstream("tzdata.zi") << tzdata_zi;
 
   test_access();
-  test_reload();
-  test_erase();
+
+  if (override_used)
+  {
+    test_reload();
+    test_erase();
+  }
+  else
+    std::puts("__gnu_cxx::zoneinfo_dir_override() doesn't work on this target");
 }