if (originalField.declaringClass instanceof SourceTypeBinding) {
SourceTypeBinding sourceType = (SourceTypeBinding) originalField.declaringClass;
if (sourceType.scope != null) {
TypeDeclaration typeDecl = sourceType.scope.referenceContext;
FieldDeclaration fieldDecl = typeDecl.declarationOf(originalField);
fieldDecl.resolve(originalField.isStatic() //side effect on binding
? typeDecl.staticInitializerScope
: typeDecl.initializerScope);
fieldConstant = originalField.constant();
} else {
fieldConstant = Constant.NotAConstant; // shouldn't occur per construction (paranoid null check)