{-# LANGUAGE DeriveGeneric, DeriveAnyClass, CPP #-} {-# OPTIONS_GHC -fplugin Foreign.Storable.Generic.Plugin #-} {-# OPTIONS_GHC -fplugin-opt=Foreign.Storable.Generic.Plugin:-crash #-} {-# OPTIONS_GHC -fplugin-opt=Foreign.Storable.Generic.Plugin:-v2 #-} module TestCasesOptimized where import GHC.Generics (Generic) import Foreign.Storable.Generic import Data.Int import Control.DeepSeq data C1O = C1O Int32 deriving (Show, Generic, GStorable, NFData) data C2O = C2O Int8 Int32 Int16 deriving (Show, Generic, GStorable, NFData) data C3O = C3O C2O Int64 C1O deriving (Show, Generic, GStorable, NFData) data C4O = C4O Double Int8 C3O deriving (Show, Generic, GStorable, NFData) data C5O = C5O Int32 C2O C4O deriving (Show, Generic, GStorable, NFData) c1o_def = C1O 3 c2o_def = C2O 3 10 8 c3o_def = C3O c2o_def 11000 c1o_def c4o_def = C4O 0.312 3 c3o_def c5o_def = C5O 100 c2o_def c4o_def #ifdef GSTORABLE_SUMTYPES data S1O = S1Oa Int32 | S1Ob Int16 deriving (Show, Generic, GStorable, NFData) data S2O = S2Oa Int32 Int64 Int8 | S2Ob S1O Int8 Double | S2Oc Int32 Int8 Int16 Int8 | S2Od S1O S1O deriving (Show, Generic, GStorable, NFData) s1o_def = S1Oa 54 s2o_def = S2Ob s1o_def 32 1.5 #endif