Hi, Ivan
I agree with Roger that there are more test cases than necessary.
Otherwise I think it looks pretty good.
I find the addExact/multiplyExact code less readable. I'm not sure what
could be done about it - maybe some different indentation:
cmin = Math.addExact(
Math.multiplyExact(cmin, 10),
ch - '0');
though that makes for some long lines. Just a thought.
Thanks,
-Brent
On 5/24/19 11:28 PM, Ivan Gerasimov wrote:
Hello!
When Pattern.compile() parses the repetition count in the expressions
like '.{100}', '.{1,2}' or '.{3,}' it fails to detect numeric overflow
if the result is still non-negative.
Could you please help review the patch?
BUGURL: https://bugs.openjdk.java.net/browse/JDK-8224789
WEBREV: http://cr.openjdk.java.net/~igerasim/8224789/00/webrev/
Also, reading a char at line 3274 is done with skip(), so the exception
thrown at 3315 displays the position of the error more accurately.