summaryrefslogtreecommitdiff
path: root/testsuite/tests/pmcheck/should_compile/T3927a.hs
blob: 62fb68b6074c6895e5112bc9282c344774e71020 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{-# OPTIONS_GHC -fwarn-incomplete-patterns -fwarn-overlapping-patterns #-}
{-# LANGUAGE GADTs, TypeFamilies #-}

module T3927a where

type family F a
type instance F a = ()

data Foo a where
  FooA :: Foo ()
  FooB :: Foo Int

f :: a -> Foo (F a) -> () -- F a can only be () so only FooA is accepted
f _ FooA = ()