RFR [8035975] Pattern.compile(String, int) fails to throw IllegalArgumentException

David Holmes david.holmes at oracle.com
Tue Jul 8 12:25:52 UTC 2014

On 8/07/2014 5:25 AM, Ivan Gerasimov wrote:
> Thanks you Sherman for review!
> On 07.07.2014 21:38, Xueming Shen wrote:
>> On 07/07/2014 10:07 AM, Ivan Gerasimov wrote:
>>> Hello!
>>> The javadoc says that Pattern.compile(String regex, int flag) will
>>> throw IllegalArgumentException, if flag contains an invalid bit set.
>>> However, it fails to do so.
>>> Would you please help review the simple fix for that?
>>> Alternatively, we could just remove the corresponding @throws part,
>>> but that would change the spec.
>>> BUGURL: https://bugs.openjdk.java.net/browse/JDK-8035975
>>> WEBREV: http://cr.openjdk.java.net/~igerasim/8035975/0/webrev/
>>> Sincerely yours,
>>> Ivan
>> Looks fine. But given it's a behavior change, you probably still need
>> a CCC for it.
> Okay, just filed one.

Complying with the spec probably doesn't need a CCC but this seems to be 
a long standing non-compliance so I agree it is worthwhile. Arguably 
this may introduce an incompatibility that we don't want to introduce 
after all this time - so it might be better to relax the spec to allow 
and exception to be thrown, but not require it.

I'm surprised this is no JCK test that covers this.


> Sincerely yours,
> Ivan
>> thanks!
>> -Sherman

More information about the core-libs-dev mailing list