Failing monadic pattern matches have confusing error messages
Motivation
I was just trying to build basement
with GHC head (8.9). I got this error message:
Basement/Block/Base.hs:398:9: error:
Not in scope: ‘fail’
Perhaps you meant ‘Data.List.tail’ (imported from Data.List)
|
398 | arr@(Block arrBa) <- makeTrampoline
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
For those already in the know, it's pretty easy to discern the meaning of this. But for those who aren't, this message is nonsense.