diff -r 30a415f8667f -r 6542933af8f4 src/share/classes/com/sun/tools/javac/code/Symbol.java --- a/src/share/classes/com/sun/tools/javac/code/Symbol.java Fri Aug 08 17:38:20 2008 +0100 +++ b/src/share/classes/com/sun/tools/javac/code/Symbol.java Fri Aug 08 17:43:24 2008 +0100 @@ -923,14 +923,7 @@ public Object call() { JavaFileObject source = log.useSource(env.toplevel.sourcefile); try { - // In order to catch self-references, we set - // the variable's declaration position to - // maximal possible value, effectively marking - // the variable as undefined. - int pos = VarSymbol.this.pos; - VarSymbol.this.pos = Position.MAXPOS; Type itype = attr.attribExpr(initializer, env, type); - VarSymbol.this.pos = pos; if (itype.constValue() != null) return attr.coerce(itype, type).constValue(); else