Skip to content

A final var's accessors aren't final #10835

Closed
@dwijnand

Description

@dwijnand

Minimized code

class A {
  final var x = 1
}

Output

$ javap A
Compiled from "A.scala"
public class A {
  public A();
  public int x();
  public void x_$eq(int);
}

Expectation

Compared to Scala 2 (2.13.4):

$ javap A
Compiled from "A.scala"
public class A {
  public final int x();
  public final void x_$eq(int);
  public A();
}

Found this while testing how well MiMa works with the Scala 3 compiler, and I don't consider it a particularly critical issue.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions