{-# LANGUAGE TemplateHaskell #-}
module Main where

import Language.Haskell.TH

$( [d| g = 0
       h = $( return $ LamE [VarP (mkName "g")] (VarE 'g) ) |] )
         -- The 'g should bind to the g=0 definition

-- Should print 0, not 1!
main = print (h 1)
