- ;; Figure out which kind of "=" this is.
- ;; The idea is to look backward for the first occurrence of a token that
- ;; requires a definitional "=" and then see if there's such a definitional
- ;; equal between that token and ourselves (in which case we're not
- ;; a definitional = ourselves).
- ;; The "search for =" is naive and will match "=>" and "<=", but it turns
- ;; out to be OK in practice because such tokens very rarely (if ever) appear
- ;; between the =-starter and the corresponding definitional equal.
- ;; One known problem case is code like:
- ;; "functor foo (structure s : S) where type t = s.t ="
- ;; where the "type t = s.t" is mistaken for a type definition.