sig
  val phys_equal_first :
    Camlp4.PreCast.Ast.expr ->
    Camlp4.PreCast.Ast.expr ->
    Camlp4.PreCast.Ast.expr -> Camlp4.PreCast.Ast.expr
  val chain_if : Camlp4.PreCast.Ast.expr list -> Camlp4.PreCast.Ast.expr
  val base_types : string list
  val compare_named : Camlp4.PreCast.Ast.ident -> Camlp4.PreCast.Ast.expr
  val tp_name : string -> string
  val compare_applied :
    Camlp4.PreCast.Ast.ctyp ->
    Camlp4.PreCast.Ast.expr ->
    Camlp4.PreCast.Ast.expr -> Camlp4.PreCast.Ast.expr
  val compare_list :
    Camlp4.PreCast.Ast.ctyp ->
    Camlp4.PreCast.Ast.expr ->
    Camlp4.PreCast.Ast.expr -> Camlp4.PreCast.Ast.expr
  val compare_array :
    Camlp4.PreCast.Ast.ctyp ->
    Camlp4.PreCast.Ast.expr ->
    Camlp4.PreCast.Ast.expr -> Camlp4.PreCast.Ast.expr
  val compare_of_tuple :
    Camlp4.PreCast.Ast.ctyp ->
    Camlp4.PreCast.Ast.expr ->
    Camlp4.PreCast.Ast.expr -> Camlp4.PreCast.Ast.expr
  val compare_variant :
    Camlp4.PreCast.Ast.ctyp ->
    Camlp4.PreCast.Ast.expr ->
    Camlp4.PreCast.Ast.expr -> Camlp4.PreCast.Ast.expr
  val branches_of_sum :
    rightmost:bool ->
    Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.match_case
  val compare_sum :
    Camlp4.PreCast.Ast.ctyp ->
    Camlp4.PreCast.Ast.expr ->
    Camlp4.PreCast.Ast.expr -> Camlp4.PreCast.Ast.expr
  val compare_of_ty :
    Camlp4.PreCast.Ast.ctyp ->
    Camlp4.PreCast.Ast.expr ->
    Camlp4.PreCast.Ast.expr -> Camlp4.PreCast.Ast.expr
  val compare_of_ty_fun :
    type_constraint:bool ->
    Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.expr
  val compare_of_record :
    Camlp4.PreCast.Ast.ctyp ->
    Camlp4.PreCast.Ast.expr ->
    Camlp4.PreCast.Ast.expr -> Camlp4.PreCast.Ast.expr
  val compare_of_nil :
    Camlp4.PreCast.Ast.loc ->
    string ->
    Camlp4.PreCast.Ast.expr ->
    Camlp4.PreCast.Ast.expr -> Camlp4.PreCast.Ast.expr
  val scheme_of_td :
    Camlp4.PreCast.Ast.loc ->
    string -> Camlp4.PreCast.Ast.ctyp list -> Camlp4.PreCast.Ast.ctyp
  val compare_of_td :
    Camlp4.PreCast.Ast.loc ->
    string ->
    Camlp4.PreCast.Ast.ctyp list ->
    Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.binding
  val compare_of_tds : Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.binding
  val compare_of :
    bool -> Camlp4.PreCast.Ast.ctyp -> Camlp4.PreCast.Ast.str_item
end