[RankNTypes] Compilation error
Using the most recent version including arbitrary rank types, compilation of the PAKCS' toolsuite results in an error. The last lines of the log file are given below.
[40 of 62] Compiling Analysis.RightLinearity ( /home/fte/Projects/University/higher-rank-polymorphism/currytools/optimize/.cpm/packages/cass-analysis/src/Analysis/RightLinearity.curry, /home/fte/Projects/University/higher-rank-polymorphism/currytools/optimize/.cpm/packages/cass-analysis/src/.curry/Analysis/RightLinearity.fcy ) /home/fte/Projects/University/higher-rank-polymorphism/currytools/optimize/.cpm/packages/cass-analysis/src/Analysis/RightLinearity.curry, line 59.1: Error: Ambiguous type variable _39 in type Prelude.Eq _39 => FlatCurry.Types.Expr -> Prelude.Maybe [Prelude.Int] inferred for equation linearVariables (Comb _ f es) | (f == ("Prelude", "?")) && (length es == 2) = linearVariables (Or (head es) (head (tail es))) | otherwise = mapMMaybe linearVariables es >>- (\esvars -> let vars = concat esvars in if nub vars == vars then Just vars else Nothing) /home/fte/Projects/University/higher-rank-polymorphism/currytools/optimize/.cpm/packages/cass-analysis/src/Analysis/RightLinearity.curry, line 70.1: Error: Ambiguous type variable _85 in type Prelude.Eq _85 => FlatCurry.Types.Expr -> Prelude.Maybe [Prelude.Int] inferred for equation linearVariables (Let bs e) = mapMMaybe linearVariables (map snd bs) >>- (\bsvars -> linearVariables e >>- (\evars -> let vars = concat (evars : bsvars) in if nub vars == vars then Just (vars \\ (map fst bs)) else Nothing)) ERROR occurred during parsing! Makefile:29: recipe for target 'BindingOpt' failed make: *** [BindingOpt] Error 1 make: Leaving directory '/home/fte/Projects/University/higher-rank-polymorphism/currytools/optimize' Makefile:163: recipe for target 'kernel' failed make: *** [kernel] Error 2 make: Leaving directory '/home/fte/Projects/University/higher-rank-polymorphism' Makefile:155: recipe for target 'build' failed make: *** [build] Error 2 make: Leaving directory '/home/fte/Projects/University/higher-rank-polymorphism' Make process logged in file make.log