Open pacastega opened 4 days ago
The error is not helpful, but LH doesn't check the output of GADTs at the moment. See for instance #2090. Even if you could write such a specification, then LH wouldn't check the type of the result.
Actually, we have a short discussion with @goldfirere at ICFP about a related issue.
The real problem here is that the GHC and liquid type for the worker types of the GADT worker constructors (e.g., $WCONS
) do not match so the refinements are ignored. So, it would be good to understand the GHC rules for the generation of such types and update the generation of the refinement types.
With the following code
I am getting an error about
l
being unbound: