diff --git a/libcxx/include/regex b/libcxx/include/regex index 5e195696ff28..760f4eb94dd1 100644 --- a/libcxx/include/regex +++ b/libcxx/include/regex @@ -5210,11 +5210,11 @@ public: const_reference suffix() const {return __suffix_;} _LIBCPP_INLINE_VISIBILITY - const_iterator begin() const {return empty() ? __matches_.end() : __matches_.begin() + 1;} + const_iterator begin() const {return empty() ? __matches_.end() : __matches_.begin();} _LIBCPP_INLINE_VISIBILITY const_iterator end() const {return __matches_.end();} _LIBCPP_INLINE_VISIBILITY - const_iterator cbegin() const {return empty() ? __matches_.end() : __matches_.begin() + 1;} + const_iterator cbegin() const {return empty() ? __matches_.end() : __matches_.begin();} _LIBCPP_INLINE_VISIBILITY const_iterator cend() const {return __matches_.end();} diff --git a/libcxx/test/re/re.results/re.results.acc/begin_end.pass.cpp b/libcxx/test/re/re.results/re.results.acc/begin_end.pass.cpp index e71dcacfe716..80c06f299bd7 100644 --- a/libcxx/test/re/re.results/re.results.acc/begin_end.pass.cpp +++ b/libcxx/test/re/re.results/re.results.acc/begin_end.pass.cpp @@ -27,8 +27,8 @@ test() std::match_results::const_iterator i = m.begin(); std::match_results::const_iterator e = m.end(); - assert(e - i == m.size() - 1); - for (int j = 1; i != e; ++i, ++j) + assert(e - i == m.size()); + for (int j = 0; i != e; ++i, ++j) assert(*i == m[j]); } diff --git a/libcxx/test/re/re.results/re.results.acc/cbegin_cend.pass.cpp b/libcxx/test/re/re.results/re.results.acc/cbegin_cend.pass.cpp index f56fe009ed39..a983c8afc81a 100644 --- a/libcxx/test/re/re.results/re.results.acc/cbegin_cend.pass.cpp +++ b/libcxx/test/re/re.results/re.results.acc/cbegin_cend.pass.cpp @@ -27,8 +27,8 @@ test() std::match_results::const_iterator i = m.cbegin(); std::match_results::const_iterator e = m.cend(); - assert(e - i == m.size() - 1); - for (int j = 1; i != e; ++i, ++j) + assert(e - i == m.size()); + for (int j = 0; i != e; ++i, ++j) assert(*i == m[j]); }