Bug 39023 Create static field quick fix creates an instance field [quick fix]
When referencing a class field that doesn't exist, the quick fix to 'create field in type...' creates an instance field, not a static field. e.g. Open quick fix on reference Foo.x when x doesn't exist creates private [type] x; rather than private static [type] x;
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/NewVariableCompletionProposal.java
SimpleName node= fOriginalNode;
		BodyDeclaration decl= ASTResolving.findParentBodyDeclaration(node);
		if (decl instanceof MethodDeclaration || decl instanceof Initializer) {
			ASTRewrite rewrite= new ASTRewrite(decl);
					
			ASTNode parent= node.getParent();
			if (parent.getNodeType() == ASTNode.ASSIGNMENT) {
				Assignment assignment= (Assignment) parent;
				if (node.equals(assignment.getLeftHandSide())) {
					int parentParentKind= parent.getParent().getNodeType();
					if (parentParentKind == ASTNode.EXPRESSION_STATEMENT) {
						
						
						VariableDeclarationFragment newDeclFrag= ast.newVariableDeclarationFragment();
						VariableDeclarationStatement newDecl= ast.newVariableDeclarationStatement(newDeclFrag);
						newDecl.setType(evaluateVariableType(ast));
						
						Expression placeholder= (Expression) rewrite.createCopy(assignment.getRightHandSide());
						newDeclFrag.setInitializer(placeholder);
						newDeclFrag.setName(ast.newSimpleName(node.getIdentifier()));
						rewrite.markAsReplaced(assignment.getParent(), newDecl);
						
						markAsLinked(rewrite, newDeclFrag.getName(), true, KEY_NAME);
						markAsLinked(rewrite, newDecl.getType(), false, KEY_TYPE);
						return rewrite;
					} else if (parentParentKind == ASTNode.FOR_STATEMENT) {
						
						
						ForStatement forStatement= (ForStatement) parent.getParent();
						if (forStatement.initializers().size() == 1 && assignment.equals(forStatement.initializers().get(0))) {