summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/re/re.alg/re.alg.search/basic.pass.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/test/std/re/re.alg/re.alg.search/basic.pass.cpp')
-rw-r--r--libcxx/test/std/re/re.alg/re.alg.search/basic.pass.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/libcxx/test/std/re/re.alg/re.alg.search/basic.pass.cpp b/libcxx/test/std/re/re.alg/re.alg.search/basic.pass.cpp
index bd96c9830c0..cb11f3bdf66 100644
--- a/libcxx/test/std/re/re.alg/re.alg.search/basic.pass.cpp
+++ b/libcxx/test/std/re/re.alg/re.alg.search/basic.pass.cpp
@@ -1547,6 +1547,30 @@ int main(int, char**)
assert(m.position(0) == 0);
assert(m.str(0) == s);
}
+ { // LWG 2273
+ std::regex re("Foo|FooBar");
+ std::cmatch m;
+ {
+ assert(std::regex_search("FooBar", m, re));
+ assert(m.size() == 1);
+ assert(m[0] == "Foo");
+ }
+ {
+ assert(std::regex_search("Foo", m, re));
+ assert(m.size() == 1);
+ assert(m[0] == "Foo");
+ }
+ {
+ assert(std::regex_search("FooBarBaz", m, re));
+ assert(m.size() == 1);
+ assert(m[0] == "Foo");
+ }
+ {
+ assert(std::regex_search("FooBa", m, re));
+ assert(m.size() == 1);
+ assert(m[0] == "Foo");
+ }
+ }
return 0;
}
OpenPOWER on IntegriCloud