addLinkedModeProposal(RETURN_EXPRESSION_KEY, curr.getName());
addLinkedPositionProposal(RETURN_EXPRESSION_KEY, curr.getName(), null);
	private Expression evaluateReturnExpressions(AST ast, ITypeBinding returnBinding, int returnOffset) {		CompilationUnit root= (CompilationUnit) fMethodDecl.getRoot();			Expression result= null;		if (returnBinding != null) {			ScopeAnalyzer analyzer= new ScopeAnalyzer(root);			IBinding[] bindings= analyzer.getDeclarationsInScope(returnOffset, ScopeAnalyzer.VARIABLES | ScopeAnalyzer.CHECK_VISIBILITY );			for (int i= 0; i < bindings.length; i++) {				IVariableBinding curr= (IVariableBinding) bindings[i];				ITypeBinding type= curr.getType();				if (type != null && TypeRules.canAssign(type, returnBinding) && testModifier(curr)) {					if (result == null) {						result= ast.newSimpleName(curr.getName());					}					addLinkedModeProposal(RETURN_EXPRESSION_KEY, curr.getName());				}			}		}		Expression defaultExpression= ASTNodeFactory.newDefaultExpression(ast, fMethodDecl.getReturnType(), fMethodDecl.getExtraDimensions());		addLinkedModeProposal(RETURN_EXPRESSION_KEY, ASTNodes.asString(defaultExpression));		if (result == null) {			return defaultExpression;		}		return result;	}