--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Annotate.java Mon Oct 13 11:21:51 2014 -0400
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Annotate.java Mon Oct 13 17:22:47 2014 +0200
@@ -315,8 +315,10 @@
isError = true;
}
List<JCExpression> args = a.args;
+ boolean elidedValue = false;
if (args.length() == 1 && !args.head.hasTag(ASSIGN)) {
// special case: elided "value=" assumed
+ elidedValue = true;
args.head = make.at(args.head.pos).
Assign(make.Ident(names.value), args.head);
}
@@ -336,7 +338,7 @@
continue;
}
JCIdent left = (JCIdent)assign.lhs;
- Symbol method = rs.resolveQualifiedMethod(assign.rhs.pos(),
+ Symbol method = rs.resolveQualifiedMethod(elidedValue ? assign.rhs.pos() : left.pos(),
env,
a.type,
left.name,