Integrated: 8332507: compilation result depends on compilation order
Vicente Romero
vromero at openjdk.org
Fri May 31 17:38:08 UTC 2024
On Fri, 24 May 2024 18:59:56 GMT, Vicente Romero <vromero at openjdk.org> wrote:
> Wildcards and separate compilation haven't been friends since like: forever. Javac has had a long standing issue of not being able to restore wildcard bounds when they are read from the classfile. Part of this is due to a restriction of not reading another class file while a given class file is being read. Without breaking this restriction we can "wait" until a class symbol is completed from a class file to have access to richer information and being able to set the right bounds to wildcards. The fix seems simple enough. Basically the proposal is to register listeners that will be invoked once a given class symbol is completely read from a class file. This tactic has been used in type inference and other areas of the compiler where another layer of indirection has been a must to fix similar problems.
>
> It will be a great pleasure if this proposal can be the solution to this long standing issue,
>
> TIA
This pull request has now been integrated.
Changeset: e650bdf4
Author: Vicente Romero <vromero at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/e650bdf4654a0459bb2af95f08ba42ca870642d4
Stats: 229 lines in 2 files changed: 227 ins; 0 del; 2 mod
8332507: compilation result depends on compilation order
Reviewed-by: mcimadamore
-------------
PR: https://git.openjdk.org/jdk/pull/19400
More information about the compiler-dev
mailing list