Skip to content

Native version fails to format record patterns in switches if the first nested pattern is final #1257

@Ontonator

Description

@Ontonator

The following code fails to format when using the native version of the formatter. (The JVM version works fine.)

class Main {
    void test() {
        switch (test) {
            case Test(final var x, final var y) -> {}
        }
    }
}

On the other hand, both of these examples are accepted:

class Main {
    void test() {
        switch (test) {
            case Test(var x, final var y) -> {}
        }
    }
}
class Main {
    void test() {
        if (test instanceof Test(final var x, final var y)) {}
    }
}

Tested on version 1.27.0.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions