functor (X : Named_intf.S2) ->
  sig
    val typerep_of_t :
      'a Std_internal.Typerep.t ->
      'b Std_internal.Typerep.t -> ('a, 'b) X.t Std_internal.Typerep.t
    val typename_of_t :
      'a Typename.t -> 'b Typename.t -> ('a, 'b) X.t Typename.t
  end