summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_compile/LocalGivenEqs2.hs
blob: f15ab92de75d70f979366eb345aa4470b71007c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{-# LANGUAGE TypeFamilies, GADTSyntax, ExistentialQuantification #-}

-- This is a simple case that exercises the LocalGivenEqs bullet
-- of Note [When does an implication have given equalities?] in GHC.Tc.Solver.Monad
-- If a future change rejects this, that's not the end of the world, but it's nice
-- to be able to infer `f`.

module LocalGivenEqs2 where

type family F a
type family G b

data T where
  MkT :: F a ~ G b => a -> b -> T

f (MkT _ _) = True