File "t02bad.ml", line 10, characters 0-61: 10 | module rec A : sig type t = B.t end = struct type t = B.t end ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error: The definition of A.t contains a cycle: B.t = A.t, A.t = B.t, B.t = A.t