FieldBinding originalField = original();
if (originalField.declaringClass instanceof SourceTypeBinding) {
SourceTypeBinding sourceType = (SourceTypeBinding) originalField.declaringClass;
if (sourceType.scope != null) {
TypeDeclaration typeDecl = sourceType.scope.referenceContext;
FieldDeclaration fieldDecl = typeDecl.declarationOf(originalField);
MethodScope initScope = originalField.isStatic() ? typeDecl.staticInitializerScope : typeDecl.initializerScope;
boolean old = initScope.insideTypeAnnotation;
try {
initScope.insideTypeAnnotation = false;
fieldDecl.resolve(initScope); //side effect on binding