Re: RFR: 8253459: Formatter treats index, width and precision > Integer.MAX_VALUE incorrectly [v12]
On Thu, 19 Nov 2020 00:38:49 GMT, Stuart Marks wrote: >> Ian Graves has updated the pull request incrementally with one additional >> commit since the last revision: >> >> 'unrepresentable' to 'not representable' > > test/jdk/java/util/IllegalFormatException/TestFormatSpecifierBounds.java line > 48: > >> 46: String r = String.format("%2147483648$s", "A", "B"); >> 47: }); >> 48: //assertEquals(e.getMessage(), "Illegal format argument index = >> " + Integer.MIN_VALUE); > > Extraneous comment? So it would seem! - PR: https://git.openjdk.java.net/jdk/pull/516
Re: RFR: 8253459: Formatter treats index, width and precision > Integer.MAX_VALUE incorrectly [v12]
On Wed, 18 Nov 2020 22:57:19 GMT, Ian Graves 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: > > 'unrepresentable' to 'not representable' Marked as reviewed by smarks (Reviewer). test/jdk/java/util/IllegalFormatException/TestFormatSpecifierBounds.java line 48: > 46: String r = String.format("%2147483648$s", "A", "B"); > 47: }); > 48: //assertEquals(e.getMessage(), "Illegal format argument index = " > + Integer.MIN_VALUE); Extraneous comment? - PR: https://git.openjdk.java.net/jdk/pull/516
Re: RFR: 8253459: Formatter treats index, width and precision > Integer.MAX_VALUE incorrectly [v12]
On Wed, 18 Nov 2020 22:57:19 GMT, Ian Graves 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: > > 'unrepresentable' to 'not representable' Marked as reviewed by rriggs (Reviewer). - PR: https://git.openjdk.java.net/jdk/pull/516
Re: RFR: 8253459: Formatter treats index, width and precision > Integer.MAX_VALUE incorrectly [v12]
> 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: 'unrepresentable' to 'not representable' - Changes: - all: https://git.openjdk.java.net/jdk/pull/516/files - new: https://git.openjdk.java.net/jdk/pull/516/files/36e8d3a3..223282d4 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk=516=11 - incr: https://webrevs.openjdk.java.net/?repo=jdk=516=10-11 Stats: 2 lines in 2 files changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.java.net/jdk/pull/516.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/516/head:pull/516 PR: https://git.openjdk.java.net/jdk/pull/516