           nil
           "Not in `ar/org-iter-with-org-file' block"))
 
-(defun ar/org-iter-with-org-file (org-file-path &rest body)
+(defmacro ar/org-iter-with-org-file (org-file-path &rest body)
   "With ORG-FILE-PATH, execute BODY."
-  (let (ar/org-iter--with-block)
-   (ar/file-with-current-file org-file-path
-    body)))
+  `(let ((ar/org-iter--with-block t))
+     (ar/file-with-current-file ,org-file-path
+       ,@body)))
 
 (defun ar/org-iter-heading-1-markers ()
   "Get heading 1 markers.


(ert-deftest ar/org-iter-for-each-heading-1-link-test ()
  (with-temp-buffer
    (org-mode)
    (insert "#+TITLE: This is a test\n")
    (insert "* Heading 1\n")


(ert-deftest ar/org-iter-for-each-link-test ()
  (with-temp-buffer
    ;; TODO: Remove org-mode.
    (org-mode)
    (insert "#+TITLE: This is a test\n")
    (insert "* Heading 1\n")
