diff options
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.cpp | 24 |
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; } |