On Wed, 18 Nov 2020 22:09:21 GMT, Ian Graves <[email protected]> wrote:
>> The `java.util.Formatter` format specifies support for field widths,
>> argument indexes, or precision lengths of a field that relate to the
>> variadic arguments supplied to the formatter. These numbers are specified by
>> integers, sometimes negative. For argument index, it's specified in the
>> documentation that the highest allowed argument is limited by the largest
>> possible index of an array (ie the largest possible variadic index), but for
>> the other two it's not defined. Moreover, what happens when a number field
>> in a string is too large or too small to be represented by a 32-bit integer
>> type is not defined.
>>
>> This fix adds documentation to specify what error behavior occurs during
>> these cases. Additionally it adds an additional exception type to throw when
>> an invalid argument index is observed.
>>
>> A CSR will be required for this PR.
>
> Ian Graves has updated the pull request incrementally with one additional
> commit since the last revision:
>
> Exception message tweak
Marked as reviewed by rriggs (Reviewer).
src/java.base/share/classes/java/util/IllegalFormatArgumentIndexException.java
line 66:
> 64:
> 65: if (index == Integer.MIN_VALUE) {
> 66: return "Format argument index: (unrepresentable as int)";
Perhaps "(not representable as int)" is more readable.
-------------
PR: https://git.openjdk.java.net/jdk/pull/516