Original bug ID: 7458
Reporter: @yallop
Assigned to: @garrigue
Status: assigned (set by @damiendoligez on 2017-02-23T16:03:12Z)
Resolution: open
Priority: normal
Severity: feature
Target version: later
Category: typing
Related to: #4791 #6634
Monitored by: @gasche @hcarty
Bug description
Type aliases declared with nonrec are printed with nonrec, as expected:
# module type S = sig type t module M : sig type nonrec t = t end end;;
module type S = sig type t module M : sig type nonrec t = t end end
but type aliases resulting from substitution are printed incorrectly:
# module type S = sig type t module M : sig type t end with type t = t end;;
module type S = sig type t module M : sig type t = t end end