String concatenation tweaks

Aleksey Shipilev aleksey.shipilev at
Thu Jun 4 09:21:49 UTC 2015

On 06/02/2015 05:39 AM, John Rose wrote:
> On Jun 1, 2015, at 7:52 AM, Aleksey Shipilev <aleksey.shipilev at> wrote:
> Void is the convention used by MH.invoke and it works here too. The only ref of that type is null. 

Good, thanks! Using Void.class now.

>> (Note to self: current prototype collapses the types *after* checking
>> with cache, need to fix that possible class leak, thanks!
> Yep. A late asType call will fix things up. We can optimize the pattern more if needed. 

Plus, we need to adjust the MethodType accordingly, since it is a key in
our cache. Done as well.

I have submitted a draft JEP for this:

Please take a look, and we will submit it.

The patches, notes, benchmarks are moved under the appropriate bug ID:

The patches now have a complete support in javac (implemented the "s +=
<string> concat part as well), passes jtreg and other smoke tests [*],
plus newly developed regression tests. I think this gives us enough
confidence with going forward.


[*] There are few regression tests that start to fail with the change:
one seems Indify-specific, and another is a javac-specific regression
test. Current patches work that around, and we will probably have to fix
these properly before integration.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <>

More information about the compiler-dev mailing list