summaryrefslogtreecommitdiff
path: root/testsuite/tests/ghc-api/annotations/Test12417.hs
blob: 67da7f2107dcf0672f2cdd4b1f1184d8111a569b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{-# LANGUAGE UnboxedSums, MagicHash #-}

module Test12417 where

import GHC.Prim
import GHC.Types

import System.Mem (performMajorGC)

type Either1 a b = (# a | b #)

showEither1 :: (Show a, Show b) => Either1 a b -> String
showEither1 (# left | #)  = "Left " ++ show left
showEither1 (# | right #) = "Right " ++ show right

type T = (# Int | Bool | String | Char | Either Int Bool | Int# | Float# #)

showEither4 :: T -> String
showEither4 (# | b | | | | | #) = "Alt1: " ++ show b