summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/re/re.alg/re.alg.match/basic.pass.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/test/std/re/re.alg/re.alg.match/basic.pass.cpp')
-rw-r--r--libcxx/test/std/re/re.alg/re.alg.match/basic.pass.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/libcxx/test/std/re/re.alg/re.alg.match/basic.pass.cpp b/libcxx/test/std/re/re.alg/re.alg.match/basic.pass.cpp
index b2fa6e94135..fd5e7e640a7 100644
--- a/libcxx/test/std/re/re.alg/re.alg.match/basic.pass.cpp
+++ b/libcxx/test/std/re/re.alg/re.alg.match/basic.pass.cpp
@@ -1367,6 +1367,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_match("FooBar", m, re));
+ assert(m.size() == 1);
+ assert(m[0] == "FooBar");
+ }
+ {
+ assert(std::regex_match("Foo", m, re));
+ assert(m.size() == 1);
+ assert(m[0] == "Foo");
+ }
+ {
+ assert(!std::regex_match("FooBarBaz", m, re));
+ assert(m.size() == 0);
+ assert(m.empty());
+ }
+ {
+ assert(!std::regex_match("FooBa", m, re));
+ assert(m.size() == 0);
+ assert(m.empty());
+ }
+ }
return 0;
}
OpenPOWER on IntegriCloud