aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2021-10-11 12:08:59 +0100
committerJonathan Wakely <jwakely@redhat.com>2021-10-11 20:34:16 +0100
commit6b6788f8c2748060d922cc22173ff7f8500917e9 (patch)
tree4d7c6314f1168a8b0e33d11e8cfb6c6da5d6adc6 /gcc
parent84088dc4bb6a546c896a068dc201463493babf43 (diff)
downloadgcc-6b6788f8c2748060d922cc22173ff7f8500917e9.zip
gcc-6b6788f8c2748060d922cc22173ff7f8500917e9.tar.gz
gcc-6b6788f8c2748060d922cc22173ff7f8500917e9.tar.bz2
libstdc++: Add valid range assertions to std::basic_regex [PR89927]
This adds some debug assertions to basic_regex. They don't actually diagnose the error in the PR yet, but I have another patch to make them more effective. Also change the __glibcxx_assert(false) consistency checks to include a string literal that tells the user a bit more about why the process aborted. We could consider adding a __glibcxx_bug or __glibcxx_internal_error macro for this purpose, but ideally we'll never hit such bugs anyway so it shouldn't be needed. libstdc++-v3/ChangeLog: PR libstdc++/89927 * include/bits/regex.h (basic_regex(const _Ch_type*, size_t)): Add __glibcxx_requires_string_len assertion. (basic_regex::assign(InputIterator, InputIterator)): Add __glibcxx_requires_valid_range assertion. * include/bits/regex_scanner.tcc (_Scanner::_M_advance()) (_Scanner::_M_scan_normal()): Use string literal in assertions.
Diffstat (limited to 'gcc')
0 files changed, 0 insertions, 0 deletions