1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
T15368.hs:11:15: warning: [-Wtyped-holes (in -Wdefault)]
• Found hole: _ :: (F a b, F a0 b0)
Where: ‘a0’ is an ambiguous type variable
‘b0’ is an ambiguous type variable
‘a’, ‘b’ are rigid type variables bound by
the type signature for:
trigger :: forall a b. a -> b -> (F a b, F b a)
at T15368.hs:10:1-35
• In the first argument of ‘transitive’, namely ‘_’
In the expression: _ `transitive` trigger _ _
In an equation for ‘trigger’:
trigger _ _ = _ `transitive` trigger _ _
• Relevant bindings include
trigger :: a -> b -> (F a b, F b a) (bound at T15368.hs:11:1)
T15368.hs:11:30: warning: [-Wdeferred-type-errors (in -Wdefault)]
• Couldn't match type: F b0 a0
with: F b a
Expected: (F a0 b0, F b a)
Actual: (F a0 b0, F b0 a0)
NB: ‘F’ is a non-injective type family
The type variables ‘b0’, ‘a0’ are ambiguous
• In the second argument of ‘transitive’, namely ‘trigger _ _’
In the expression: _ `transitive` trigger _ _
In an equation for ‘trigger’:
trigger _ _ = _ `transitive` trigger _ _
• Relevant bindings include
trigger :: a -> b -> (F a b, F b a) (bound at T15368.hs:11:1)
T15368.hs:11:38: warning: [-Wtyped-holes (in -Wdefault)]
• Found hole: _ :: a0
Where: ‘a0’ is an ambiguous type variable
• In the first argument of ‘trigger’, namely ‘_’
In the second argument of ‘transitive’, namely ‘trigger _ _’
In the expression: _ `transitive` trigger _ _
• Relevant bindings include
trigger :: a -> b -> (F a b, F b a) (bound at T15368.hs:11:1)
T15368.hs:11:40: warning: [-Wtyped-holes (in -Wdefault)]
• Found hole: _ :: b0
Where: ‘b0’ is an ambiguous type variable
• In the second argument of ‘trigger’, namely ‘_’
In the second argument of ‘transitive’, namely ‘trigger _ _’
In the expression: _ `transitive` trigger _ _
• Relevant bindings include
trigger :: a -> b -> (F a b, F b a) (bound at T15368.hs:11:1)
|