diff --git a/src/main/scala/leon/purescala/DefOps.scala b/src/main/scala/leon/purescala/DefOps.scala
index 7a7c6b6324147982d74a5aeb143590963c7c4fa3..89c0fce8145f9ad43b1924e8cbb81f57de3d0a56 100644
--- a/src/main/scala/leon/purescala/DefOps.scala
+++ b/src/main/scala/leon/purescala/DefOps.scala
@@ -91,18 +91,21 @@ object DefOps {
     val namesFrom = pathToNames(pathFrom, useUniqueIds)
     val namesOf   = pathToNames(pathFromRoot(of), useUniqueIds)
 
-    def stripPrefix(of: List[String], from: List[String]) = {
-      val commonPrefix = (of zip from).takeWhile(p => p._1 == p._2)
+    def stripPrefix(off: List[String], from: List[String]) = {
+      val commonPrefix = (off zip from).takeWhile(p => p._1 == p._2)
 
-      val res = of.drop(commonPrefix.size)
+      val res = off.drop(commonPrefix.size)
 
       if (res.isEmpty) {
-        List(of.last)
+        if (off.isEmpty) List()
+        else List(off.last)
       } else {
         res
       }
     }
 
+    val sp = stripPrefix(namesOf, namesFrom)
+    if (sp.isEmpty) return "**** " + of.id.uniqueName
     var names: Set[List[String]] = Set(namesOf, stripPrefix(namesOf, namesFrom))
 
     pathFrom match {