TH_StaticPointers02.hs 513 Bytes
Newer Older
Facundo Domínguez's avatar
Facundo Domínguez committed
1 2 3
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE StaticPointers #-}

4
-- | A test to try the static form in splices, which should fail.
Facundo Domínguez's avatar
Facundo Domínguez committed
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
--
module Main(main) where

import GHC.Fingerprint
import GHC.StaticPtr

main = print $ $(case staticKey (static 'a') of
  Fingerprint w0 w1 ->
    let w0i = fromIntegral w0 :: Integer
        w1i = fromIntegral w1 :: Integer
    in
     [| fmap (\p -> deRefStaticPtr p :: Char) $ unsafeLookupStaticPtr $
          Fingerprint (fromIntegral w0i) (fromIntegral w1i)
      |]
     )