diff --git a/src/main/scala/leon/purescala/DefOps.scala b/src/main/scala/leon/purescala/DefOps.scala index 1b9d146d15765fe88b3ebf8d034ba9ac66a361a6..8d7f626d8a3a0771f1044b8d6b4470fd97232d68 100644 --- a/src/main/scala/leon/purescala/DefOps.scala +++ b/src/main/scala/leon/purescala/DefOps.scala @@ -401,7 +401,7 @@ object DefOps { * @param ciMapF Given a previous case class invocation and its new case class definition, returns the expression to use. * By default it is the case class construction using the new case class definition. * @return the new program with a map from the old case classes to the new case classes, with maps concerning identifiers and function definitions. */ - def replaceCaseClassDefs(p: Program)(cdMapF: CaseClassDef => Option[Option[AbstractClassType] => CaseClassDef], + def replaceCaseClassDefs(p: Program)(cdMapFOriginal: CaseClassDef => Option[Option[AbstractClassType] => CaseClassDef], ciMapF: (CaseClass, CaseClassType) => Option[Expr] = defaultCdMap) : (Program, Map[ClassDef, ClassDef], Map[Identifier, Identifier], Map[FunDef, FunDef]) = { var cdMapFCache = Map[CaseClassDef, Option[Option[AbstractClassType] => CaseClassDef]]() @@ -413,7 +413,7 @@ object DefOps { cd match { case ccd: CaseClassDef => cdMapFCache.getOrElse(ccd, { - val new_cd_potential = cdMapF(ccd) + val new_cd_potential = cdMapFOriginal(ccd) cdMapFCache += ccd -> new_cd_potential new_cd_potential })