1 -- !! Data constructors with strict fields
2 -- This test should use -funbox-strict-fields
4 module Main ( main ) where
8 t = MkT 1 2 (3,4) (MkS 5 6)
12 data T = MkT Int !Int !(Int,Int) !(S Int)
18 f :: T -> T -- Takes apart the thing and puts it
19 -- back together differently
20 f (MkT x y (a,b) (MkS p q)) = MkT a b (p,q) (MkS x y)