diff --git a/src/main/scala/inox/solvers/combinators/PortfolioSolverFactory.scala b/src/main/scala/inox/solvers/combinators/PortfolioSolverFactory.scala index 411240ecaae0dba2dd89e014acc416d63aa1cf36..f1f682975522f8f3c844ca40b59c4ca369425206 100644 --- a/src/main/scala/inox/solvers/combinators/PortfolioSolverFactory.scala +++ b/src/main/scala/inox/solvers/combinators/PortfolioSolverFactory.scala @@ -4,8 +4,6 @@ package inox package solvers package combinators -import scala.reflect.runtime.universe._ - trait PortfolioSolverFactory extends SolverFactory { self => final type PT = program.type @@ -22,8 +20,9 @@ trait PortfolioSolverFactory extends SolverFactory { self => } } + // Assumes s is a P/Solver with the correct subsolver types override def reclaim(s: S) = sfs.zip(s.solvers).foreach { case (sf, s) => - sf.reclaim(s) + sf.reclaim(s.asInstanceOf[sf.S]) } val name = sfs.map(_.name).mkString("Pfolio(", ",", ")")