Re: RFR 8224789 : Parsing repetition count in regex does not detect numeric overflow

2019-05-29 Thread Joe Darcy
As an academic note, note that non-overflowing strings can be recognized with a regex :-) For signed numbers in base 10: # MAX_VALUE in base 10: 2147483647 ((-)?0*((\p{Digit}){1,9}) |([0-1]\p{Digit}{9}) |(20\p{Digit}{8}) |(21[0-3]\p{Digit}{7}) |(214[0-6]\p{Digit}{6}) |(2147[0-3]\p{Digit}{5})

Re: RFR 8224789 : Parsing repetition count in regex does not detect numeric overflow

2019-05-29 Thread Brent Christian
Looks fine. Thanks, Ivan. -Brent On 5/29/19 7:27 AM, Roger Riggs wrote: Thanks Ivan,  Looks good. On 05/28/2019 10:08 PM, Ivan Gerasimov wrote: Hi Brent! On 5/28/19 4:06 PM, Brent Christian wrote: Hi, Ivan I agree with Roger that there are more test cases than necessary. Otherwise I

Re: RFR 8224789 : Parsing repetition count in regex does not detect numeric overflow

2019-05-29 Thread Roger Riggs
Thanks Ivan,  Looks good. On 05/28/2019 10:08 PM, Ivan Gerasimov wrote: Hi Brent! On 5/28/19 4:06 PM, Brent Christian wrote: Hi, Ivan I agree with Roger that there are more test cases than necessary. Otherwise I think it looks pretty good. Okay.  Then let's make the list of invalid

Re: RFR 8224789 : Parsing repetition count in regex does not detect numeric overflow

2019-05-28 Thread Ivan Gerasimov
Hi Brent! On 5/28/19 4:06 PM, Brent Christian wrote: Hi, Ivan I agree with Roger that there are more test cases than necessary. Otherwise I think it looks pretty good. Okay. Then let's make the list of invalid ranges shorter, but add a randomly generated value! Please find the updated

Re: RFR 8224789 : Parsing repetition count in regex does not detect numeric overflow

2019-05-28 Thread Brent Christian
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(

Re: RFR 8224789 : Parsing repetition count in regex does not detect numeric overflow

2019-05-28 Thread Ivan Gerasimov
Thank you Roger for reviewing! On 5/28/19 9:33 AM, Roger Riggs wrote: Hi Ivan, test/jdk/java/util/regex/RegExTest.java: 4954: The test should print the failing exception information and 4951: a message if the Pattern.compile does not fail to distinguish that failure from any others. Yes,

Re: RFR 8224789 : Parsing repetition count in regex does not detect numeric overflow

2019-05-28 Thread Roger Riggs
Hi Ivan, test/jdk/java/util/regex/RegExTest.java: 4954: The test should print the failing exception information and 4951: a message if the Pattern.compile does not fail to distinguish that failure from any others. I don't think there is a need for so many cases of values > 2^31; there is no

RFR 8224789 : Parsing repetition count in regex does not detect numeric overflow

2019-05-25 Thread Ivan Gerasimov
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: