langtools/test/tools/javac/DefiniteAssignment/DefAssignAfterThis_1.java
author jlahoda
Thu, 09 Oct 2014 10:08:52 +0200
changeset 26993 513b2cae81c3
parent 25308 190cac01c316
permissions -rw-r--r--
8057652: Request to improve error messages for labeled declarations Summary: Parse labeled statements as block statements to improve error recovery for labeled declarations; related cleanup. Reviewed-by: jjg
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10
06bc494ca11e Initial load
duke
parents:
diff changeset
     1
/*
25308
190cac01c316 8044236: create .out files for DefiniteAssignment tests in tools/javac dir
sogoel
parents: 5520
diff changeset
     2
 * @test /nodynamiccopyright/
10
06bc494ca11e Initial load
duke
parents:
diff changeset
     3
 * @bug 4087865 4277291
06bc494ca11e Initial load
duke
parents:
diff changeset
     4
 * @summary Verify definite assignment of blank finals after 'this(...)'
06bc494ca11e Initial load
duke
parents:
diff changeset
     5
 * @author William Maddox (maddox)
06bc494ca11e Initial load
duke
parents:
diff changeset
     6
 *
25308
190cac01c316 8044236: create .out files for DefiniteAssignment tests in tools/javac dir
sogoel
parents: 5520
diff changeset
     7
 * @compile/fail/ref=DefAssignAfterThis_1.out -XDrawDiagnostics  DefAssignAfterThis_1.java
10
06bc494ca11e Initial load
duke
parents:
diff changeset
     8
 */
06bc494ca11e Initial load
duke
parents:
diff changeset
     9
06bc494ca11e Initial load
duke
parents:
diff changeset
    10
public class DefAssignAfterThis_1 {
06bc494ca11e Initial load
duke
parents:
diff changeset
    11
06bc494ca11e Initial load
duke
parents:
diff changeset
    12
    final int x;
06bc494ca11e Initial load
duke
parents:
diff changeset
    13
06bc494ca11e Initial load
duke
parents:
diff changeset
    14
    DefAssignAfterThis_1() {
06bc494ca11e Initial load
duke
parents:
diff changeset
    15
        this(0);
06bc494ca11e Initial load
duke
parents:
diff changeset
    16
        x = 1;          // ERROR -- duplicate assignment to blank final
06bc494ca11e Initial load
duke
parents:
diff changeset
    17
    }
06bc494ca11e Initial load
duke
parents:
diff changeset
    18
06bc494ca11e Initial load
duke
parents:
diff changeset
    19
    DefAssignAfterThis_1(int i) {
06bc494ca11e Initial load
duke
parents:
diff changeset
    20
        x = 1;
06bc494ca11e Initial load
duke
parents:
diff changeset
    21
    }
06bc494ca11e Initial load
duke
parents:
diff changeset
    22
}