3 Inferred type is less polymorphic than expected
4 Quantified type variable `v' escapes
5 It is mentioned in the environment
6 The following variables in the environment mention `v'
9 When checking the type signature
10 reversed_edges :: forall v1. (Eq v1) => [Edge v1]
11 In an equation for function `stronglyConnComp':
12 stronglyConnComp es vs
13 = snd (span_tree (new_range reversed_edges)
15 (snd (dfs (new_range es) ([], []) vs)))
17 span_tree r (vs, ns) [] = (vs, ns)
18 span_tree r (vs, ns) (x : xs)
19 | x `elem` vs = span_tree r (vs, ns) xs
20 | otherwise = span_tree r (vs', (x : ns') : ns) xs
22 (vs', ns') = dfs r (x : vs, []) (r x)
24 new_range ((x, y) : xys) w
26 (y : (new_range xys w))
30 reversed_edges :: forall v. (Eq v) => [Edge v]
31 reversed_edges = map swap es
33 Compilation had errors