Deprecate regexp ok and error() methods #17245
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This deprecates the
regexp
ok
anderror()
methods, since they were replaced with exceptions.This also fixes segfaults in
ok
anderror()
when theregexp
is not successfully compiled, or when it is default-initialized.The
error()
method returns the same string as the compiler deprecation warning, since we do not have an easy way to access the original error message, because theregexp
being returned fromcompile()
is not assigned to a variable if an exception is thrown, so even if the exception is caught, the variable being assigned thecompile()
result does not contain the error message -- only the exception does.This deserves a separate PR from #17189, since it is actually adding functionality, not removing it. It is not simply a reversion of PR #17189.