   (cond ((paredit-in-string-p)
          (newline))
         ((paredit-in-comment-p)
-         (if (paredit-handle-sexp-errors
-                 ;; Check for anything that would break structure in
-                 ;; the comment.
-                 (save-restriction
-                   (narrow-to-region (point) (point-at-eol))
-                   (save-excursion
-                     (while (< (point) (point-max))
-                       (forward-sexp)))
-                   t)
-               nil)
+         (if (paredit-region-ok-p (point) (point-at-eol))
              (progn (newline-and-indent) (indent-sexp))
              (indent-new-comment-line)))
         (t

With a prefix argument, disregard any imbalance."
  (interactive "r")
  (if (not current-prefix-arg)
      ;; Check that the region is balanced.
      (save-restriction
        (narrow-to-region beginning end)
        (if (fboundp 'check-parens)
            (check-parens)
            (save-excursion
              (goto-char (point-min))
              (while (not (eobp))
                (forward-sexp))))))
  (setq this-command 'kill-ring-save)
  (kill-ring-save beginning end))


  ;;    else an integer (the current comment nesting)
  (and (nth 4 (or state (paredit-current-parse-state)))
       t))

(defun paredit-point-at-sexp-boundary (n)
  (cond ((< n 0) (paredit-point-at-sexp-start))
