From ca793066fe98fd7fa72b23cbe340e3486590d070 Mon Sep 17 00:00:00 2001
From: Etienne Kneuss <etienne.kneuss@epfl.ch>
Date: Fri, 9 Jan 2015 16:03:25 +0100
Subject: [PATCH] Fix extraction of List literal types

---
 src/main/scala/leon/frontends/scalac/ASTExtractors.scala  | 4 ++--
 src/main/scala/leon/frontends/scalac/CodeExtraction.scala | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/main/scala/leon/frontends/scalac/ASTExtractors.scala b/src/main/scala/leon/frontends/scalac/ASTExtractors.scala
index 00f039d29..a5c40f034 100644
--- a/src/main/scala/leon/frontends/scalac/ASTExtractors.scala
+++ b/src/main/scala/leon/frontends/scalac/ASTExtractors.scala
@@ -165,11 +165,11 @@ trait ASTExtractors {
     }
 
     object ExListLiteral {
-      def unapply(tree: Apply): Option[(Type, List[Tree])] = tree  match {
+      def unapply(tree: Apply): Option[(Tree, List[Tree])] = tree  match {
         case Apply(
               TypeApply(ExSelected("leon", "collection", "List", "apply"), tpe :: Nil),
               args) =>
-          Some((tpe.tpe, args))
+          Some((tpe, args))
         case _ =>
           None
       }
diff --git a/src/main/scala/leon/frontends/scalac/CodeExtraction.scala b/src/main/scala/leon/frontends/scalac/CodeExtraction.scala
index fee0e7e4b..1427ff10a 100644
--- a/src/main/scala/leon/frontends/scalac/CodeExtraction.scala
+++ b/src/main/scala/leon/frontends/scalac/CodeExtraction.scala
@@ -1384,7 +1384,7 @@ trait CodeExtraction extends ASTExtractors {
           ArrayUpdated(rar, rk, rv)
 
         case l @ ExListLiteral(tpe, elems) =>
-          val rtpe = extractType(l)
+          val rtpe = extractType(tpe)
           val cons = CaseClassType(libraryCaseClass(l.pos, "leon.collection.Cons"), Seq(rtpe));
           val nil  = CaseClassType(libraryCaseClass(l.pos, "leon.collection.Nil"),  Seq(rtpe));
 
-- 
GitLab