On Sat, 25 Feb 2023 04:05:29 GMT, Vicente Romero <vrom...@openjdk.org> wrote:
>> Archie L. Cobbs has updated the pull request incrementally with one >> additional commit since the last revision: >> >> Fix typo in one comment and clarify another. > > src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java line 2736: > >> 2734: .sorted(Comparator.comparing(e -> e.getKey().toString())) >> 2735: .map(Map.Entry::getValue) >> 2736: .peek(Collections::reverse) // seems to help >> warning ordering > > not sure about reversing the order here, it seems to me that if the order is > reversed then the warning is shown in the first occurrence of a method > instead of in the second which is the offending one. So for example for this > code: > > > interface I1 { > void foo(Consumer<Integer> c); > void foo(IntConsumer c); > } > > the warning is shown for the first method when I think it should be shown for > the second which is the one introducing the ambiguity > > EDIT, after your last commit, this comment now applies to: > `methodGroups.forEach(Collections::reverse);` The reversing was originally done in order to maintain consistency with the existing regression test outputs. But you are right - it results in visiting the methods backwards. Fixed in e25ceced163. ------------- PR: https://git.openjdk.org/jdk/pull/12645