diff options
Diffstat (limited to 'testsuite/tests/codeGen/should_fail/CheckBoundsReadWord8ArrayAsWord32.hs')
-rw-r--r-- | testsuite/tests/codeGen/should_fail/CheckBoundsReadWord8ArrayAsWord32.hs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/testsuite/tests/codeGen/should_fail/CheckBoundsReadWord8ArrayAsWord32.hs b/testsuite/tests/codeGen/should_fail/CheckBoundsReadWord8ArrayAsWord32.hs new file mode 100644 index 0000000000..4bade0a101 --- /dev/null +++ b/testsuite/tests/codeGen/should_fail/CheckBoundsReadWord8ArrayAsWord32.hs @@ -0,0 +1,17 @@ +{-# LANGUAGE UnboxedTuples #-} +{-# LANGUAGE MagicHash #-} + +module Main where + +import GHC.Exts +import GHC.IO + +main :: IO () +main = do + IO $ \s0 -> + case newByteArray# 7# s0 of + (# s1, marr #) -> + case readWord8ArrayAsWord32# marr (-3#) s1 of + -- only the last byte of the desired word32 is in bounds + (# s2, _n #) -> (# s2, () #) + |