sig
  val leq : TypeCore.variance -> TypeCore.variance -> bool
  val analyze_data_types : TypeCore.env -> TypeCore.var list -> TypeCore.env
end