haskell-debugger-0.13.0.0: test/golden/T239/Main.hs
{-# OPTIONS_GHC -O -fno-unoptimized-core-for-interpreter #-}
{-# LANGUAGE BangPatterns #-}
module Main where
data Packed = Packed -- Unpacking only happens with optimizations, hence the -O.
{ packedLeft :: {-# UNPACK #-} !Char
, packedRight :: {-# UNPACK #-} !Char
}
deriving Show
data Container = Container
{ containerBefore :: Int
, containerPacked :: {-# UNPACK #-} !Packed
, containerPacked2 :: {-# UNPACK #-} !Packed
, containerAfter :: Int
}
deriving Show
mkContainer :: Container
mkContainer = Container 10 (Packed 'a' 'b') (Packed 'c' 'd') 40
{-# OPAQUE mkContainer #-}
main :: IO ()
main = do
let !container = mkContainer
const (pure ()) container
print container