 (require 'dash)
 (require 'cl-lib)
 (require 'flycheck)
+
+;;; Compatibility
+
+(defmacro fstar-assert (&rest args)
+  "Call `assert' on ARGS, if available."
+  (declare (debug t))
+  `(when (fboundp 'assert)
+     (assert ,@args)))
 
 ;;; Group
 


(defun fstar-subp-pop-overlay (overlay)
  "Remove overlay OVERLAY and issue the corresponding #pop command."
  (assert (not fstar-subp--busy-now))
  (process-send-string fstar-subp--process fstar-subp--cancel)
  (delete-overlay overlay))



(defun fstar-setup-prettify ()
  "Setup prettify-symbols for use with F*."
  (when (and (boundp 'prettify-symbols-alist)
             (fboundp 'prettify-symbols-mode))
    (setq-local prettify-symbols-alist (append fstar-symbols-alist
                                               prettify-symbols-alist))
    (prettify-symbols-mode)))

;;; Font-Lock

