 (defvar fstar--vernum nil
   "F*'s version number.")
 
-(defvar fstar--error-messages-use-absolute-linums nil
+(defvar fstar-compat--error-messages-use-absolute-linums nil
   "F* > 0.9.3.0-beta1 uses absolute line numbers in error messages.")
+
+(defvar fstar-compat--can-use-info nil
+  "F* >= 0.9.4.1 supports #info queries.")
 
 (defun fstar--init-compatibility-layer ()
   "Adjust compatibility settings based on `fstar-executable''s version number."

  "Issue a #info query for current point.
Results are displayed asynchronously, so this function returns
nil and the corresponding continuation calls `eldoc-message'."
  (when (fstar-subp-available-p)
    (fstar-subp--query (fstar-subp--info-query (point))
                  (apply-partially #'fstar-subp--info-continuation
                                   #'fstar-subp--eldoc-continuation (point)))

      (warn "Can't parse version number from %S" version-string)
      (setq fstar--vernum "unknown")))
  (let ((v (if (string-match-p "unknown" fstar--vernum) "1000" fstar--vernum)))
    (setq fstar-compat--error-messages-use-absolute-linums (version< "0.9.3.0-beta1" v))
    (setq fstar-compat--can-use-info (version<= "0.9.4.1" v))))

;;; Flycheck

