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
At the moment, the rule doesn't report the destructuring of single variant constructors when we don't know whether the type has any phantom types (as that could be the purpose of the destructuring).
This correctly doesn't get reported.
type A b =AStringa =let (A b)= xyz
in A b
but the heuristic we use is to only check whether the type has type variables. We are not checking whether the type variable is actually a phantom one or not.
moduleAexposing (..)
type A b =A b
-- should be simplifieda =let (A b)= xyz
in A b
There may some edge cases to figure out where this might be change things? For instance, what if the type is a phantom type by transition (used as a type variable to another type where it is a phantom type)? To be explored.
The text was updated successfully, but these errors were encountered:
At the moment, the rule doesn't report the destructuring of single variant constructors when we don't know whether the type has any phantom types (as that could be the purpose of the destructuring).
This correctly doesn't get reported.
but the heuristic we use is to only check whether the type has type variables. We are not checking whether the type variable is actually a phantom one or not.
There may some edge cases to figure out where this might be change things? For instance, what if the type is a phantom type by transition (used as a type variable to another type where it is a phantom type)? To be explored.
The text was updated successfully, but these errors were encountered: