On Sun, 11 Jan 2026 03:13:16 GMT, Vicente Romero <[email protected]> wrote:

> do not generate null checks for record patterns

src/jdk.compiler/share/classes/com/sun/tools/javac/comp/NullChecksWriter.java 
line 170:

> 168:     public void visitLetExpr(LetExpr tree) {
> 169:         // don't recurse inside let expressions, they are backend 
> artifacts
> 170:         result = tree;

offline suggestion from Jan Lahoda:

this code will skip all let expressions which is too broad, as let expressions 
are generated also by switch expressions but could contain user code. For 
example there is no null check generated in this case:

void main() {
    int i = switch (new Object()) {
        default -> {
            Object obj = null;
            Object! nonNull = obj;
            yield 0;
        }
    };
}

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

PR Review Comment: 
https://git.openjdk.org/valhalla/pull/1884#discussion_r2687884486

Reply via email to