New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Destructive substitution on classes produces unrepresentable module type #6654
Comments
Comment author: @garrigue Yet another example of signature that cannot be parsed/typed. |
This issue has turned into a bug in
|
This suggests that maybe we should be more proactive in adding examples for known issues in the testsuite, so that we notice when the behavior changes (in good or bad ways). |
This issue has been open one year with no activity. Consequently, it is being marked with the "stale" label. What this means is that the issue will be automatically closed in 30 days unless more comments are added or the "stale" label is removed. Comments that provide new information on the issue are especially welcome: is it still reproducible? did it appear in other contexts? how critical is it? etc. |
There is a real bug now. Appeared in 4.08. |
This issue has been open one year with no activity. Consequently, it is being marked with the "stale" label. What this means is that the issue will be automatically closed in 30 days unless more comments are added or the "stale" label is removed. Comments that provide new information on the issue are especially welcome: is it still reproducible? did it appear in other contexts? how critical is it? etc. |
Fixed in 4.13 by #10401 : # module type T = S with type c := d;; now fails with
|
Original bug ID: 6654
Reporter: @lpw25
Status: confirmed (set by @damiendoligez on 2015-01-07T18:57:14Z)
Resolution: open
Priority: normal
Severity: feature
Target version: later
Category: typing
Related to: #4791
Monitored by: @hcarty
Bug description
If you apply destructive substitution to a class or class type the type system handles it correctly, but the resulting module type cannot be represented by OCaml's syntax:
The text was updated successfully, but these errors were encountered: