[lworld] Integrated: 8328839: [lworld] javac allows super constructor invocations before all fields have been initialized

Vicente Romero vromero at openjdk.org
Sat Mar 23 13:03:58 UTC 2024


this code is being accepted by javac:

value class V {
    int i;

    V() {
        super();
        i = 1;
    }
}

it should be rejected. Also, with value records, the implicit super call always ends up before the field stores. Reported by Tobias

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

Commit messages:
 - 8328839: [lworld] javac allows super constructor invocations before all fields have been initialized

Changes: https://git.openjdk.org/valhalla/pull/1061/files
  Webrev: https://webrevs.openjdk.org/?repo=valhalla&pr=1061&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8328839
  Stats: 206 lines in 8 files changed: 130 ins; 44 del; 32 mod
  Patch: https://git.openjdk.org/valhalla/pull/1061.diff
  Fetch: git fetch https://git.openjdk.org/valhalla.git pull/1061/head:pull/1061

PR: https://git.openjdk.org/valhalla/pull/1061



More information about the valhalla-dev mailing list