blob: f74df663690a920c90a484b60bfe9ab37f0e84b4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
|
{-# LANGUAGE PartialTypeSignatures, NamedWildCards #-}
module ScopedNamedWildcardsGood where
-- The named wildcards aren't scoped as the ScopedTypeVariables extension
-- isn't enabled, of which the behaviour is copied. Thus, the _a annotation of
-- x, which must be Bool, isn't the same as the _a in g, which is now
-- generalised over.
foo :: _a -> _
foo x = let v = not x
g :: _a -> _a
g x = x
in (g 'x')
|