]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - libstdc++-v3/testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc
Update copyright years.
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / 28_regex / iterators / regex_iterator / wchar_t / string_02.cc
index cd2c68e33eeb4a6d6c6f9da12c81d99b84a2ad7b..aab4fdbcf003324348fb6b79490f26a715ac504e 100644 (file)
@@ -1,11 +1,10 @@
-// { dg-options "-std=gnu++11" }
+// { dg-do run { target c++11 } }
 // { dg-require-namedlocale "en_US.UTF-8" }
-// { dg-do run { xfail *-*-* } }
 
 //
 // 2013-09-05  Tim Shen <timshen91@gmail.com>
 //
-// Copyright (C) 2013 Free Software Foundation, Inc.
+// Copyright (C) 2013-2020 Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -31,8 +30,6 @@
 void
 test01()
 {
-  bool test __attribute__((unused)) = true;
-
   std::setlocale(LC_ALL, "en_US.UTF-8");
 
   std::wstring str2 = L"ä\u2009Ä\u2009ö\u2009Ö\u2009ü\u2009Ü";
@@ -42,13 +39,19 @@ test01()
 
   re2.assign(L"([[:lower:]]{0,1}[[:space:]]{0,1}[[:upper:]]{0,1})");
 
-  std::wsregex_iterator p(str2.begin(), str2.end(), re2);
-  auto a = p;
-  ++p;
-  VERIFY(a != p);
-  //for (std::wsregex_iterator p(str2.begin(), str2.end(), re2);
-  //    p != std::wsregex_iterator{}; ++p)
-  //  std::wcout << (*p)[1] << std::endl;
+  std::wstring sol[] =
+    {
+      L"ä\u2009Ä",
+      L"\u2009",
+      L"ö\u2009Ö",
+      L"\u2009",
+      L"ü\u2009Ü",
+      L"",
+    };
+  int i = 0;
+  for (std::wsregex_iterator p(str2.begin(), str2.end(), re2);
+      p != std::wsregex_iterator{}; ++p)
+    VERIFY(std::wstring((*p)[1].first, (*p)[1].second) == sol[i++]);
 }
 
 int