RFR: 8236842: Surprising 'multiple elements' behaviour from getTypeElement when cross-compiling with --release [v3]
Jan Lahoda
jlahoda at openjdk.java.net
Wed Sep 23 11:38:33 UTC 2020
> Unqualified Elements.getTypeElement(CharSequence) and Elements.getPackageElement(CharSequence) search for elements
> across all modules in the module graph, and only return a value when they find exactly one element. This is
> troublesome, as an element (uniquely) visible from a root module may be "hidden" by an element that is not visible from
> any root module (i.e. is internal to some module that is not in the root module set). The idea proposed here is that
> these unqualified methods would first look for elements visible from the root modules, and would search the internals
> of other modules only if nothing would be found in the first round. The draft of the corresponding CSR is here:
> https://bugs.openjdk.java.net/browse/JDK-8253168.
Jan Lahoda has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev
excludes the unrelated changes brought in by the merge/rebase. The pull request contains four additional commits since
the last revision:
- Linking to root and all modules definition.
- Merge branch 'master' into JDK-8236842
- Reflecting review comments - improving javadoc, avoid repeated search of modules that have already been searched.
- 8253168: Surprising 'multiple elements' behaviour from getTypeElement when cross-compiling with --release
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/200/files
- new: https://git.openjdk.java.net/jdk/pull/200/files/3eb2c0bd..33ca56ed
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=200&range=02
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=200&range=01-02
Stats: 12332 lines in 424 files changed: 6792 ins; 4409 del; 1131 mod
Patch: https://git.openjdk.java.net/jdk/pull/200.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/200/head:pull/200
PR: https://git.openjdk.java.net/jdk/pull/200
More information about the compiler-dev
mailing list