Bill Fisher: This patch fixes a bug where the regex parser doesn't advance the pointer after reading the third character of an octal escape (in awk mode).

That is, regex{"\141", awk} results in the regular expression /a1/ instead of just /a/.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@185449 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Howard Hinnant
2013-07-02 17:43:31 +00:00
parent eaffd0a8ff
commit dbc8cf059e
3 changed files with 33 additions and 1 deletions

View File

@@ -3913,7 +3913,7 @@ basic_regex<_CharT, _Traits>::__parse_awk_escape(_ForwardIterator __first,
{
__val = 8 * __val + *__first - '0';
if (++__first != __last && ('0' <= *__first && *__first <= '7'))
__val = 8 * __val + *__first - '0';
__val = 8 * __val + *__first++ - '0';
}
if (__str)
*__str = _CharT(__val);