From 55b9e440a7729420f1fbbc2306dbbe6ebbcc978b Mon Sep 17 00:00:00 2001 From: Marshall Clow Date: Thu, 19 Oct 2017 22:10:41 +0000 Subject: Fix an unsigned integer overflow in regex that lead to a bad memory access. Found by OSS-Fuzz llvm-svn: 316191 --- libcxx/test/std/re/re.regex/re.regex.construct/bad_backref.pass.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'libcxx/test/std/re/re.regex') diff --git a/libcxx/test/std/re/re.regex/re.regex.construct/bad_backref.pass.cpp b/libcxx/test/std/re/re.regex/re.regex.construct/bad_backref.pass.cpp index e66d3e976db..8e886cd8d1a 100644 --- a/libcxx/test/std/re/re.regex/re.regex.construct/bad_backref.pass.cpp +++ b/libcxx/test/std/re/re.regex/re.regex.construct/bad_backref.pass.cpp @@ -34,6 +34,7 @@ int main() { assert(error_badbackref_thrown("\\1abc")); // no references assert(error_badbackref_thrown("ab(c)\\2def")); // only one reference + assert(error_badbackref_thrown("\\800000000000000000000000000000")); // overflows // this should NOT throw, because we only should look at the '1' // See https://bugs.llvm.org/show_bug.cgi?id=31387 -- cgit v1.2.3