diff --git a/src/main/scala/leon/purescala/TreeOps.scala b/src/main/scala/leon/purescala/TreeOps.scala
index c8d40d5515e10e8f7f449727c499146c2a0be953..54a634bb11d23dfbc0b94752c67c2a14e446472c 100644
--- a/src/main/scala/leon/purescala/TreeOps.scala
+++ b/src/main/scala/leon/purescala/TreeOps.scala
@@ -1101,8 +1101,8 @@ object TreeOps {
       if(matcher.isDefinedAt(e)) {
         val res = matcher(e)
         results = results :+ (res, And(path))
-        e
-      } else super.rec(e, path)
+      }
+      super.rec(e, path)
     }
 
     def traverse(e: Expr) = {