Warn on shady data constructor export
If a module defines a datatype and exports some, but not all, of the constructors, then modules importing the type will find it difficult to perform sensible and total case analyses. This is most likely to be a problem when a module that names exported constructors adds a new constructor. Could we get a warning for this, please?
Note: this applies also to data family instances.
Trac metadata
Trac field | Value |
---|---|
Version | 7.10.3 |
Type | FeatureRequest |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |