================================================================================
Comment with LF line endings
================================================================================

(mod (A)
  ; a comment
  (f A)
)

--------------------------------------------------------------------------------

(source_file
  (list
    (symbol)
    (list
      (symbol))
    (comment)
    (list
      (symbol)
      (symbol))))

================================================================================
Comment with CRLF line endings
================================================================================

(mod (A)
  ; a comment
  (f A)
)

--------------------------------------------------------------------------------

(source_file
  (list
    (symbol)
    (list
      (symbol))
    (comment)
    (list
      (symbol)
      (symbol))))

================================================================================
Comment terminated by EOF with no trailing newline
================================================================================

(mod (A) (f A))
; trailing comment at EOF
--------------------------------------------------------------------------------

(source_file
  (list
    (symbol)
    (list
      (symbol))
    (list
      (symbol)
      (symbol)))
  (comment))

================================================================================
Double-semicolon doc comments between definitions
================================================================================

(
  ;; the tree hash of a curried function
  (defun-inline sha256_one _noargs (f (f constant_tree)))
)

--------------------------------------------------------------------------------

(source_file
  (list
    (comment)
    (list
      (symbol)
      (symbol)
      (symbol)
      (list
        (symbol)
        (list
          (symbol)
          (symbol))))))
