On Wed, 17 Dec 2025 13:43:35 GMT, Marius Hanl <[email protected]> wrote:

> When compiling JavaFX with Java 25, a new warning appears. This warning will 
> result in a compilation failure because warnings are treated as error 
> (`-Werror`).
> 
> The following warning appears:
> 
> 
>> Task :controls:compileJava
> C:..\jfx\modules\javafx.controls\src\main\java\javafx\scene\control\SplitPane.java:320:
>  warning: [identity] use of a value-based class with an operation that 
> expects reliable identity
>     private final WeakHashMap<Integer, Double> dividerCache = new 
> WeakHashMap<>();
>                                                                              ^
> C:..\jfx\modules\javafx.controls\src\main\java\javafx\scene\control\SplitPane.java:320:
>  warning: [identity] use of a value-based class with an operation that 
> expects reliable identity
>     private final WeakHashMap<Integer, Double> dividerCache = new 
> WeakHashMap<>();
>                              ^
> error: warnings found and -Werror specified
> 1 error
> 2 warnings
> 
>> Task :controls:compileJava FAILED
> 
> 
> The warning makes sense: We use a `WeakHashMap` with the `Integer` class. So 
> the `Integer` values are saved as `WeakRef` inside the `Map`. This makes no 
> sense and is rightfully a warning.

Interestingly enough, I do see this warning with a simple test program (or with 
jshell). I wonder why we aren't seeing it in our GHA builds or in production.

-------------

PR Comment: https://git.openjdk.org/jfx/pull/2010#issuecomment-3665800667

Reply via email to