On Mon, 5 Oct 2020 22:23:56 GMT, Ian Graves <igra...@openjdk.org> 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.

Is the new exception type useful?  yes, it matches the previous pattern.
But it (and none of the IllegalFormatException subclasses) produce a readable 
message with the offending value. So the
developer will not see anything useful. The fine grained exceptions provide 
little value.

-------------

PR: https://git.openjdk.java.net/jdk/pull/516

Reply via email to