1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
{-# LANGUAGE ImplicitParams #-} -- The defn of foo should be rejected; it's monomorphic, but -- the implicit paramter escapes module Foo where baz = let ?x = 5 in print foo foo = woggle 3 woggle :: (?x :: Int) => Int -> Int woggle y = ?x + y