Bug 32917 the "Change to Constructor" QF deletes my code.
RC1: - create class C - create method "int C()" int C() { return 19*19; } - use QF to "Change method to constructor" Observe: return statement is removed - add "if (true) return 123;" as the first line of method C() - use QF again Observe: no return statement is removed.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/ReturnTypeSubProcessor.java
String label= CorrectionMessages.getString("ReturnTypeSubProcessor.changereturnstatement.description");					 
					ASTRewriteCorrectionProposal proposal= new ASTRewriteCorrectionProposal(label, cu, rewrite, 3, image);
					proposal.ensureNoModifications();
					proposals.add(proposal);
				}
 			} else {
				Block block= methodDecl.getBody();
				if (block == null) {
					return;
				}
				AST ast= methodDecl.getAST();
				ASTRewrite rewrite= new ASTRewrite(methodDecl);
				
				List statements= block.statements();
				ReturnStatement returnStatement= ast.newReturnStatement();
				returnStatement.setExpression(ASTResolving.getInitExpression(methodDecl.getReturnType(), methodDecl.getExtraDimensions()));
				statements.add(returnStatement);
				rewrite.markAsInserted(returnStatement);
				
				Image image= JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_CHANGE);
				String label= CorrectionMessages.getString("ReturnTypeSubProcessor.addreturnstatement.description"); 
				ASTRewriteCorrectionProposal proposal= new ASTRewriteCorrectionProposal(label, cu, rewrite, 3, image);
				proposal.ensureNoModifications();
				proposals.add(proposal);
			} 
		}
	
	}
}