adamc@849: structure M : sig
adamc@849:     type t
adamc@849:     val x : t
adamc@849: 
adamc@849:     structure S : sig
adamc@849:         type u = t
adamc@849: 
adamc@849:         val eq : eq u
adamc@849:     end
adamc@849: end = struct
adamc@849:     type t = int
adamc@849:     val x = 0
adamc@849: 
adamc@849:     structure S = struct
adamc@849:         type u = t
adamc@849: 
adamc@849:         val eq = _
adamc@849:     end
adamc@849: end
adamc@849: 
adamc@849: val y = M.x = M.x