runIO does not catch userErrors, just causes code generation to fail silently
If a userError is thrown inside a runIO computation inside a splice, no indication of the error is given - instead, the compiler just fails to generate a valid .hi file, leaving the user none the wiser as to what has gone wrong.
(Actually, maybe this is a more general problem than just runIO - I also noticed that use of "undefined" in a splice can cause an "impossible" error in GHC.)
This is with a checkout from today from darcs.
Trac metadata
Trac field | Value |
---|---|
Version | 6.7 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Template Haskell |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |