Skip to content

Import error message for a type operator should suggest type keyword

I needed to import (~) from Data.Type.Equality, after the introduction of the -Wtype-equality-out-of-scope warning.

However, I tried to write

import Data.Type.Equality ( (~) )

instead of:

import Data.Type.Equality ( type (~) )

This caused the rather inscrutable error message:

 error:
    Module `Data.Type.Equality' does not export `(~)'

I think it would be much better if the error message noticed that there was a type operator by that name exported by Data.Type.Equality, and mentioned that I might have meant to use the type keyword to refer to it.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information