summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_compile/T9971.hs
blob: 57f8d3bc5ba26e2c9226248d427b47b08a60d141 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{-# LANGUAGE FunctionalDependencies #-}
module T9971 where

type Vertex v = v Double

class C a b | b->a  where
  op :: a -> b

foo :: Vertex x
foo = error "urk"

bar x = [op foo, op foo]
 -- This gives rise to a [D] Vertex a1 ~ Vertex a2
 -- And that made the canonicaliser go into a loop (#9971)