`sig
module type Non_immediate = sig type t end
module type Immediate = sig type t [@@immediate] end
module Make :
(Immediate : Immediate) (Non_immediate : Non_immediate) ->
sig
type t [@@immediate64]
type 'a repr =
Immediate : Sys.Immediate64.Immediate.t Sys.Immediate64.Make.repr
| Non_immediate :
Sys.Immediate64.Non_immediate.t Sys.Immediate64.Make.repr
val repr : Sys.Immediate64.Make.t Sys.Immediate64.Make.repr
end
end`