Unboxed tuples as values
Consider type T a = Int -> (# Int, Int #) f :: T a -> T a f t = \x -> case t x of r -> r gives the following error message: ghc-5.04.1: panic! (the `impossible' happened, GHC version 5.04.1): codeGen/CgRetConv.lhs:83: Non-exhaustive patterns in function dataReturnConvPrim Trouble is that 'r' is bound to an unboxed tuple. This should fail, but in 5.04.1 it crashes the compiler. In 6.0 it's worse: the code will core dump because it enters R1. But it should be rejected in the type checker.
|Component||Compiler (Type checker)|
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information