File "t09bad.ml", lines 10-11, characters 0-44:
10 | module rec A : sig type 'a t = 'a B.t end
11 |              = struct type 'a t = 'a B.t end
Error: This recursive type is not regular.
       The type constructor "A.t" is defined as
         type "'a A.t"
       but it is used as
         "'a array A.t"
       after the following expansion(s):
         "'a B.t" = "< m : 'a list A.t; n : 'a array A.t >",
         "< m : 'a list A.t; n : 'a array A.t >" contains "'a array A.t"
       All uses need to match the definition for the recursive type to be regular.
