[lworld] RFR: 8244711: [lworld] Javac needs to tweak checks for interface implementation by an inline type.

Srikanth Adayapalam sadayapalam at openjdk.java.net
Mon May 11 13:01:30 UTC 2020

On Mon, 11 May 2020 12:06:24 GMT, Jim Laskey <github.com+63007666+JimLaskey at openjdk.org> wrote:

> Since asSuper is always called with a true checkReferenceProjection, why not drop the argument and rename as
> asSuperWithProjection (or some such). If you introduce a need later for the false case then you can just call asSuper
> directly. I.E., argument seems redundant.

I agree this looks strange. But rather than asSuperWithProjection, I have reworked it along the lines of existing
variants (isSubtype and friends) by making the original asSuper to be a three argument one and all existing calls to
the two args asSuper to be routed to the three arg full bodied asSuper with a 3rd argument value of false.

> test/langtools/tools/javac/valhalla/lworld-values/AutoCloseableTest.java line 57:
>> 56:     }
>> 57: }
> Missing last newline.

Will fix. Thanks

> test/langtools/tools/javac/valhalla/lworld-values/ConflictingSuperInterfaceTest.java line 15:
>> 14:     }
>> 15: }
> Missing last newline.

Will fix, thanks!

> test/langtools/tools/javac/valhalla/lworld-values/ConflictingSuperInterfaceTest.java line 1:
>> 1: /*
>> 2:  * @test /nodynamiccopyright/
> Missing Copyright.

This is intentional. In javac's negative tests we don't add a copyright, but a tag that says nodynamiccopyright.

I have forgotten the reason we do that, but that is the right behavior :)


PR: https://git.openjdk.java.net/valhalla/pull/41

More information about the valhalla-dev mailing list