Fix a crasher found by libFuzzer

llvm-svn: 245849
Cr-Mirrored-From: sso://chromium.googlesource.com/_direct/external/github.com/llvm/llvm-project
Cr-Mirrored-Commit: 550dfe79ca8c3a2ec5fbf2e34ad40fe66eb7c09f
diff --git a/include/regex b/include/regex
index b355bbb..b2b556e 100644
--- a/include/regex
+++ b/include/regex
@@ -1733,6 +1733,8 @@
 void
 __back_ref<_CharT>::__exec(__state& __s) const
 {
+    if (__mexp_ > __s.__sub_matches_.size())
+        __throw_regex_error<regex_constants::error_backref>();
     sub_match<const _CharT*>& __sm = __s.__sub_matches_[__mexp_-1];
     if (__sm.matched)
     {