You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Original bug ID: 7929 Reporter:@trefis Assigned to:@trefis Status: assigned (set by @trefis on 2019-02-21T11:15:08Z) Resolution: open Priority: normal Severity: minor Version: 4.08.0+dev/beta1/beta2 Category: typing Monitored by:@nojb
The obvious fix is to replace the call to List.rev_map by List.rev followed by List.map.
Another potential option would be to introduce functions like class_declaration' (and others) which don't do the cleanup.
Use those in signature_item, and call cleanup_types only once at the end.
I'm going to experiment with that (unless someone jumps in to explain why it can't possibly be correct) and if it works I'll submit that as a fix instead of the obvious one.
The text was updated successfully, but these errors were encountered:
Another potential option would be to introduce functions like
class_declaration' (and others) which don't do the cleanup.
Use those in signature_item, and call cleanup_types only once at the end.
Original bug ID: 7929
Reporter: @trefis
Assigned to: @trefis
Status: assigned (set by @trefis on 2019-02-21T11:15:08Z)
Resolution: open
Priority: normal
Severity: minor
Version: 4.08.0+dev/beta1/beta2
Category: typing
Monitored by: @nojb
Bug description
Noticed when trying odoc on 4.08: ocaml/odoc#311
The regression is due to: 4d4fd52#diff-668ada709c086c9f2b56861bb1872a5dR461
It made the assumption that the order in which we apply the substitution doesn't matter.
Which is wrong in that case because of: https://github.com/ocaml/ocaml/blob/trunk/typing/subst.ml#L345
The obvious fix is to replace the call to List.rev_map by List.rev followed by List.map.
Another potential option would be to introduce functions like class_declaration' (and others) which don't do the cleanup.
Use those in signature_item, and call cleanup_types only once at the end.
I'm going to experiment with that (unless someone jumps in to explain why it can't possibly be correct) and if it works I'll submit that as a fix instead of the obvious one.
The text was updated successfully, but these errors were encountered: