From 0f5b383d74df198c166563d3ded5b4451c32c228 Mon Sep 17 00:00:00 2001
From: Manos Koukoutos <emmanouil.koukoutos@epfl.ch>
Date: Thu, 10 Mar 2016 17:08:01 +0100
Subject: [PATCH] Don't produce the same call twice

---
 src/main/scala/leon/synthesis/rules/IntroduceRecCalls.scala | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/main/scala/leon/synthesis/rules/IntroduceRecCalls.scala b/src/main/scala/leon/synthesis/rules/IntroduceRecCalls.scala
index 5103ad0c6..aca95e883 100644
--- a/src/main/scala/leon/synthesis/rules/IntroduceRecCalls.scala
+++ b/src/main/scala/leon/synthesis/rules/IntroduceRecCalls.scala
@@ -29,7 +29,7 @@ case object IntroduceRecCalls extends NormalizingRule("Introduce rec. calls") {
     val existingCalls = pcs.collect { case Equals(_, fi: FunctionInvocation) => fi }.toSet
 
     val calls = terminatingCalls(hctx.program, p.ws, p.pc, None, false)
-      .map(_._1).filterNot(existingCalls)
+      .map(_._1).distinct.filterNot(existingCalls)
 
     if (calls.isEmpty) return Nil
 
-- 
GitLab