From 74031fe91c226c70361698b7b7a87847cea64527 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mika=C3=ABl=20Mayer?= <mikael.mayer@epfl.ch> Date: Tue, 1 Mar 2016 11:27:55 +0100 Subject: [PATCH] Hot fix: Replace only function bodies that have changed --- src/main/scala/leon/purescala/DefOps.scala | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/scala/leon/purescala/DefOps.scala b/src/main/scala/leon/purescala/DefOps.scala index e8f8af4bb..ea4bff382 100644 --- a/src/main/scala/leon/purescala/DefOps.scala +++ b/src/main/scala/leon/purescala/DefOps.scala @@ -556,7 +556,7 @@ object DefOps { case None => if(fdMapFCached(fd).isDefined || p.callGraph.transitiveCallees(fd).exists(fd => fdMapFCached(fd).isDefined)) { duplicateParents(fd) - } else { // Verify that for all + } else { fdMapCache += fd -> None } fdMapCache(fd).getOrElse(fd) @@ -612,7 +612,9 @@ object DefOps { } for(fd <- newP.definedFunctions) { - fd.fullBody = replaceClassDefsUse(fd.fullBody) + if(fdMapCache.getOrElse(fd, None).isDefined) { + fd.fullBody = replaceClassDefsUse(fd.fullBody) + } } (newP, cdMapCache.collect{case (cd, Some(new_cd)) => cd -> new_cd}, -- GitLab