blob: 152812a72860d40c97d586575bd1ab41dfe0a21f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
{-# OPTIONS_GHC -Wimplicit-lift #-}
{-# LANGUAGE TemplateHaskell #-}
module T17804 where
import Language.Haskell.TH.Syntax
warning1 :: Lift t => t -> Q Exp
warning1 x = [| x |]
warning2 :: Lift t => t -> Code Q t
warning2 x = [|| x ||]
noWarning1 :: Q Exp
noWarning1 = [| \x -> x |]
noWarning2 :: Code Q (a -> a)
noWarning2 = [|| \x -> x ||]
i :: Int
i = 0
noWarning3 :: Q Exp
noWarning3 = [| i |]
noWarning4 :: Code Q Int
noWarning4 = [|| i ||]
|