 patch's original function definition. PATCH-DEFINITION is as
 returned by `el-patch--select-patch'."
   (interactive (list (el-patch--select-patch)))
+  (setq el-patch--feature nil)
   (let* ((name (cadr patch-definition))
-         (actual-definition (el-patch--find-function name))
          (expected-definition (el-patch--resolve-definition
-                               patch-definition nil)))
+                               patch-definition nil))
+         (actual-definition (el-patch--find-function name)))
     (el-patch--ediff-forms
      "*el-patch actual*" actual-definition
      "*el-patch expected*" expected-definition)

Return nil if such a definition cannot be found. (That would
happen if the definition were generated dynamically, or the
function is defined in the C code.)"
  (let* ((buffer-point (ignore-errors
                         ;; Just in case we get an error because the
                         ;; function is defined in the C code, we
                         ;; ignore it and return nil.
                         (save-excursion
                           ;; This horrifying bit of hackery
                           ;; prevents `find-function-noselect' from
                           ;; returning an existing buffer, so that
                           ;; later on when we jump to the
                           ;; definition, we don't temporarily
                           ;; scroll the window if the definition
                           ;; happens to be in the *current* buffer.
                           (prog2
                               (advice-add #'get-file-buffer :override
                                           #'ignore)
                               (find-function-noselect name 'lisp-only)
                             (advice-remove #'get-file-buffer #'ignore)))))
         (defun-buffer (car buffer-point))
         (defun-point (cdr buffer-point)))
    (and defun-buffer
         defun-point
         (with-current-buffer defun-buffer
           (save-excursion
             (goto-char defun-point)
             (read defun-buffer))))))

;;;###autoload
(defun el-patch-validate (patch-definition &optional nomsg)


See also `el-patch-validate-all'."
  (interactive (list (el-patch--select-patch)))
  (setq el-patch--feature nil)
  (let* ((name (cadr patch-definition))
         (expected-definition (el-patch--resolve-definition
                               patch-definition nil))
         (actual-definition (el-patch--find-function name)))
    (cond
     ((not actual-definition)
