diff --git a/src/main/scala/leon/purescala/TypeTrees.scala b/src/main/scala/leon/purescala/TypeTrees.scala
index 91d597535a1e12348f1a3634905da38851b4b8d9..7f3f20c29bea3bd2a28098c1f19d1936349fdaf6 100644
--- a/src/main/scala/leon/purescala/TypeTrees.scala
+++ b/src/main/scala/leon/purescala/TypeTrees.scala
@@ -185,10 +185,12 @@ object TypeTrees {
     def apply(bases: Seq[TypeTree]): TupleType = {
       new TupleType(bases.map(bestRealType(_)))
     }
-    def unapply(expr: TupleType): Option[Seq[TypeTree]] = expr match {
-      case (t: TupleType) => Some(t.bases)
-      case _ => None
-    }
+    //TODO: figure out which of the two unapply is better
+    //def unapply(t: TypeTree): Option[Seq[TypeTree]] = t match {
+    //  case (tt: TupleType) => Some(tt.bases)
+    //  case _ => None
+    //}
+    def unapply(tt: TupleType): Option[Seq[TypeTree]] = Some(tt.bases)
   }
 
   case class ListType(base: TypeTree) extends TypeTree