diff --git a/framework/src/main/java/org/checkerframework/common/util/count/report/ReportVisitor.java b/framework/src/main/java/org/checkerframework/common/util/count/report/ReportVisitor.java index 60d877b1c37..3cc0af509c8 100644 --- a/framework/src/main/java/org/checkerframework/common/util/count/report/ReportVisitor.java +++ b/framework/src/main/java/org/checkerframework/common/util/count/report/ReportVisitor.java @@ -23,7 +23,6 @@ import javax.lang.model.element.Modifier; import javax.lang.model.element.PackageElement; import javax.lang.model.element.TypeElement; -import javax.lang.model.element.VariableElement; import org.checkerframework.checker.nullness.qual.Nullable; import org.checkerframework.common.basetype.BaseAnnotatedTypeFactory; import org.checkerframework.common.basetype.BaseTypeChecker; @@ -213,7 +212,7 @@ public Void visitIdentifier(IdentifierTree tree, Void p) { @Override public Void visitAssignment(AssignmentTree tree, Void p) { - VariableElement member = (VariableElement) TreeUtils.elementFromUse(tree.getVariable()); + Element member = TreeUtils.elementFromUse(tree.getVariable()); boolean report = this.atypeFactory.getDeclAnnotation(member, ReportWrite.class) != null; if (report) { diff --git a/framework/tests/report/Accesses.java b/framework/tests/report/Accesses.java index 5c1a13c53d3..11309e8e0ef 100644 --- a/framework/tests/report/Accesses.java +++ b/framework/tests/report/Accesses.java @@ -59,4 +59,10 @@ void accessesMethod(Demo d) { // :: error: (methodcall) d.equals(d.foo(null)); } + + Object[] array = new Object[] {1, 2, 3}; + + void accessArray() { + array[0] = 1; + } }