+1

* the test needs a bugid before pushing.


On 7/18/17, 7:16 AM, Claes Redestad wrote:
Hi Sherman,

On 07/14/2017 07:42 PM, Xueming Shen wrote:
Hi Claes,

The change looks fine.

The only concern is that, in theory, it appears we no longer have any "check" to guarantee that all "alias" names defined for these 3 charsets indeed follow the spec? The consequence of this is that someone can obtain the alias name from the specific "charset", and then that name will fail for Charset.forName().

I doubt we currently have a regression test to catch this.

The possibility that we are going to add a new alias for these 3 is low, but either
a regress test (if we don't have one already) or a comment at

 jdk/make/data/charsetmapping/charsets

(for each of the def, to remind a possible change) might help to prevent this
from happening?

added regression sanity test, and reverted to use identity checks as discussed
elsewhere (if we are to clean this up to use equals everywhere,
better do it consistently throughout the code and ensure this works as
expected with no performance loss):

http://cr.openjdk.java.net/~redestad/8184665/jdk.02/

-Sherman

PS: The next step is to remove these 3 from the sun.nio.cs.StandardCharsets? :-)

The static initializer for sun.nio.cs.StandardCharsets is loading a bunch of Strings into the string table but only executes around 1.5k bytecode, so splitting these always-loaded Charsets out might be a small footprint gain, but a very tiny startup
win at best.

/Claes

Reply via email to