functor (T1 : sig type t end->
  functor (T2 : sig type t end-> sig type t = T1.t * Tuple.T2.t end