aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/invalid/pos/IterableSelfRec.scala (renamed from tests/pending/pos/IterableSelfRec.scala)1
-rw-r--r--tests/invalid/pos/contrib701.scala (renamed from tests/pending/pos/contrib701.scala)0
-rw-r--r--tests/invalid/pos/cycle-jsoup.flags (renamed from tests/pending/pos/cycle-jsoup.flags)0
-rw-r--r--tests/invalid/pos/cycle-jsoup.scala (renamed from tests/pending/pos/cycle-jsoup.scala)0
-rw-r--r--tests/invalid/pos/depexists.scala (renamed from tests/pending/pos/depexists.scala)0
-rw-r--r--tests/invalid/pos/dotless-targs.scala (renamed from tests/pending/pos/dotless-targs.scala)1
-rw-r--r--tests/invalid/pos/five-dot-f.flags (renamed from tests/pending/pos/five-dot-f.flags)0
-rw-r--r--tests/invalid/pos/five-dot-f.scala (renamed from tests/pending/pos/five-dot-f.scala)0
-rw-r--r--tests/invalid/pos/functions.scala (renamed from tests/pending/pos/functions.scala)0
-rw-r--r--tests/invalid/pos/generic-sigs.scala (renamed from tests/pending/pos/generic-sigs.scala)0
-rw-r--r--tests/invalid/pos/patmat.scala (renamed from tests/pending/pos/patmat.scala)0
-rw-r--r--tests/invalid/pos/pos-bug1241.scala (renamed from tests/pending/pos/pos-bug1241.scala)0
-rw-r--r--tests/invalid/pos/specializes-sym-crash.scala (renamed from tests/pending/pos/specializes-sym-crash.scala)5
-rw-r--r--tests/invalid/pos/t2782.scala (renamed from tests/pending/pos/t2782.scala)0
-rw-r--r--tests/invalid/pos/t3577.scala (renamed from tests/pending/pos/t3577.scala)3
-rw-r--r--tests/invalid/pos/t3856.scala16
-rw-r--r--tests/invalid/pos/t4202.scala (renamed from tests/pending/pos/t4202.scala)2
-rw-r--r--tests/invalid/pos/t4237.scala (renamed from tests/pending/pos/t4237.scala)1
-rw-r--r--tests/invalid/pos/t4363.scala (renamed from tests/pending/pos/t4363.scala)1
-rw-r--r--tests/invalid/pos/t4365/a_1.scala (renamed from tests/pending/pos/t4365/a_1.scala)1
-rw-r--r--tests/invalid/pos/t4365/b_1.scala (renamed from tests/pending/pos/t4365/b_1.scala)0
-rw-r--r--tests/invalid/pos/t4553.scala (renamed from tests/pending/pos/t4553.scala)1
-rw-r--r--tests/invalid/pos/t5022.scala (renamed from tests/pending/pos/t5022.scala)0
-rw-r--r--tests/invalid/pos/t5119.scala (renamed from tests/pending/pos/t5119.scala)0
-rw-r--r--tests/invalid/pos/t5130.scala (renamed from tests/pending/pos/t5130.scala)0
-rw-r--r--tests/invalid/pos/t5156.scala (renamed from tests/pending/pos/t5156.scala)0
-rw-r--r--tests/invalid/pos/t533.scala (renamed from tests/pending/pos/t533.scala)0
-rw-r--r--tests/invalid/pos/t5626.scala (renamed from tests/pending/pos/t5626.scala)0
-rw-r--r--tests/invalid/pos/t5654.scala (renamed from tests/pending/pos/t5654.scala)0
-rw-r--r--tests/invalid/pos/t6169/Exist.java (renamed from tests/pending/pos/t6169/Exist.java)0
-rw-r--r--tests/invalid/pos/t6169/ExistF.java (renamed from tests/pending/pos/t6169/ExistF.java)0
-rw-r--r--tests/invalid/pos/t6169/ExistIndir.java (renamed from tests/pending/pos/t6169/ExistIndir.java)0
-rw-r--r--tests/invalid/pos/t6169/OP.java (renamed from tests/pending/pos/t6169/OP.java)0
-rw-r--r--tests/invalid/pos/t6169/Skin.java (renamed from tests/pending/pos/t6169/Skin.java)0
-rw-r--r--tests/invalid/pos/t6169/Skinnable.java (renamed from tests/pending/pos/t6169/Skinnable.java)0
-rw-r--r--tests/invalid/pos/t6169/skinnable.scala (renamed from tests/pending/pos/t6169/skinnable.scala)0
-rw-r--r--tests/invalid/pos/t6169/t6169.scala (renamed from tests/pending/pos/t6169/t6169.scala)0
-rw-r--r--tests/invalid/pos/t6367.scala (renamed from tests/pending/pos/t6367.scala)0
-rw-r--r--tests/invalid/pos/t711.scala (renamed from tests/pending/pos/t711.scala)0
-rw-r--r--tests/invalid/pos/t7505.scala (renamed from tests/pending/pos/t7505.scala)0
-rw-r--r--tests/invalid/pos/t8023.scala (renamed from tests/pending/pos/t8023.scala)1
-rw-r--r--tests/invalid/pos/t8219b.scala (renamed from tests/pending/pos/t8219b.scala)0
-rw-r--r--tests/invalid/pos/t8224.scala (renamed from tests/pending/pos/t8224.scala)1
-rw-r--r--tests/invalid/pos/ticket2251.scala (renamed from tests/pending/pos/ticket2251.scala)0
-rw-r--r--tests/invalid/pos/typesafecons.scala (renamed from tests/pending/pos/typesafecons.scala)0
-rw-r--r--tests/invalid/pos/unapplySeq.scala (renamed from tests/pending/pos/unapplySeq.scala)0
-rw-r--r--tests/new/imports-pos.scala (renamed from tests/pending/pos/imports-pos.scala)0
-rw-r--r--tests/new/infer2-pos.scala (renamed from tests/pending/pos/infer2-pos.scala)0
-rw-r--r--tests/new/looping-jsig.scala (renamed from tests/pending/pos/looping-jsig.scala)0
-rw-r--r--tests/new/matthias1.scala (renamed from tests/pending/pos/matthias1.scala)0
-rw-r--r--tests/new/michel6.scala (renamed from tests/pending/pos/michel6.scala)0
-rw-r--r--tests/new/moduletrans.scala (renamed from tests/pending/pos/moduletrans.scala)0
-rw-r--r--tests/new/package-implicit/ActorRef.scala (renamed from tests/pending/pos/package-implicit/ActorRef.scala)0
-rw-r--r--tests/new/package-implicit/DataFlow.scala (renamed from tests/pending/pos/package-implicit/DataFlow.scala)0
-rw-r--r--tests/new/package-implicit/package.scala (renamed from tests/pending/pos/package-implicit/package.scala)0
-rw-r--r--tests/new/patterns.scala (renamed from tests/pending/pos/patterns.scala)0
-rw-r--r--tests/new/patterns1.scala (renamed from tests/pending/pos/patterns1.scala)0
-rw-r--r--tests/new/pmbug.scala (renamed from tests/pending/pos/pmbug.scala)0
-rw-r--r--tests/new/private-types-after-typer.scala (renamed from tests/pending/pos/private-types-after-typer.scala)0
-rw-r--r--tests/new/selftails.scala (renamed from tests/pending/pos/selftails.scala)0
-rw-r--r--tests/new/seqtest2.scala (renamed from tests/pending/pos/seqtest2.scala)0
-rw-r--r--tests/pending/pos/hklub0.scala5
-rw-r--r--tests/pending/pos/sammy_poly.flags1
-rw-r--r--tests/pending/pos/sealed-final.flags1
-rw-r--r--tests/pending/pos/spec-t5545/S_1.scala (renamed from tests/pending/pos/t5545/S_1.scala)0
-rw-r--r--tests/pending/pos/spec-t5545/S_2.scala (renamed from tests/pending/pos/t5545/S_2.scala)0
-rw-r--r--tests/pending/pos/t1843.scala24
-rw-r--r--tests/pending/pos/t2613.scala11
-rw-r--r--tests/pending/pos/t3252.flags1
-rw-r--r--tests/pending/pos/t3856.scala9
-rw-r--r--tests/pending/pos/t4176b.scala5
-rw-r--r--tests/pending/pos/t4269.scala2
-rw-r--r--tests/pending/pos/t4579.scala518
-rw-r--r--tests/pending/pos/t4760.scala34
-rw-r--r--tests/pending/pos/t5845.scala8
-rw-r--r--tests/pending/pos/t6335.scala25
-rw-r--r--tests/pending/pos/t6976/Exts_1.scala2
-rw-r--r--tests/pending/pos/t7517.scala1
-rw-r--r--tests/pending/pos/t7902.scala1
-rw-r--r--tests/pending/pos/t7919.scala6
-rw-r--r--tests/pos/conforms.scala (renamed from tests/new/conforms.scala)0
-rw-r--r--tests/pos/constfold.scala (renamed from tests/pending/pos/constfold.scala)0
-rw-r--r--tests/pos/contextbounds-implicits-new.scala (renamed from tests/pending/pos/contextbounds-implicits-new.scala)0
-rw-r--r--tests/pos/delambdafy-lambdalift.scala (renamed from tests/pending/pos/delambdafy-lambdalift.scala)0
-rw-r--r--tests/pos/exbound.scala (renamed from tests/pending/pos/exbound.scala)0
-rw-r--r--tests/pos/hkrange.scala5
-rw-r--r--tests/pos/implicits.scala (renamed from tests/new/implicits.scala)0
-rw-r--r--tests/pos/philippe4.scala (renamed from tests/pending/pos/philippe4.scala)0
-rw-r--r--tests/pos/seq-ordering.scala9
-rw-r--r--tests/pos/t1048.scala (renamed from tests/pending/pos/t1048.scala)0
-rw-r--r--tests/pos/t1843.scala5
-rw-r--r--tests/pos/t3274.scala (renamed from tests/pending/pos/t3274.scala)0
-rw-r--r--tests/pos/t3477.scala (renamed from tests/pending/pos/t3477.scala)0
-rw-r--r--tests/pos/t3480.scala (renamed from tests/pending/pos/t3480.scala)0
-rw-r--r--tests/pos/t3498-new.scala (renamed from tests/pending/pos/t3498-new.scala)0
-rw-r--r--tests/pos/t3534.scala (renamed from tests/pending/pos/t3534.scala)0
-rw-r--r--tests/pos/t3568.scala (renamed from tests/pending/pos/t3568.scala)0
-rw-r--r--tests/pos/t3582b.scala (renamed from tests/pending/pos/t3582b.scala)0
-rw-r--r--tests/pos/t360.scala (renamed from tests/pending/pos/t360.scala)0
-rw-r--r--tests/pos/t3612.scala (renamed from tests/pending/pos/t3612.scala)0
-rw-r--r--tests/pos/t3688.scala (renamed from tests/pending/pos/t3688.scala)0
-rw-r--r--tests/pos/t3777.scala (renamed from tests/pending/pos/t3777.scala)0
-rw-r--r--tests/pos/t3859.scala (renamed from tests/pending/pos/t3859.scala)0
-rw-r--r--tests/pos/t3869.scala (renamed from tests/pending/pos/t3869.scala)0
-rw-r--r--tests/pos/t3960.scala (renamed from tests/pending/pos/t3960.scala)0
-rw-r--r--tests/pos/t3986.scala (renamed from tests/pending/pos/t3986.scala)0
-rw-r--r--tests/pos/t404.scala (renamed from tests/pending/pos/t404.scala)0
-rw-r--r--tests/pos/t415.scala (renamed from tests/pending/pos/t415.scala)0
-rw-r--r--tests/pos/t4176.scala (renamed from tests/pending/pos/t4176.scala)0
-rw-r--r--tests/pos/t430-feb09.scala (renamed from tests/pending/pos/t430-feb09.scala)0
-rw-r--r--tests/pos/t4336.scala (renamed from tests/pending/pos/t4336.scala)0
-rw-r--r--tests/pos/t4345.scala (renamed from tests/pending/pos/t4345.scala)0
-rw-r--r--tests/pos/t4545.scala (renamed from tests/pending/pos/t4545.scala)0
-rw-r--r--tests/pos/t460.scala (renamed from tests/pending/pos/t460.scala)0
-rw-r--r--tests/pos/t4853.scala (renamed from tests/pending/pos/t4853.scala)0
-rw-r--r--tests/pos/t4859.scala (renamed from tests/pending/pos/t4859.scala)0
-rw-r--r--tests/pos/t4911.flags1
-rw-r--r--tests/pos/t4911.scala (renamed from tests/pending/pos/t4911.scala)0
-rw-r--r--tests/pos/t4975.scala (renamed from tests/pending/pos/t4975.scala)0
-rw-r--r--tests/pos/t5012.scala (renamed from tests/pending/pos/t5012.scala)0
-rw-r--r--tests/pos/t5029.scala (renamed from tests/pending/pos/t5029.scala)0
-rw-r--r--tests/pos/t5041.scala (renamed from tests/pending/pos/t5041.scala)0
-rw-r--r--tests/pos/t5082.scala (renamed from tests/pending/pos/t5082.scala)0
-rw-r--r--tests/pos/t5541.scala (renamed from tests/pending/pos/t5541.scala)0
-rw-r--r--tests/pos/t566.scala (renamed from tests/pending/pos/t566.scala)0
-rw-r--r--tests/pos/t5720-ownerous.scala (renamed from tests/pending/pos/t5720-ownerous.scala)0
-rw-r--r--tests/pos/t5729.scala (renamed from tests/pending/pos/t5729.scala)0
-rw-r--r--tests/pos/t573.scala (renamed from tests/pending/pos/t573.scala)0
-rw-r--r--tests/pos/t5859.scala (renamed from tests/pending/pos/t5859.scala)0
-rw-r--r--tests/pos/t5877.scala (renamed from tests/pending/pos/t5877.scala)0
-rw-r--r--tests/pos/t5877b.scala (renamed from tests/pending/pos/t5877b.scala)0
-rw-r--r--tests/pos/t5900a.scala (renamed from tests/pending/pos/t5900a.scala)0
-rw-r--r--tests/pos/t5932.scala (renamed from tests/pending/pos/t5932.scala)0
-rw-r--r--tests/pos/t596.scala (renamed from tests/pending/pos/t596.scala)0
-rw-r--r--tests/pos/t5967.scala (renamed from tests/pending/pos/t5967.scala)0
-rw-r--r--tests/pos/t6014.scala (renamed from tests/pending/pos/t6014.scala)0
-rw-r--r--tests/pos/t604.scala (renamed from tests/pending/pos/t604.scala)0
-rw-r--r--tests/pos/t6089b.scala (renamed from tests/pending/pos/t6089b.scala)0
-rw-r--r--tests/pos/t6117.scala (renamed from tests/pending/pos/t6117.scala)0
-rw-r--r--tests/pos/t6123-explaintypes-implicits.scala (renamed from tests/pending/pos/t6123-explaintypes-implicits.scala)0
-rw-r--r--tests/pos/t6145.scala (renamed from tests/pending/pos/t6145.scala)0
-rw-r--r--tests/pos/t6184.scala (renamed from tests/pending/pos/t6184.scala)0
-rw-r--r--tests/pos/t6208.scala (renamed from tests/pending/pos/t6208.scala)0
-rw-r--r--tests/pos/t6225.scala (renamed from tests/pending/pos/t6225.scala)0
-rw-r--r--tests/pos/t6231.scala (renamed from tests/pending/pos/t6231.scala)0
-rw-r--r--tests/pos/t6231b.scala (renamed from tests/pending/pos/t6231b.scala)0
-rw-r--r--tests/pos/t6575a.scala (renamed from tests/pending/pos/t6575a.scala)0
-rw-r--r--tests/pos/t6600.scala (renamed from tests/pending/pos/t6600.scala)0
-rw-r--r--tests/pos/t661.scala (renamed from tests/pending/pos/t661.scala)2
-rw-r--r--tests/pos/t6664b.scala (renamed from tests/pending/pos/t6664b.scala)0
-rw-r--r--tests/pos/t697.scala (renamed from tests/pending/pos/t697.scala)0
-rw-r--r--tests/pos/t6994.scala (renamed from tests/pending/pos/t6994.scala)0
-rw-r--r--tests/pos/t7011.scala (renamed from tests/pending/pos/t7011.scala)0
-rw-r--r--tests/pos/t703.scala (renamed from tests/pending/pos/t703.scala)0
-rw-r--r--tests/pos/t704.scala (renamed from tests/pending/pos/t704.scala)0
-rw-r--r--tests/pos/t7126.scala (renamed from tests/pending/pos/t7126.scala)0
-rw-r--r--tests/pos/t7226.scala (renamed from tests/pending/pos/t7226.scala)0
-rw-r--r--tests/pos/t7285a.scala (renamed from tests/pending/pos/t7285a.scala)9
-rw-r--r--tests/pos/t7475a.scala (renamed from tests/pending/pos/t7475a.scala)0
-rw-r--r--tests/pos/t7475b.scala (renamed from tests/pending/pos/t7475b.scala)0
-rw-r--r--tests/pos/t7520.scala (renamed from tests/pending/pos/t7520.scala)0
-rw-r--r--tests/pos/t758.scala (renamed from tests/pending/pos/t758.scala)0
-rw-r--r--tests/pos/t7591.scala (renamed from tests/pending/pos/t7591/Demo.scala)0
-rw-r--r--tests/pos/t7782.scala (renamed from tests/pending/pos/t7782.scala)0
-rw-r--r--tests/pos/t7782b.scala (renamed from tests/pending/pos/t7782b.scala)0
-rw-r--r--tests/pos/t7785.scala (renamed from tests/pending/pos/t7785.scala)0
-rw-r--r--tests/pos/t7853.scala (renamed from tests/pending/pos/t7853.scala)0
-rw-r--r--tests/pos/t788.scala (renamed from tests/pending/pos/t788.scala)0
-rw-r--r--tests/pos/t7928.scala (renamed from tests/pending/pos/t7928.scala)0
-rw-r--r--tests/pos/t796.scala (renamed from tests/pending/pos/t796.scala)0
-rw-r--r--tests/pos/t7983.scala (renamed from tests/pending/pos/t7983.scala)0
-rw-r--r--tests/pos/t802.scala (renamed from tests/pending/pos/t802.scala)4
-rw-r--r--tests/pos/t8023b.scala (renamed from tests/pending/pos/t8023b.scala)0
-rw-r--r--tests/pos/t8045.scala (renamed from tests/pending/pos/t8045.scala)0
-rw-r--r--tests/pos/t805.scala (renamed from tests/pending/pos/t805.scala)4
-rw-r--r--tests/pos/t8128.scala (renamed from tests/pending/pos/t8128.scala)0
-rw-r--r--tests/pos/t8177a.scala (renamed from tests/pending/pos/t8177a.scala)0
-rw-r--r--tests/pos/t8187.scala (renamed from tests/pending/pos/t8187.scala)0
-rw-r--r--tests/pos/t8219.scala (renamed from tests/pending/pos/t8219.scala)0
-rw-r--r--tests/pos/t8367.scala (renamed from tests/pending/pos/t8367.scala)0
-rw-r--r--tests/pos/t8369a.scala (renamed from tests/pending/pos/t8369a.scala)0
-rw-r--r--tests/pos/t873.scala (renamed from tests/pending/pos/t873.scala)0
-rw-r--r--tests/pos/t911.scala (renamed from tests/pending/pos/t911.scala)0
-rw-r--r--tests/pos/tcpoly_infer_ticket1864.scala (renamed from tests/pending/pos/tcpoly_infer_ticket1864.scala)0
-rw-r--r--tests/pos/tcpoly_ticket2096.scala (renamed from tests/pending/pos/tcpoly_ticket2096.scala)0
-rw-r--r--tests/pos/tcpoly_variance_pos.scala (renamed from tests/pending/pos/tcpoly_variance_pos.scala)0
-rw-r--r--tests/pos/ted.scala (renamed from tests/pending/pos/ted.scala)0
-rw-r--r--tests/pos/test4.scala (renamed from tests/pending/pos/test4.scala)0
-rw-r--r--tests/pos/test5.scala (renamed from tests/pending/pos/test5.scala)0
-rw-r--r--tests/pos/test5refine.scala (renamed from tests/pending/pos/test5refine.scala)0
-rw-r--r--tests/pos/typealiases.scala (renamed from tests/pending/pos/typealiases.scala)0
-rw-r--r--tests/pos/typerep-stephane.scala (renamed from tests/pending/pos/typerep-stephane.scala)0
-rw-r--r--tests/pos/virtpatmat_alts_subst.scala (renamed from tests/pending/pos/virtpatmat_alts_subst.scala)0
-rw-r--r--tests/pos/virtpatmat_exist1.scala (renamed from tests/pending/pos/virtpatmat_exist1.scala)0
-rw-r--r--tests/pos/virtpatmat_exist3.scala (renamed from tests/pending/pos/virtpatmat_exist3.scala)0
-rw-r--r--tests/pos/virtpatmat_exist_uncurry.scala (renamed from tests/pending/pos/virtpatmat_exist_uncurry.scala)0
196 files changed, 57 insertions, 670 deletions
diff --git a/tests/pending/pos/IterableSelfRec.scala b/tests/invalid/pos/IterableSelfRec.scala
index a97833991..7fd235f12 100644
--- a/tests/pending/pos/IterableSelfRec.scala
+++ b/tests/invalid/pos/IterableSelfRec.scala
@@ -1,3 +1,4 @@
+// This does not currently work because it mixes higher-kinded types and raw type constructors.
package dotty.collection
package immutable
diff --git a/tests/pending/pos/contrib701.scala b/tests/invalid/pos/contrib701.scala
index 6f0e53a36..6f0e53a36 100644
--- a/tests/pending/pos/contrib701.scala
+++ b/tests/invalid/pos/contrib701.scala
diff --git a/tests/pending/pos/cycle-jsoup.flags b/tests/invalid/pos/cycle-jsoup.flags
index ca20f5517..ca20f5517 100644
--- a/tests/pending/pos/cycle-jsoup.flags
+++ b/tests/invalid/pos/cycle-jsoup.flags
diff --git a/tests/pending/pos/cycle-jsoup.scala b/tests/invalid/pos/cycle-jsoup.scala
index d547ecd93..d547ecd93 100644
--- a/tests/pending/pos/cycle-jsoup.scala
+++ b/tests/invalid/pos/cycle-jsoup.scala
diff --git a/tests/pending/pos/depexists.scala b/tests/invalid/pos/depexists.scala
index dff1917a4..dff1917a4 100644
--- a/tests/pending/pos/depexists.scala
+++ b/tests/invalid/pos/depexists.scala
diff --git a/tests/pending/pos/dotless-targs.scala b/tests/invalid/pos/dotless-targs.scala
index 8c0e244e4..7394f361a 100644
--- a/tests/pending/pos/dotless-targs.scala
+++ b/tests/invalid/pos/dotless-targs.scala
@@ -1,3 +1,4 @@
+// Type arguments on infix operators are not supported by the syntax
class A {
def fn1 = List apply 1
def fn2 = List apply[Int] 2
diff --git a/tests/pending/pos/five-dot-f.flags b/tests/invalid/pos/five-dot-f.flags
index 112fc720a..112fc720a 100644
--- a/tests/pending/pos/five-dot-f.flags
+++ b/tests/invalid/pos/five-dot-f.flags
diff --git a/tests/pending/pos/five-dot-f.scala b/tests/invalid/pos/five-dot-f.scala
index 8a7f86e21..8a7f86e21 100644
--- a/tests/pending/pos/five-dot-f.scala
+++ b/tests/invalid/pos/five-dot-f.scala
diff --git a/tests/pending/pos/functions.scala b/tests/invalid/pos/functions.scala
index 0207523dd..0207523dd 100644
--- a/tests/pending/pos/functions.scala
+++ b/tests/invalid/pos/functions.scala
diff --git a/tests/pending/pos/generic-sigs.scala b/tests/invalid/pos/generic-sigs.scala
index b751e215e..b751e215e 100644
--- a/tests/pending/pos/generic-sigs.scala
+++ b/tests/invalid/pos/generic-sigs.scala
diff --git a/tests/pending/pos/patmat.scala b/tests/invalid/pos/patmat.scala
index 53e1c5f1f..53e1c5f1f 100644
--- a/tests/pending/pos/patmat.scala
+++ b/tests/invalid/pos/patmat.scala
diff --git a/tests/pending/pos/pos-bug1241.scala b/tests/invalid/pos/pos-bug1241.scala
index 1038dc304..1038dc304 100644
--- a/tests/pending/pos/pos-bug1241.scala
+++ b/tests/invalid/pos/pos-bug1241.scala
diff --git a/tests/pending/pos/specializes-sym-crash.scala b/tests/invalid/pos/specializes-sym-crash.scala
index 7778ba277..e0e458170 100644
--- a/tests/pending/pos/specializes-sym-crash.scala
+++ b/tests/invalid/pos/specializes-sym-crash.scala
@@ -1,3 +1,4 @@
+// This relies on the naming of the transformed classes which will have to change in the new stdlib.
import scala.collection._
trait Foo[+A,
@@ -6,12 +7,12 @@ trait Foo[+A,
extends Seq[A] with SeqLike[A, This] with IterableView[A, Coll] with IterableViewLike[A, Coll, This] {
self =>
- trait Transformed[+B] extends SeqView[B, Coll] with super.Transformed[B] {
+ trait TransformedFoo[+B] extends SeqView[B, Coll] with super.Transformed[B] {
def length: Int
def apply(idx: Int): B
override def toString = viewToString
}
- trait Reversed extends Transformed[A] {
+ trait Reversed extends TransformedFoo[A] {
override def iterator: Iterator[A] = createReversedIterator
def length: Int = self.length
def apply(idx: Int): A = self.apply(length - 1 - idx)
diff --git a/tests/pending/pos/t2782.scala b/tests/invalid/pos/t2782.scala
index 3b387af80..3b387af80 100644
--- a/tests/pending/pos/t2782.scala
+++ b/tests/invalid/pos/t2782.scala
diff --git a/tests/pending/pos/t3577.scala b/tests/invalid/pos/t3577.scala
index 1ac1786c1..e94b69b4b 100644
--- a/tests/pending/pos/t3577.scala
+++ b/tests/invalid/pos/t3577.scala
@@ -5,6 +5,9 @@ case class C2(checks: Check[_]*);
object C {
def m(x : C2): Any = (null: Any) match {
case C2(_, rest : _*) => {
+ // Invalid: Vararg pattern cannot be split between normal and :_* patterns.
+ // This split also does not work for vararg arguments, so there's no
+ // good argument it should work for patterns
rest.map(_.value)
}
}
diff --git a/tests/invalid/pos/t3856.scala b/tests/invalid/pos/t3856.scala
new file mode 100644
index 000000000..8dfcccb5a
--- /dev/null
+++ b/tests/invalid/pos/t3856.scala
@@ -0,0 +1,16 @@
+case class C[T](x: T)
+
+case class CS(xs: C[_]*)
+
+// t3856
+object Test {
+ val x = CS(C(5), C("abc")) match { case CS(C(5), xs : _*) => xs }
+ // Invalid: Vararg pattern cannot be split between normal and :_* patterns.
+ // This split also does not work for vararg arguments, so there's no
+ // good argument it should work for patterns
+ println(x)
+
+ def foo(xs: Int*) = ()
+ val xs = List(1, 2, 3)
+ foo(1, xs:_*)
+}
diff --git a/tests/pending/pos/t4202.scala b/tests/invalid/pos/t4202.scala
index b2a0c0120..1bf0bf6eb 100644
--- a/tests/pending/pos/t4202.scala
+++ b/tests/invalid/pos/t4202.scala
@@ -1,3 +1,5 @@
+// Invalid because syntax has changed;
+// template statements cannot be lambdas.
object t4202_1 {
() => {
trait T {
diff --git a/tests/pending/pos/t4237.scala b/tests/invalid/pos/t4237.scala
index 44bc81462..45a505004 100644
--- a/tests/pending/pos/t4237.scala
+++ b/tests/invalid/pos/t4237.scala
@@ -1,3 +1,4 @@
+// Invalid because structural types are not supported.
class A {
(new { def field = 0; def field_=(i: Int) = () }).field = 5 // compiles as expected
(new { def field(implicit i: Int) = 0; def field_=(i: Int) = () }).field = 5 // compiles even with implicit params on getter
diff --git a/tests/pending/pos/t4363.scala b/tests/invalid/pos/t4363.scala
index 64cdcd935..e0ffa8fd9 100644
--- a/tests/pending/pos/t4363.scala
+++ b/tests/invalid/pos/t4363.scala
@@ -1,3 +1,4 @@
+// Invalid because lambdas can no longer be tenmplate statements.
object Test {
trait Suite { def bar() = () }
diff --git a/tests/pending/pos/t4365/a_1.scala b/tests/invalid/pos/t4365/a_1.scala
index a24b57772..0be5ca8a1 100644
--- a/tests/pending/pos/t4365/a_1.scala
+++ b/tests/invalid/pos/t4365/a_1.scala
@@ -1,3 +1,4 @@
+// Invalid because it relies on internal traits of views that will change their names.
import scala.collection._
trait SeqViewLike[+A,
diff --git a/tests/pending/pos/t4365/b_1.scala b/tests/invalid/pos/t4365/b_1.scala
index e1423813f..e1423813f 100644
--- a/tests/pending/pos/t4365/b_1.scala
+++ b/tests/invalid/pos/t4365/b_1.scala
diff --git a/tests/pending/pos/t4553.scala b/tests/invalid/pos/t4553.scala
index e9bef4099..48846a369 100644
--- a/tests/pending/pos/t4553.scala
+++ b/tests/invalid/pos/t4553.scala
@@ -1,3 +1,4 @@
+// Invalid because hk type parameters may not appear in lower bounds
trait VectorLike[+T, +V[A] <: Vector[A]] {
def +[S, VResult[S] >: V[S]](v: VResult[S]): Unit
}
diff --git a/tests/pending/pos/t5022.scala b/tests/invalid/pos/t5022.scala
index 5db71c656..5db71c656 100644
--- a/tests/pending/pos/t5022.scala
+++ b/tests/invalid/pos/t5022.scala
diff --git a/tests/pending/pos/t5119.scala b/tests/invalid/pos/t5119.scala
index 39f626e53..39f626e53 100644
--- a/tests/pending/pos/t5119.scala
+++ b/tests/invalid/pos/t5119.scala
diff --git a/tests/pending/pos/t5130.scala b/tests/invalid/pos/t5130.scala
index 676d3c705..676d3c705 100644
--- a/tests/pending/pos/t5130.scala
+++ b/tests/invalid/pos/t5130.scala
diff --git a/tests/pending/pos/t5156.scala b/tests/invalid/pos/t5156.scala
index 41b1c296e..41b1c296e 100644
--- a/tests/pending/pos/t5156.scala
+++ b/tests/invalid/pos/t5156.scala
diff --git a/tests/pending/pos/t533.scala b/tests/invalid/pos/t533.scala
index 9bc9995d9..9bc9995d9 100644
--- a/tests/pending/pos/t533.scala
+++ b/tests/invalid/pos/t533.scala
diff --git a/tests/pending/pos/t5626.scala b/tests/invalid/pos/t5626.scala
index c501dfbe6..c501dfbe6 100644
--- a/tests/pending/pos/t5626.scala
+++ b/tests/invalid/pos/t5626.scala
diff --git a/tests/pending/pos/t5654.scala b/tests/invalid/pos/t5654.scala
index 1f8d05bfe..1f8d05bfe 100644
--- a/tests/pending/pos/t5654.scala
+++ b/tests/invalid/pos/t5654.scala
diff --git a/tests/pending/pos/t6169/Exist.java b/tests/invalid/pos/t6169/Exist.java
index dfc6b36b3..dfc6b36b3 100644
--- a/tests/pending/pos/t6169/Exist.java
+++ b/tests/invalid/pos/t6169/Exist.java
diff --git a/tests/pending/pos/t6169/ExistF.java b/tests/invalid/pos/t6169/ExistF.java
index 70fabd74c..70fabd74c 100644
--- a/tests/pending/pos/t6169/ExistF.java
+++ b/tests/invalid/pos/t6169/ExistF.java
diff --git a/tests/pending/pos/t6169/ExistIndir.java b/tests/invalid/pos/t6169/ExistIndir.java
index e66d1698c..e66d1698c 100644
--- a/tests/pending/pos/t6169/ExistIndir.java
+++ b/tests/invalid/pos/t6169/ExistIndir.java
diff --git a/tests/pending/pos/t6169/OP.java b/tests/invalid/pos/t6169/OP.java
index 15e4c5640..15e4c5640 100644
--- a/tests/pending/pos/t6169/OP.java
+++ b/tests/invalid/pos/t6169/OP.java
diff --git a/tests/pending/pos/t6169/Skin.java b/tests/invalid/pos/t6169/Skin.java
index 780de1ee0..780de1ee0 100644
--- a/tests/pending/pos/t6169/Skin.java
+++ b/tests/invalid/pos/t6169/Skin.java
diff --git a/tests/pending/pos/t6169/Skinnable.java b/tests/invalid/pos/t6169/Skinnable.java
index f91eaa30d..f91eaa30d 100644
--- a/tests/pending/pos/t6169/Skinnable.java
+++ b/tests/invalid/pos/t6169/Skinnable.java
diff --git a/tests/pending/pos/t6169/skinnable.scala b/tests/invalid/pos/t6169/skinnable.scala
index 08204f29d..08204f29d 100644
--- a/tests/pending/pos/t6169/skinnable.scala
+++ b/tests/invalid/pos/t6169/skinnable.scala
diff --git a/tests/pending/pos/t6169/t6169.scala b/tests/invalid/pos/t6169/t6169.scala
index 84b2d2dad..84b2d2dad 100644
--- a/tests/pending/pos/t6169/t6169.scala
+++ b/tests/invalid/pos/t6169/t6169.scala
diff --git a/tests/pending/pos/t6367.scala b/tests/invalid/pos/t6367.scala
index 1214be741..1214be741 100644
--- a/tests/pending/pos/t6367.scala
+++ b/tests/invalid/pos/t6367.scala
diff --git a/tests/pending/pos/t711.scala b/tests/invalid/pos/t711.scala
index 4dd604096..4dd604096 100644
--- a/tests/pending/pos/t711.scala
+++ b/tests/invalid/pos/t711.scala
diff --git a/tests/pending/pos/t7505.scala b/tests/invalid/pos/t7505.scala
index bc8c7fad6..bc8c7fad6 100644
--- a/tests/pending/pos/t7505.scala
+++ b/tests/invalid/pos/t7505.scala
diff --git a/tests/pending/pos/t8023.scala b/tests/invalid/pos/t8023.scala
index 502b5c55d..9ce5619db 100644
--- a/tests/pending/pos/t8023.scala
+++ b/tests/invalid/pos/t8023.scala
@@ -1,3 +1,4 @@
+// Invalid because nested hk type parameters are no longer allowed
import language._
diff --git a/tests/pending/pos/t8219b.scala b/tests/invalid/pos/t8219b.scala
index b820447ce..b820447ce 100644
--- a/tests/pending/pos/t8219b.scala
+++ b/tests/invalid/pos/t8219b.scala
diff --git a/tests/pending/pos/t8224.scala b/tests/invalid/pos/t8224.scala
index 2fae925df..d893f6630 100644
--- a/tests/pending/pos/t8224.scala
+++ b/tests/invalid/pos/t8224.scala
@@ -1,3 +1,4 @@
+// Invalid because nested hk type parameters are no longer allowed
import language.higherKinds
trait P [N1, +E1[X <: N1]]
diff --git a/tests/pending/pos/ticket2251.scala b/tests/invalid/pos/ticket2251.scala
index 006407247..006407247 100644
--- a/tests/pending/pos/ticket2251.scala
+++ b/tests/invalid/pos/ticket2251.scala
diff --git a/tests/pending/pos/typesafecons.scala b/tests/invalid/pos/typesafecons.scala
index 524328016..524328016 100644
--- a/tests/pending/pos/typesafecons.scala
+++ b/tests/invalid/pos/typesafecons.scala
diff --git a/tests/pending/pos/unapplySeq.scala b/tests/invalid/pos/unapplySeq.scala
index cefe1cb8f..cefe1cb8f 100644
--- a/tests/pending/pos/unapplySeq.scala
+++ b/tests/invalid/pos/unapplySeq.scala
diff --git a/tests/pending/pos/imports-pos.scala b/tests/new/imports-pos.scala
index f6a55e5e0..f6a55e5e0 100644
--- a/tests/pending/pos/imports-pos.scala
+++ b/tests/new/imports-pos.scala
diff --git a/tests/pending/pos/infer2-pos.scala b/tests/new/infer2-pos.scala
index 2ce88be54..2ce88be54 100644
--- a/tests/pending/pos/infer2-pos.scala
+++ b/tests/new/infer2-pos.scala
diff --git a/tests/pending/pos/looping-jsig.scala b/tests/new/looping-jsig.scala
index 6e3313c46..6e3313c46 100644
--- a/tests/pending/pos/looping-jsig.scala
+++ b/tests/new/looping-jsig.scala
diff --git a/tests/pending/pos/matthias1.scala b/tests/new/matthias1.scala
index a923a529f..a923a529f 100644
--- a/tests/pending/pos/matthias1.scala
+++ b/tests/new/matthias1.scala
diff --git a/tests/pending/pos/michel6.scala b/tests/new/michel6.scala
index b32e8bed7..b32e8bed7 100644
--- a/tests/pending/pos/michel6.scala
+++ b/tests/new/michel6.scala
diff --git a/tests/pending/pos/moduletrans.scala b/tests/new/moduletrans.scala
index 51538417e..51538417e 100644
--- a/tests/pending/pos/moduletrans.scala
+++ b/tests/new/moduletrans.scala
diff --git a/tests/pending/pos/package-implicit/ActorRef.scala b/tests/new/package-implicit/ActorRef.scala
index de57e61ce..de57e61ce 100644
--- a/tests/pending/pos/package-implicit/ActorRef.scala
+++ b/tests/new/package-implicit/ActorRef.scala
diff --git a/tests/pending/pos/package-implicit/DataFlow.scala b/tests/new/package-implicit/DataFlow.scala
index d948280d0..d948280d0 100644
--- a/tests/pending/pos/package-implicit/DataFlow.scala
+++ b/tests/new/package-implicit/DataFlow.scala
diff --git a/tests/pending/pos/package-implicit/package.scala b/tests/new/package-implicit/package.scala
index d0f28b36b..d0f28b36b 100644
--- a/tests/pending/pos/package-implicit/package.scala
+++ b/tests/new/package-implicit/package.scala
diff --git a/tests/pending/pos/patterns.scala b/tests/new/patterns.scala
index 547d692d8..547d692d8 100644
--- a/tests/pending/pos/patterns.scala
+++ b/tests/new/patterns.scala
diff --git a/tests/pending/pos/patterns1.scala b/tests/new/patterns1.scala
index f660ea054..f660ea054 100644
--- a/tests/pending/pos/patterns1.scala
+++ b/tests/new/patterns1.scala
diff --git a/tests/pending/pos/pmbug.scala b/tests/new/pmbug.scala
index 7d94e7a8b..7d94e7a8b 100644
--- a/tests/pending/pos/pmbug.scala
+++ b/tests/new/pmbug.scala
diff --git a/tests/pending/pos/private-types-after-typer.scala b/tests/new/private-types-after-typer.scala
index 5c20cac2a..5c20cac2a 100644
--- a/tests/pending/pos/private-types-after-typer.scala
+++ b/tests/new/private-types-after-typer.scala
diff --git a/tests/pending/pos/selftails.scala b/tests/new/selftails.scala
index a4253b80c..a4253b80c 100644
--- a/tests/pending/pos/selftails.scala
+++ b/tests/new/selftails.scala
diff --git a/tests/pending/pos/seqtest2.scala b/tests/new/seqtest2.scala
index 239b1b581..239b1b581 100644
--- a/tests/pending/pos/seqtest2.scala
+++ b/tests/new/seqtest2.scala
diff --git a/tests/pending/pos/hklub0.scala b/tests/pending/pos/hklub0.scala
deleted file mode 100644
index 36cd46332..000000000
--- a/tests/pending/pos/hklub0.scala
+++ /dev/null
@@ -1,5 +0,0 @@
-object Test {
- val a : scala.collection.generic.GenericCompanion[scala.collection.immutable.Seq] = null
- val b : scala.collection.generic.GenericCompanion[scala.collection.mutable.Seq] = null
- List(a, b) // immutable.this.List.apply[scala.collection.generic.GenericCompanion[Seq]](Test.this.a, Test.this.b)
-}
diff --git a/tests/pending/pos/sammy_poly.flags b/tests/pending/pos/sammy_poly.flags
deleted file mode 100644
index 48fd86716..000000000
--- a/tests/pending/pos/sammy_poly.flags
+++ /dev/null
@@ -1 +0,0 @@
--Xexperimental
diff --git a/tests/pending/pos/sealed-final.flags b/tests/pending/pos/sealed-final.flags
deleted file mode 100644
index cfabf7a5b..000000000
--- a/tests/pending/pos/sealed-final.flags
+++ /dev/null
@@ -1 +0,0 @@
--Xfatal-warnings -Yinline-warnings -optimise \ No newline at end of file
diff --git a/tests/pending/pos/t5545/S_1.scala b/tests/pending/pos/spec-t5545/S_1.scala
index 59ec1fd85..59ec1fd85 100644
--- a/tests/pending/pos/t5545/S_1.scala
+++ b/tests/pending/pos/spec-t5545/S_1.scala
diff --git a/tests/pending/pos/t5545/S_2.scala b/tests/pending/pos/spec-t5545/S_2.scala
index 59ec1fd85..59ec1fd85 100644
--- a/tests/pending/pos/t5545/S_2.scala
+++ b/tests/pending/pos/spec-t5545/S_2.scala
diff --git a/tests/pending/pos/t1843.scala b/tests/pending/pos/t1843.scala
deleted file mode 100644
index 871b21346..000000000
--- a/tests/pending/pos/t1843.scala
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
-* Scala Compiler Will Crash On this File
-* ... Or Will It?
-*
-*/
-object Crash {
- trait UpdateType[A]
- case class StateUpdate[A](updateType : UpdateType[A], value : A)
- case object IntegerUpdateType extends UpdateType[Integer]
-
- //However this method will cause a crash
- def crash(updates: List[StateUpdate[_]]): Unit = {
- updates match {
- case Nil =>
- case u::us =>
- u match {
- //Line below seems to be the crashing line
- case StateUpdate(key, newValue) if (key == IntegerUpdateType) =>
- println("Requires a statement to induce the crash")
- case _ =>
- }
- }
- }
-}
diff --git a/tests/pending/pos/t2613.scala b/tests/pending/pos/t2613.scala
deleted file mode 100644
index 3a64dbc28..000000000
--- a/tests/pending/pos/t2613.scala
+++ /dev/null
@@ -1,11 +0,0 @@
-import language.existentials
-
-object Test {
- class Row
-
- abstract class MyRelation [R <: Row, +Relation <: MyRelation[R, Relation]]
-
- type M = MyRelation[R, Relation] forSome {type R <: Row; type Relation <: MyRelation[R, Relation]}
-
- var (x,y): (String, M) = null
-}
diff --git a/tests/pending/pos/t3252.flags b/tests/pending/pos/t3252.flags
deleted file mode 100644
index eb4d19bcb..000000000
--- a/tests/pending/pos/t3252.flags
+++ /dev/null
@@ -1 +0,0 @@
--optimise \ No newline at end of file
diff --git a/tests/pending/pos/t3856.scala b/tests/pending/pos/t3856.scala
deleted file mode 100644
index 6b38edc52..000000000
--- a/tests/pending/pos/t3856.scala
+++ /dev/null
@@ -1,9 +0,0 @@
-case class C[T](x: T)
-
-case class CS(xs: C[_]*)
-
-// t3856
-object Test {
- val x = CS(C(5), C("abc")) match { case CS(C(5), xs : _*) => xs }
- println(x)
-}
diff --git a/tests/pending/pos/t4176b.scala b/tests/pending/pos/t4176b.scala
deleted file mode 100644
index f7d83365c..000000000
--- a/tests/pending/pos/t4176b.scala
+++ /dev/null
@@ -1,5 +0,0 @@
-object Test {
- def foo(a: String*) = a
- val fooEta = foo _
- (foo: Seq[String] => Seq[String])
-}
diff --git a/tests/pending/pos/t4269.scala b/tests/pending/pos/t4269.scala
index 99a30785b..fe0c20103 100644
--- a/tests/pending/pos/t4269.scala
+++ b/tests/pending/pos/t4269.scala
@@ -1,5 +1,5 @@
class A {
PartialFunction.condOpt(Nil) {
- case items@List(_*) if true =>
+ case items@List(_: _*) if true =>
}
}
diff --git a/tests/pending/pos/t4579.scala b/tests/pending/pos/t4579.scala
deleted file mode 100644
index 8ce657eff..000000000
--- a/tests/pending/pos/t4579.scala
+++ /dev/null
@@ -1,518 +0,0 @@
-//############################################################################
-// Lisp interpreter (revived as an optimizer test.)
-//############################################################################
-
-//############################################################################
-// Lisp Scanner
-
-class LispTokenizer(s: String) extends Iterator[String] {
- private var i = 0;
- private def isDelimiter(ch: Char) = ch <= ' ' || ch == '(' || ch == ')'
- def hasNext: Boolean = {
- while (i < s.length() && s.charAt(i) <= ' ') i += 1
- i < s.length()
- }
- def next: String =
- if (hasNext) {
- val start = i
- if (isDelimiter(s charAt i)) i += 1
- else
- do i = i + 1
- while (!isDelimiter(s charAt i))
- s.substring(start, i)
- } else sys.error("premature end of string")
-}
-
-//############################################################################
-// Lisp Interface
-
-trait Lisp {
- type Data
-
- def string2lisp(s: String): Data
- def lisp2string(s: Data): String
-
- def evaluate(d: Data): Data
- // !!! def evaluate(s: String): Data = evaluate(string2lisp(s))
- def evaluate(s: String): Data
-}
-
-//############################################################################
-// Lisp Implementation Using Case Classes
-
-object LispCaseClasses extends Lisp {
-
- import List.range
-
- trait Data {
- def elemsToString(): String = toString();
- }
- case class CONS(car: Data, cdr: Data) extends Data {
- override def toString() = "(" + elemsToString() + ")";
- override def elemsToString() = car.toString() + (cdr match {
- case NIL() => ""
- case _ => " " + cdr.elemsToString();
- })
- }
- case class NIL() extends Data { // !!! use case object
- override def toString() = "()";
- }
- case class SYM(name: String) extends Data {
- override def toString() = name;
- }
- case class NUM(x: Int) extends Data {
- override def toString() = x.toString();
- }
- case class STR(x: String) extends Data {
- override def toString() = "\"" + x + "\"";
- }
- case class FUN(f: List[Data] => Data) extends Data {
- override def toString() = "<fn>";
- }
-
- def list(): Data =
- NIL();
- def list(x0: Data): Data =
- CONS(x0, NIL());
- def list(x0: Data, x1: Data): Data =
- CONS(x0, list(x1));
- def list(x0: Data, x1: Data, x2: Data): Data =
- CONS(x0, list(x1, x2));
- def list(x0: Data, x1: Data, x2: Data, x3: Data): Data =
- CONS(x0, list(x1, x2, x3));
- def list(x0: Data, x1: Data, x2: Data, x3: Data, x4: Data): Data =
- CONS(x0, list(x1, x2, x3, x4));
- def list(x0: Data, x1: Data, x2: Data, x3: Data, x4: Data, x5: Data): Data =
- CONS(x0, list(x1, x2, x3, x4, x5));
- def list(x0: Data, x1: Data, x2: Data, x3: Data, x4: Data, x5: Data,
- x6: Data): Data =
- CONS(x0, list(x1, x2, x3, x4, x5, x6));
- def list(x0: Data, x1: Data, x2: Data, x3: Data, x4: Data, x5: Data,
- x6: Data, x7: Data): Data =
- CONS(x0, list(x1, x2, x3, x4, x5, x6, x7));
- def list(x0: Data, x1: Data, x2: Data, x3: Data, x4: Data, x5: Data,
- x6: Data, x7: Data, x8: Data): Data =
- CONS(x0, list(x1, x2, x3, x4, x5, x6, x7, x8));
- def list(x0: Data, x1: Data, x2: Data, x3: Data, x4: Data, x5: Data,
- x6: Data, x7: Data, x8: Data, x9: Data): Data =
- CONS(x0, list(x1, x2, x3, x4, x5, x6, x7, x8, x9));
-
- var curexp: Data = null
- var trace: Boolean = false
- var indent: Int = 0
-
- def lispError[a](msg: String): a =
- sys.error("error: " + msg + "\n" + curexp);
-
- trait Environment {
- def lookup(n: String): Data;
- def extendRec(name: String, expr: Environment => Data) =
- new Environment {
- def lookup(n: String): Data =
- if (n == name) expr(this) else Environment.this.lookup(n);
- }
- def extend(name: String, v: Data) = extendRec(name, (env1 => v));
- }
- val EmptyEnvironment = new Environment {
- def lookup(n: String): Data = lispError("undefined: " + n);
- }
-
- def toList(x: Data): List[Data] = x match {
- case NIL() => List()
- case CONS(y, ys) => y :: toList(ys)
- case _ => lispError("malformed list: " + x);
- }
-
- def toBoolean(x: Data) = x match {
- case NUM(0) => false
- case _ => true
- }
-
- def normalize(x: Data): Data = x match {
- case CONS(SYM("def"),
- CONS(CONS(SYM(name), args), CONS(body, CONS(expr, NIL())))) =>
- normalize(list(SYM("def"),
- SYM(name), list(SYM("lambda"), args, body), expr))
- case CONS(SYM("cond"), CONS(CONS(SYM("else"), CONS(expr, NIL())),NIL())) =>
- normalize(expr)
- case CONS(SYM("cond"), CONS(CONS(test, CONS(expr, NIL())), rest)) =>
- normalize(list(SYM("if"), test, expr, CONS(SYM("cond"), rest)))
- case CONS(h, t) => CONS(normalize(h), normalize(t))
- case _ => x
- }
-
- def eval(x: Data, env: Environment): Data = {
- val prevexp = curexp;
- curexp = x;
- if (trace) {
- for (x <- range(1, indent)) Console.print(" ");
- Console.println("===> " + x);
- indent = indent + 1;
- }
- val result = eval1(x, env);
- if (trace) {
- indent = indent - 1;
- for (x <- range(1, indent)) Console.print(" ");
- Console.println("<=== " + result);
- }
- curexp = prevexp;
- result
- }
-
- def eval1(x: Data, env: Environment): Data = x match {
- case SYM(name) =>
- env lookup name
- case CONS(SYM("def"), CONS(SYM(name), CONS(y, CONS(z, NIL())))) =>
- eval(z, env.extendRec(name, (env1 => eval(y, env1))))
- case CONS(SYM("val"), CONS(SYM(name), CONS(y, CONS(z, NIL())))) =>
- eval(z, env.extend(name, eval(y, env)))
- case CONS(SYM("lambda"), CONS(params, CONS(y, NIL()))) =>
- mkLambda(params, y, env)
- case CONS(SYM("if"), CONS(c, CONS(t, CONS(e, NIL())))) =>
- if (toBoolean(eval(c, env))) eval(t, env) else eval(e, env)
- case CONS(SYM("quote"), CONS(x, NIL())) =>
- x
- case CONS(y, xs) =>
- apply(eval(y, env), toList(xs) map (x => eval(x, env)))
- case NUM(_) => x
- case STR(_) => x
- case FUN(_) => x
- case _ =>
- lispError("illegal term")
- }
-
- def apply(fn: Data, args: List[Data]): Data = fn match {
- case FUN(f) => f(args);
- case _ => lispError("application of non-function: " + fn);
- }
-
- def mkLambda(params: Data, expr: Data, env: Environment): Data = {
-
- def extendEnv(env: Environment,
- ps: List[String], args: List[Data]): Environment =
- (ps, args) match {
- case (List(), List()) =>
- env
- case (p :: ps1, arg :: args1) =>
- extendEnv(env.extend(p, arg), ps1, args1)
- case _ =>
- lispError("wrong number of arguments")
- }
-
- val ps: List[String] = toList(params) map {
- case SYM(name) => name
- case _ => sys.error("illegal parameter list");
- }
-
- FUN(args => eval(expr, extendEnv(env, ps, args)))
- }
-
- val globalEnv = EmptyEnvironment
- .extend("=", FUN({
- case List(NUM(arg1),NUM(arg2)) => NUM(if (arg1 == arg2) 1 else 0)
- case List(STR(arg1),STR(arg2)) => NUM(if (arg1 == arg2) 1 else 0)}))
- .extend("+", FUN({
- case List(NUM(arg1),NUM(arg2)) => NUM(arg1 + arg2)
- case List(STR(arg1),STR(arg2)) => STR(arg1 + arg2)}))
- .extend("-", FUN({
- case List(NUM(arg1),NUM(arg2)) => NUM(arg1 - arg2)}))
- .extend("*", FUN({
- case List(NUM(arg1),NUM(arg2)) => NUM(arg1 * arg2)}))
- .extend("/", FUN({
- case List(NUM(arg1),NUM(arg2)) => NUM(arg1 / arg2)}))
- .extend("car", FUN({
- case List(CONS(x, xs)) => x}))
- .extend("cdr", FUN({
- case List(CONS(x, xs)) => xs}))
- .extend("null?", FUN({
- case List(NIL()) => NUM(1)
- case _ => NUM(0)}))
- .extend("cons", FUN({
- case List(x, y) => CONS(x, y)}));
-
- def evaluate(x: Data): Data = eval(normalize(x), globalEnv);
- def evaluate(s: String): Data = evaluate(string2lisp(s));
-
- def string2lisp(s: String): Data = {
- val it = new LispTokenizer(s);
- def parse(token: String): Data = {
- if (token == "(") parseList
- else if (token == ")") sys.error("unbalanced parentheses")
- else if ('0' <= token.charAt(0) && token.charAt(0) <= '9')
- NUM(token.toInt)
- else if (token.charAt(0) == '\"' && token.charAt(token.length()-1)=='\"')
- STR(token.substring(1,token.length() - 1))
- else SYM(token)
- }
- def parseList: Data = {
- val token = it.next;
- if (token == ")") NIL() else CONS(parse(token), parseList)
- }
- parse(it.next)
- }
-
- def lisp2string(d: Data): String = d.toString();
-}
-
-//############################################################################
-// Lisp Implementation Using Any
-
-object LispAny extends Lisp {
-
- import List._;
-
- type Data = Any;
-
- case class Lambda(f: List[Data] => Data);
-
- var curexp: Data = null;
- var trace: Boolean = false;
- var indent: Int = 0;
-
- def lispError[a](msg: String): a =
- sys.error("error: " + msg + "\n" + curexp);
-
- trait Environment {
- def lookup(n: String): Data;
- def extendRec(name: String, expr: Environment => Data) =
- new Environment {
- def lookup(n: String): Data =
- if (n == name) expr(this) else Environment.this.lookup(n);
- }
- def extend(name: String, v: Data) = extendRec(name, (env1 => v));
- }
- val EmptyEnvironment = new Environment {
- def lookup(n: String): Data = lispError("undefined: " + n);
- }
-
- def asList(x: Data): List[Data] = x match {
- case y: List[_] => y
- case _ => lispError("malformed list: " + x)
- }
-
- def asInt(x: Data): Int = x match {
- case y: Int => y
- case _ => lispError("not an integer: " + x)
- }
-
- def asString(x: Data): String = x match {
- case y: String => y
- case _ => lispError("not a string: " + x)
- }
-
- def asBoolean(x: Data): Boolean = x != 0
-
- def normalize(x: Data): Data = x match {
- case 'and :: x :: y :: Nil =>
- normalize('if :: x :: y :: 0 :: Nil)
- case 'or :: x :: y :: Nil =>
- normalize('if :: x :: 1 :: y :: Nil)
- case 'def :: (name :: args) :: body :: expr :: Nil =>
- normalize('def :: name :: ('lambda :: args :: body :: Nil) :: expr :: Nil)
- case 'cond :: ('else :: expr :: Nil) :: rest =>
- normalize(expr);
- case 'cond :: (test :: expr :: Nil) :: rest =>
- normalize('if :: test :: expr :: ('cond :: rest) :: Nil)
- case 'cond :: 'else :: expr :: Nil =>
- normalize(expr)
- case h :: t =>
- normalize(h) :: asList(normalize(t))
- case _ =>
- x
- }
-
- def eval(x: Data, env: Environment): Data = {
- val prevexp = curexp;
- curexp = x;
- if (trace) {
- for (x <- range(1, indent)) Console.print(" ");
- Console.println("===> " + x);
- indent += 1;
- }
- val result = eval1(x, env);
- if (trace) {
- indent -= 1;
- for (x <- range(1, indent)) Console.print(" ");
- Console.println("<=== " + result);
- }
- curexp = prevexp;
- result
- }
-
- def eval1(x: Data, env: Environment): Data = x match {
- case Symbol(name) =>
- env lookup name
- case 'def :: Symbol(name) :: y :: z :: Nil =>
- eval(z, env.extendRec(name, (env1 => eval(y, env1))))
- case 'val :: Symbol(name) :: y :: z :: Nil =>
- eval(z, env.extend(name, eval(y, env)))
- case 'lambda :: params :: y :: Nil =>
- mkLambda(params, y, env)
- case 'if :: c :: y :: z :: Nil =>
- if (asBoolean(eval(c, env))) eval(y, env) else eval(z, env)
- case 'quote :: y :: Nil =>
- y
- case y :: z =>
- apply(eval(y, env), z map (x => eval(x, env)))
- case Lambda(_) => x
- case y: String => x
- case y: Int => x
- case y => lispError("illegal term")
- }
-
- def lisp2string(x: Data): String = x match {
- case Symbol(name) => name
- case Nil => "()"
- case y :: ys =>
- def list2string(xs: List[Data]): String = xs match {
- case List() => ""
- case y :: ys => " " + lisp2string(y) + list2string(ys)
- }
- "(" + lisp2string(y) + list2string(ys) + ")"
- case _ => if (x.isInstanceOf[String]) "\"" + x + "\""; else x.toString()
- }
-
- def apply(fn: Data, args: List[Data]): Data = fn match {
- case Lambda(f) => f(args);
- case _ => lispError("application of non-function: " + fn + " to " + args);
- }
-
- def mkLambda(params: Data, expr: Data, env: Environment): Data = {
-
- def extendEnv(env: Environment,
- ps: List[String], args: List[Data]): Environment =
- (ps, args) match {
- case (List(), List()) =>
- env
- case (p :: ps1, arg :: args1) =>
- extendEnv(env.extend(p, arg), ps1, args1)
- case _ =>
- lispError("wrong number of arguments")
- }
-
- val ps: List[String] = asList(params) map {
- case Symbol(name) => name
- case _ => sys.error("illegal parameter list");
- }
-
- Lambda(args => eval(expr, extendEnv(env, ps, args)))
- }
-
- val globalEnv = EmptyEnvironment
- .extend("=", Lambda{
- case List(arg1, arg2) => if (arg1 == arg2) 1 else 0})
- .extend("+", Lambda{
- case List(arg1: Int, arg2: Int) => arg1 + arg2
- case List(arg1: String, arg2: String) => arg1 + arg2})
- .extend("-", Lambda{
- case List(arg1: Int, arg2: Int) => arg1 - arg2})
- .extend("*", Lambda{
- case List(arg1: Int, arg2: Int) => arg1 * arg2})
- .extend("/", Lambda{
- case List(arg1: Int, arg2: Int) => arg1 / arg2})
- .extend("nil", Nil)
- .extend("cons", Lambda{
- case List(arg1, arg2) => arg1 :: asList(arg2)})
- .extend("car", Lambda{
- case List(x :: xs) => x})
- .extend("cdr", Lambda{
- case List(x :: xs) => xs})
- .extend("null?", Lambda{
- case List(Nil) => 1
- case _ => 0});
-
- def evaluate(x: Data): Data = eval(normalize(x), globalEnv);
- def evaluate(s: String): Data = evaluate(string2lisp(s));
-
- def string2lisp(s: String): Data = {
- val it = new LispTokenizer(s);
- def parse(token: String): Data = {
- if (token == "(") parseList
- else if (token == ")") sys.error("unbalanced parentheses")
- //else if (Character.isDigit(token.charAt(0)))
- else if (token.charAt(0).isDigit)
- token.toInt
- else if (token.charAt(0) == '\"' && token.charAt(token.length()-1)=='\"')
- token.substring(1,token.length() - 1)
- else Symbol(token)
- }
- def parseList: List[Data] = {
- val token = it.next;
- if (token == ")") Nil else parse(token) :: parseList
- }
- parse(it.next)
- }
-}
-
-//############################################################################
-// List User
-
-class LispUser(lisp: Lisp) {
-
- import lisp._;
-
- def evaluate(s: String) = lisp2string(lisp.evaluate(s));
-
- def run = {
-
- Console.println(string2lisp("(lambda (x) (+ (* x x) 1))").asInstanceOf[AnyRef]);
- Console.println(lisp2string(string2lisp("(lambda (x) (+ (* x x) 1))")));
- Console.println;
-
- Console.println("( '(1 2 3)) = " + evaluate(" (quote(1 2 3))"));
- Console.println("(car '(1 2 3)) = " + evaluate("(car (quote(1 2 3)))"));
- Console.println("(cdr '(1 2 3)) = " + evaluate("(cdr (quote(1 2 3)))"));
- Console.println("(null? '(2 3)) = " + evaluate("(null? (quote(2 3)))"));
- Console.println("(null? '()) = " + evaluate("(null? (quote()))"));
- Console.println;
-
- Console.println("faculty(10) = " + evaluate(
- "(def (faculty n) " +
- "(if (= n 0) " +
- "1 " +
- "(* n (faculty (- n 1)))) " +
- "(faculty 10))"));
- Console.println("faculty(10) = " + evaluate(
- "(def (faculty n) " +
- "(cond " +
- "((= n 0) 1) " +
- "(else (* n (faculty (- n 1))))) " +
- "(faculty 10))"));
- Console.println("foobar = " + evaluate(
- "(def (foo n) " +
- "(cond " +
- "((= n 0) \"a\")" +
- "((= n 1) \"b\")" +
- "((= (/ n 2) 1) " +
- "(cond " +
- "((= n 2) \"c\")" +
- "(else \"d\")))" +
- "(else " +
- "(def (bar m) " +
- "(cond " +
- "((= m 0) \"e\")" +
- "((= m 1) \"f\")" +
- "(else \"z\"))" +
- "(bar (- n 4)))))" +
- "(val nil (quote ())" +
- "(val v1 (foo 0) " +
- "(val v2 (+ (foo 1) (foo 2)) " +
- "(val v3 (+ (+ (foo 3) (foo 4)) (foo 5)) " +
- "(val v4 (foo 6) " +
- "(cons v1 (cons v2 (cons v3 (cons v4 nil))))))))))"));
- Console.println;
- }
-}
-
-//############################################################################
-// Main
-
-object Test {
- def main(args: Array[String]): Unit = {
- new LispUser(LispCaseClasses).run;
- new LispUser(LispAny).run;
- ()
- }
-}
-
-//############################################################################
diff --git a/tests/pending/pos/t4760.scala b/tests/pending/pos/t4760.scala
deleted file mode 100644
index d4407a86b..000000000
--- a/tests/pending/pos/t4760.scala
+++ /dev/null
@@ -1,34 +0,0 @@
-
-class Test {
- // parses
- def f1 = {
- import scala._;
- }
- // b.scala:7: error: ';' expected but '}' found.
- // }
- // ^
- // one error found
- def f2 = {
- import scala._
- }
- def f2b = {
- import scala.collection.mutable.{ Map => MMap }
- }
- def f(): Unit = {
- locally {
- import scala.util.Properties.lineSeparator
- }
- }
-
- // parses
- def f3 = {
- import scala._
- 5
- }
- locally { (x: Int) =>
- import scala.util._
- }
- 1 match {
- case 1 => import scala.concurrent._
- }
-}
diff --git a/tests/pending/pos/t5845.scala b/tests/pending/pos/t5845.scala
index 823c722c1..b747a025e 100644
--- a/tests/pending/pos/t5845.scala
+++ b/tests/pending/pos/t5845.scala
@@ -4,13 +4,13 @@ class Num[T] {
}
class A {
- implicit def infixOps[T, CC[X] <: Num[X]](lhs: T)(implicit num: CC[T]) = num.mkOps
- implicit val n1 = new Num[Int] { }
- println(5 +++ 5)
+ implicit def infixOps[T, CC[X] <: Num[X]](lhs: T)(implicit num: CC[T]): num.Ops = num.mkOps
+ implicit val n1: Num[Int] = new Num[Int] { }
+ println(5 +++ 5) // should dependent be implicits forbidden?
}
class B {
implicit def infixOps[T, CC[X] <: Num[X]](lhs: T)(implicit num: CC[T]) : CC[T]#Ops = num.mkOps
- implicit val n1 = new Num[Int] {}
+ implicit val n1: Num[Int] = new Num[Int] {}
println(5 +++ 5)
}
diff --git a/tests/pending/pos/t6335.scala b/tests/pending/pos/t6335.scala
deleted file mode 100644
index eb052db19..000000000
--- a/tests/pending/pos/t6335.scala
+++ /dev/null
@@ -1,25 +0,0 @@
-object E extends Z {
- def X = 3
- implicit class X(val i: Int) {
- def xx = i
- }
-
- def Y(a: Any) = 0
- object Y
- implicit class Y(val i: String) { def yy = i }
-
- implicit class Z(val i: Boolean) { def zz = i }
-}
-
-trait Z {
- def Z = 0
-}
-
-object Test {
- import E._
- 0.xx
-
- "".yy
-
- true.zz
-}
diff --git a/tests/pending/pos/t6976/Exts_1.scala b/tests/pending/pos/t6976/Exts_1.scala
index 9b3a69edd..f5eaeea45 100644
--- a/tests/pending/pos/t6976/Exts_1.scala
+++ b/tests/pending/pos/t6976/Exts_1.scala
@@ -6,5 +6,5 @@ object Exts {
trait Exts {
import language.implicitConversions
- implicit def AnyExts[T](o: T) = Exts.AnyExts(o)
+ implicit def AnyExts[T](o: T): Exts.AnyExts[T] = Exts.AnyExts(o)
}
diff --git a/tests/pending/pos/t7517.scala b/tests/pending/pos/t7517.scala
index df4f40130..d0462c48d 100644
--- a/tests/pending/pos/t7517.scala
+++ b/tests/pending/pos/t7517.scala
@@ -1,3 +1,4 @@
+// Invalid because nested hk type parameters are no longer allowed
trait Box[ K[A[x]] ]
object Box {
diff --git a/tests/pending/pos/t7902.scala b/tests/pending/pos/t7902.scala
index 47c525c17..7793d3723 100644
--- a/tests/pending/pos/t7902.scala
+++ b/tests/pending/pos/t7902.scala
@@ -1,3 +1,4 @@
+// Invalid because nested hk type parameters are no longer allowed
import scala.language.higherKinds
object Bug {
diff --git a/tests/pending/pos/t7919.scala b/tests/pending/pos/t7919.scala
deleted file mode 100644
index 64f261ec1..000000000
--- a/tests/pending/pos/t7919.scala
+++ /dev/null
@@ -1,6 +0,0 @@
-
-object X {
- val x = s""
- val y = true
-}
-
diff --git a/tests/new/conforms.scala b/tests/pos/conforms.scala
index f07488d28..f07488d28 100644
--- a/tests/new/conforms.scala
+++ b/tests/pos/conforms.scala
diff --git a/tests/pending/pos/constfold.scala b/tests/pos/constfold.scala
index 8d431efba..8d431efba 100644
--- a/tests/pending/pos/constfold.scala
+++ b/tests/pos/constfold.scala
diff --git a/tests/pending/pos/contextbounds-implicits-new.scala b/tests/pos/contextbounds-implicits-new.scala
index 8389d1332..8389d1332 100644
--- a/tests/pending/pos/contextbounds-implicits-new.scala
+++ b/tests/pos/contextbounds-implicits-new.scala
diff --git a/tests/pending/pos/delambdafy-lambdalift.scala b/tests/pos/delambdafy-lambdalift.scala
index e9da24ef3..e9da24ef3 100644
--- a/tests/pending/pos/delambdafy-lambdalift.scala
+++ b/tests/pos/delambdafy-lambdalift.scala
diff --git a/tests/pending/pos/exbound.scala b/tests/pos/exbound.scala
index be78abc26..be78abc26 100644
--- a/tests/pending/pos/exbound.scala
+++ b/tests/pos/exbound.scala
diff --git a/tests/pos/hkrange.scala b/tests/pos/hkrange.scala
deleted file mode 100644
index a6803230e..000000000
--- a/tests/pos/hkrange.scala
+++ /dev/null
@@ -1,5 +0,0 @@
-class A {
- def f[CC[X] <: Traversable[X]](x: CC[Int]) = ()
-
- f(1 to 5)
-}
diff --git a/tests/new/implicits.scala b/tests/pos/implicits.scala
index 1a3e0b4da..1a3e0b4da 100644
--- a/tests/new/implicits.scala
+++ b/tests/pos/implicits.scala
diff --git a/tests/pending/pos/philippe4.scala b/tests/pos/philippe4.scala
index 9ce3691f5..9ce3691f5 100644
--- a/tests/pending/pos/philippe4.scala
+++ b/tests/pos/philippe4.scala
diff --git a/tests/pos/seq-ordering.scala b/tests/pos/seq-ordering.scala
deleted file mode 100644
index 517d8ae8a..000000000
--- a/tests/pos/seq-ordering.scala
+++ /dev/null
@@ -1,9 +0,0 @@
-import Ordering.Implicits._
-
-class A {
- import Predef.{ implicitly => ? }
-
- ?[Ordering[List[Int]]]
- ?[Ordering[IndexedSeq[(Int, String)]]]
- ?[Ordering[Seq[Seq[Int]]]]
-}
diff --git a/tests/pending/pos/t1048.scala b/tests/pos/t1048.scala
index b8694b38e..b8694b38e 100644
--- a/tests/pending/pos/t1048.scala
+++ b/tests/pos/t1048.scala
diff --git a/tests/pos/t1843.scala b/tests/pos/t1843.scala
index 5e8554a93..871b21346 100644
--- a/tests/pos/t1843.scala
+++ b/tests/pos/t1843.scala
@@ -3,10 +3,9 @@
* ... Or Will It?
*
*/
-
object Crash {
- trait UpdateType[+A]
- case class StateUpdate[+A](updateType : UpdateType[A], value : A)
+ trait UpdateType[A]
+ case class StateUpdate[A](updateType : UpdateType[A], value : A)
case object IntegerUpdateType extends UpdateType[Integer]
//However this method will cause a crash
diff --git a/tests/pending/pos/t3274.scala b/tests/pos/t3274.scala
index bd8b080c9..bd8b080c9 100644
--- a/tests/pending/pos/t3274.scala
+++ b/tests/pos/t3274.scala
diff --git a/tests/pending/pos/t3477.scala b/tests/pos/t3477.scala
index 6a94baa6c..6a94baa6c 100644
--- a/tests/pending/pos/t3477.scala
+++ b/tests/pos/t3477.scala
diff --git a/tests/pending/pos/t3480.scala b/tests/pos/t3480.scala
index ba2e1a4b8..ba2e1a4b8 100644
--- a/tests/pending/pos/t3480.scala
+++ b/tests/pos/t3480.scala
diff --git a/tests/pending/pos/t3498-new.scala b/tests/pos/t3498-new.scala
index ccf2af9de..ccf2af9de 100644
--- a/tests/pending/pos/t3498-new.scala
+++ b/tests/pos/t3498-new.scala
diff --git a/tests/pending/pos/t3534.scala b/tests/pos/t3534.scala
index 44d3aafb6..44d3aafb6 100644
--- a/tests/pending/pos/t3534.scala
+++ b/tests/pos/t3534.scala
diff --git a/tests/pending/pos/t3568.scala b/tests/pos/t3568.scala
index 50f0cdb2e..50f0cdb2e 100644
--- a/tests/pending/pos/t3568.scala
+++ b/tests/pos/t3568.scala
diff --git a/tests/pending/pos/t3582b.scala b/tests/pos/t3582b.scala
index f7778148e..f7778148e 100644
--- a/tests/pending/pos/t3582b.scala
+++ b/tests/pos/t3582b.scala
diff --git a/tests/pending/pos/t360.scala b/tests/pos/t360.scala
index f3716d4f9..f3716d4f9 100644
--- a/tests/pending/pos/t360.scala
+++ b/tests/pos/t360.scala
diff --git a/tests/pending/pos/t3612.scala b/tests/pos/t3612.scala
index a9d063998..a9d063998 100644
--- a/tests/pending/pos/t3612.scala
+++ b/tests/pos/t3612.scala
diff --git a/tests/pending/pos/t3688.scala b/tests/pos/t3688.scala
index bf7983081..bf7983081 100644
--- a/tests/pending/pos/t3688.scala
+++ b/tests/pos/t3688.scala
diff --git a/tests/pending/pos/t3777.scala b/tests/pos/t3777.scala
index 165eeebfd..165eeebfd 100644
--- a/tests/pending/pos/t3777.scala
+++ b/tests/pos/t3777.scala
diff --git a/tests/pending/pos/t3859.scala b/tests/pos/t3859.scala
index 992207301..992207301 100644
--- a/tests/pending/pos/t3859.scala
+++ b/tests/pos/t3859.scala
diff --git a/tests/pending/pos/t3869.scala b/tests/pos/t3869.scala
index 581c11c81..581c11c81 100644
--- a/tests/pending/pos/t3869.scala
+++ b/tests/pos/t3869.scala
diff --git a/tests/pending/pos/t3960.scala b/tests/pos/t3960.scala
index 5c658e9fb..5c658e9fb 100644
--- a/tests/pending/pos/t3960.scala
+++ b/tests/pos/t3960.scala
diff --git a/tests/pending/pos/t3986.scala b/tests/pos/t3986.scala
index ea6c64fde..ea6c64fde 100644
--- a/tests/pending/pos/t3986.scala
+++ b/tests/pos/t3986.scala
diff --git a/tests/pending/pos/t404.scala b/tests/pos/t404.scala
index 8f5e8bef5..8f5e8bef5 100644
--- a/tests/pending/pos/t404.scala
+++ b/tests/pos/t404.scala
diff --git a/tests/pending/pos/t415.scala b/tests/pos/t415.scala
index 355b6136d..355b6136d 100644
--- a/tests/pending/pos/t415.scala
+++ b/tests/pos/t415.scala
diff --git a/tests/pending/pos/t4176.scala b/tests/pos/t4176.scala
index b4f1e705b..b4f1e705b 100644
--- a/tests/pending/pos/t4176.scala
+++ b/tests/pos/t4176.scala
diff --git a/tests/pending/pos/t430-feb09.scala b/tests/pos/t430-feb09.scala
index 1499f32b7..1499f32b7 100644
--- a/tests/pending/pos/t430-feb09.scala
+++ b/tests/pos/t430-feb09.scala
diff --git a/tests/pending/pos/t4336.scala b/tests/pos/t4336.scala
index e10d00158..e10d00158 100644
--- a/tests/pending/pos/t4336.scala
+++ b/tests/pos/t4336.scala
diff --git a/tests/pending/pos/t4345.scala b/tests/pos/t4345.scala
index b0131d5fa..b0131d5fa 100644
--- a/tests/pending/pos/t4345.scala
+++ b/tests/pos/t4345.scala
diff --git a/tests/pending/pos/t4545.scala b/tests/pos/t4545.scala
index b2b67fa8f..b2b67fa8f 100644
--- a/tests/pending/pos/t4545.scala
+++ b/tests/pos/t4545.scala
diff --git a/tests/pending/pos/t460.scala b/tests/pos/t460.scala
index 3fc13e4dd..3fc13e4dd 100644
--- a/tests/pending/pos/t460.scala
+++ b/tests/pos/t460.scala
diff --git a/tests/pending/pos/t4853.scala b/tests/pos/t4853.scala
index f227ef36e..f227ef36e 100644
--- a/tests/pending/pos/t4853.scala
+++ b/tests/pos/t4853.scala
diff --git a/tests/pending/pos/t4859.scala b/tests/pos/t4859.scala
index 284a39b7a..284a39b7a 100644
--- a/tests/pending/pos/t4859.scala
+++ b/tests/pos/t4859.scala
diff --git a/tests/pos/t4911.flags b/tests/pos/t4911.flags
new file mode 100644
index 000000000..a5c112f5a
--- /dev/null
+++ b/tests/pos/t4911.flags
@@ -0,0 +1 @@
+-language:Scala2 \ No newline at end of file
diff --git a/tests/pending/pos/t4911.scala b/tests/pos/t4911.scala
index cfb3792ae..cfb3792ae 100644
--- a/tests/pending/pos/t4911.scala
+++ b/tests/pos/t4911.scala
diff --git a/tests/pending/pos/t4975.scala b/tests/pos/t4975.scala
index 3339631dc..3339631dc 100644
--- a/tests/pending/pos/t4975.scala
+++ b/tests/pos/t4975.scala
diff --git a/tests/pending/pos/t5012.scala b/tests/pos/t5012.scala
index 84404495c..84404495c 100644
--- a/tests/pending/pos/t5012.scala
+++ b/tests/pos/t5012.scala
diff --git a/tests/pending/pos/t5029.scala b/tests/pos/t5029.scala
index f32d0c650..f32d0c650 100644
--- a/tests/pending/pos/t5029.scala
+++ b/tests/pos/t5029.scala
diff --git a/tests/pending/pos/t5041.scala b/tests/pos/t5041.scala
index 78a1b27d5..78a1b27d5 100644
--- a/tests/pending/pos/t5041.scala
+++ b/tests/pos/t5041.scala
diff --git a/tests/pending/pos/t5082.scala b/tests/pos/t5082.scala
index 63eeda38b..63eeda38b 100644
--- a/tests/pending/pos/t5082.scala
+++ b/tests/pos/t5082.scala
diff --git a/tests/pending/pos/t5541.scala b/tests/pos/t5541.scala
index 54e2b6518..54e2b6518 100644
--- a/tests/pending/pos/t5541.scala
+++ b/tests/pos/t5541.scala
diff --git a/tests/pending/pos/t566.scala b/tests/pos/t566.scala
index 6a2a0a362..6a2a0a362 100644
--- a/tests/pending/pos/t566.scala
+++ b/tests/pos/t566.scala
diff --git a/tests/pending/pos/t5720-ownerous.scala b/tests/pos/t5720-ownerous.scala
index e171ce9c2..e171ce9c2 100644
--- a/tests/pending/pos/t5720-ownerous.scala
+++ b/tests/pos/t5720-ownerous.scala
diff --git a/tests/pending/pos/t5729.scala b/tests/pos/t5729.scala
index 944aa04d8..944aa04d8 100644
--- a/tests/pending/pos/t5729.scala
+++ b/tests/pos/t5729.scala
diff --git a/tests/pending/pos/t573.scala b/tests/pos/t573.scala
index 1aadb446c..1aadb446c 100644
--- a/tests/pending/pos/t573.scala
+++ b/tests/pos/t573.scala
diff --git a/tests/pending/pos/t5859.scala b/tests/pos/t5859.scala
index 2a31e68ee..2a31e68ee 100644
--- a/tests/pending/pos/t5859.scala
+++ b/tests/pos/t5859.scala
diff --git a/tests/pending/pos/t5877.scala b/tests/pos/t5877.scala
index 939013cd0..939013cd0 100644
--- a/tests/pending/pos/t5877.scala
+++ b/tests/pos/t5877.scala
diff --git a/tests/pending/pos/t5877b.scala b/tests/pos/t5877b.scala
index 43a2ea2f0..43a2ea2f0 100644
--- a/tests/pending/pos/t5877b.scala
+++ b/tests/pos/t5877b.scala
diff --git a/tests/pending/pos/t5900a.scala b/tests/pos/t5900a.scala
index cb02f67fb..cb02f67fb 100644
--- a/tests/pending/pos/t5900a.scala
+++ b/tests/pos/t5900a.scala
diff --git a/tests/pending/pos/t5932.scala b/tests/pos/t5932.scala
index d824523d5..d824523d5 100644
--- a/tests/pending/pos/t5932.scala
+++ b/tests/pos/t5932.scala
diff --git a/tests/pending/pos/t596.scala b/tests/pos/t596.scala
index b1b5471b2..b1b5471b2 100644
--- a/tests/pending/pos/t596.scala
+++ b/tests/pos/t596.scala
diff --git a/tests/pending/pos/t5967.scala b/tests/pos/t5967.scala
index cd219c031..cd219c031 100644
--- a/tests/pending/pos/t5967.scala
+++ b/tests/pos/t5967.scala
diff --git a/tests/pending/pos/t6014.scala b/tests/pos/t6014.scala
index 26e258a27..26e258a27 100644
--- a/tests/pending/pos/t6014.scala
+++ b/tests/pos/t6014.scala
diff --git a/tests/pending/pos/t604.scala b/tests/pos/t604.scala
index fb90d5ae3..fb90d5ae3 100644
--- a/tests/pending/pos/t604.scala
+++ b/tests/pos/t604.scala
diff --git a/tests/pending/pos/t6089b.scala b/tests/pos/t6089b.scala
index 9378a74a0..9378a74a0 100644
--- a/tests/pending/pos/t6089b.scala
+++ b/tests/pos/t6089b.scala
diff --git a/tests/pending/pos/t6117.scala b/tests/pos/t6117.scala
index 6aca84f72..6aca84f72 100644
--- a/tests/pending/pos/t6117.scala
+++ b/tests/pos/t6117.scala
diff --git a/tests/pending/pos/t6123-explaintypes-implicits.scala b/tests/pos/t6123-explaintypes-implicits.scala
index 86f522728..86f522728 100644
--- a/tests/pending/pos/t6123-explaintypes-implicits.scala
+++ b/tests/pos/t6123-explaintypes-implicits.scala
diff --git a/tests/pending/pos/t6145.scala b/tests/pos/t6145.scala
index 4161a24b5..4161a24b5 100644
--- a/tests/pending/pos/t6145.scala
+++ b/tests/pos/t6145.scala
diff --git a/tests/pending/pos/t6184.scala b/tests/pos/t6184.scala
index 386399963..386399963 100644
--- a/tests/pending/pos/t6184.scala
+++ b/tests/pos/t6184.scala
diff --git a/tests/pending/pos/t6208.scala b/tests/pos/t6208.scala
index dac571346..dac571346 100644
--- a/tests/pending/pos/t6208.scala
+++ b/tests/pos/t6208.scala
diff --git a/tests/pending/pos/t6225.scala b/tests/pos/t6225.scala
index d3d30d9e1..d3d30d9e1 100644
--- a/tests/pending/pos/t6225.scala
+++ b/tests/pos/t6225.scala
diff --git a/tests/pending/pos/t6231.scala b/tests/pos/t6231.scala
index 1e5b4e0e1..1e5b4e0e1 100644
--- a/tests/pending/pos/t6231.scala
+++ b/tests/pos/t6231.scala
diff --git a/tests/pending/pos/t6231b.scala b/tests/pos/t6231b.scala
index b4ddfe785..b4ddfe785 100644
--- a/tests/pending/pos/t6231b.scala
+++ b/tests/pos/t6231b.scala
diff --git a/tests/pending/pos/t6575a.scala b/tests/pos/t6575a.scala
index f128714da..f128714da 100644
--- a/tests/pending/pos/t6575a.scala
+++ b/tests/pos/t6575a.scala
diff --git a/tests/pending/pos/t6600.scala b/tests/pos/t6600.scala
index 1e8137894..1e8137894 100644
--- a/tests/pending/pos/t6600.scala
+++ b/tests/pos/t6600.scala
diff --git a/tests/pending/pos/t661.scala b/tests/pos/t661.scala
index 3a447241f..f2b76ee2f 100644
--- a/tests/pending/pos/t661.scala
+++ b/tests/pos/t661.scala
@@ -9,7 +9,7 @@ object test {
}
trait B extends A {
type N;
- trait C extends super.C {
+ trait CC extends super.C {
type M = N;
override def foo(n : M) : Unit = super.foo(n);
}
diff --git a/tests/pending/pos/t6664b.scala b/tests/pos/t6664b.scala
index a62286683..a62286683 100644
--- a/tests/pending/pos/t6664b.scala
+++ b/tests/pos/t6664b.scala
diff --git a/tests/pending/pos/t697.scala b/tests/pos/t697.scala
index 6caea418d..6caea418d 100644
--- a/tests/pending/pos/t697.scala
+++ b/tests/pos/t697.scala
diff --git a/tests/pending/pos/t6994.scala b/tests/pos/t6994.scala
index d70719642..d70719642 100644
--- a/tests/pending/pos/t6994.scala
+++ b/tests/pos/t6994.scala
diff --git a/tests/pending/pos/t7011.scala b/tests/pos/t7011.scala
index f1f71b9be..f1f71b9be 100644
--- a/tests/pending/pos/t7011.scala
+++ b/tests/pos/t7011.scala
diff --git a/tests/pending/pos/t703.scala b/tests/pos/t703.scala
index b24d70c92..b24d70c92 100644
--- a/tests/pending/pos/t703.scala
+++ b/tests/pos/t703.scala
diff --git a/tests/pending/pos/t704.scala b/tests/pos/t704.scala
index aedd8c03a..aedd8c03a 100644
--- a/tests/pending/pos/t704.scala
+++ b/tests/pos/t704.scala
diff --git a/tests/pending/pos/t7126.scala b/tests/pos/t7126.scala
index edac56d28..edac56d28 100644
--- a/tests/pending/pos/t7126.scala
+++ b/tests/pos/t7126.scala
diff --git a/tests/pending/pos/t7226.scala b/tests/pos/t7226.scala
index 1b7e2549c..1b7e2549c 100644
--- a/tests/pending/pos/t7226.scala
+++ b/tests/pos/t7226.scala
diff --git a/tests/pending/pos/t7285a.scala b/tests/pos/t7285a.scala
index 34e79c741..23b52f595 100644
--- a/tests/pending/pos/t7285a.scala
+++ b/tests/pos/t7285a.scala
@@ -23,12 +23,15 @@ object Test1 {
case object Up extends Base {
}
+ locally {
+
(d1: Base, d2: Base) =>
(d1, d2) match {
case (Up, Up) | (Down, Down) => false
case (Down, Up) => true
case (Up, Down) => false
}
+ }
}
}
@@ -42,10 +45,12 @@ object Test2 {
case object Up extends Base {
}
+ locally {
(d1: Base, d2: Base) =>
(d1) match {
case Up | Down => false
}
+ }
}
}
@@ -55,10 +60,12 @@ object Test3 {
object Base {
case object Down extends Base
+ locally {
(d1: Base, d2: Base) =>
(d1, d2) match {
case (Down, Down) => false
}
+ }
}
}
@@ -74,10 +81,12 @@ object Test4 {
}
import Test4.Base._
+ locally {
(d1: Base, d2: Base) =>
(d1, d2) match {
case (Up, Up) | (Down, Down) => false
case (Down, Test4.Base.Up) => true
case (Up, Down) => false
}
+ }
}
diff --git a/tests/pending/pos/t7475a.scala b/tests/pos/t7475a.scala
index 810ce9a05..810ce9a05 100644
--- a/tests/pending/pos/t7475a.scala
+++ b/tests/pos/t7475a.scala
diff --git a/tests/pending/pos/t7475b.scala b/tests/pos/t7475b.scala
index a34743b8b..a34743b8b 100644
--- a/tests/pending/pos/t7475b.scala
+++ b/tests/pos/t7475b.scala
diff --git a/tests/pending/pos/t7520.scala b/tests/pos/t7520.scala
index 747f5278e..747f5278e 100644
--- a/tests/pending/pos/t7520.scala
+++ b/tests/pos/t7520.scala
diff --git a/tests/pending/pos/t758.scala b/tests/pos/t758.scala
index 160bf3717..160bf3717 100644
--- a/tests/pending/pos/t758.scala
+++ b/tests/pos/t758.scala
diff --git a/tests/pending/pos/t7591/Demo.scala b/tests/pos/t7591.scala
index dd127b881..dd127b881 100644
--- a/tests/pending/pos/t7591/Demo.scala
+++ b/tests/pos/t7591.scala
diff --git a/tests/pending/pos/t7782.scala b/tests/pos/t7782.scala
index 9b98f6ac6..9b98f6ac6 100644
--- a/tests/pending/pos/t7782.scala
+++ b/tests/pos/t7782.scala
diff --git a/tests/pending/pos/t7782b.scala b/tests/pos/t7782b.scala
index 5b1979ec1..5b1979ec1 100644
--- a/tests/pending/pos/t7782b.scala
+++ b/tests/pos/t7782b.scala
diff --git a/tests/pending/pos/t7785.scala b/tests/pos/t7785.scala
index 1de693d13..1de693d13 100644
--- a/tests/pending/pos/t7785.scala
+++ b/tests/pos/t7785.scala
diff --git a/tests/pending/pos/t7853.scala b/tests/pos/t7853.scala
index b0e9221e2..b0e9221e2 100644
--- a/tests/pending/pos/t7853.scala
+++ b/tests/pos/t7853.scala
diff --git a/tests/pending/pos/t788.scala b/tests/pos/t788.scala
index 19638dd17..19638dd17 100644
--- a/tests/pending/pos/t788.scala
+++ b/tests/pos/t788.scala
diff --git a/tests/pending/pos/t7928.scala b/tests/pos/t7928.scala
index d9e29935b..d9e29935b 100644
--- a/tests/pending/pos/t7928.scala
+++ b/tests/pos/t7928.scala
diff --git a/tests/pending/pos/t796.scala b/tests/pos/t796.scala
index b1463ed92..b1463ed92 100644
--- a/tests/pending/pos/t796.scala
+++ b/tests/pos/t796.scala
diff --git a/tests/pending/pos/t7983.scala b/tests/pos/t7983.scala
index fbeb7d3c5..fbeb7d3c5 100644
--- a/tests/pending/pos/t7983.scala
+++ b/tests/pos/t7983.scala
diff --git a/tests/pending/pos/t802.scala b/tests/pos/t802.scala
index 2dea7036d..50a948251 100644
--- a/tests/pending/pos/t802.scala
+++ b/tests/pos/t802.scala
@@ -8,12 +8,12 @@ trait Test {
}
abstract class ParensImpl extends BracesImpl {
type Brace <: Singleton with BraceImpl;
- trait BraceImpl extends super.BraceImpl;
+ trait BraceImpl2 extends super.BraceImpl;
}
val parens : ParensImpl;
abstract class BracksImpl extends BracesImpl {
type Brace <: Singleton with BraceImpl;
- trait BraceImpl extends super.BraceImpl;
+ trait BraceImpl2 extends super.BraceImpl;
}
val bracks : BracksImpl;
trait File {
diff --git a/tests/pending/pos/t8023b.scala b/tests/pos/t8023b.scala
index 94c9b2f8d..94c9b2f8d 100644
--- a/tests/pending/pos/t8023b.scala
+++ b/tests/pos/t8023b.scala
diff --git a/tests/pending/pos/t8045.scala b/tests/pos/t8045.scala
index 21154e386..21154e386 100644
--- a/tests/pending/pos/t8045.scala
+++ b/tests/pos/t8045.scala
diff --git a/tests/pending/pos/t805.scala b/tests/pos/t805.scala
index 37bf6b5ef..a1260a834 100644
--- a/tests/pending/pos/t805.scala
+++ b/tests/pos/t805.scala
@@ -5,11 +5,11 @@ trait MatcherYYY {
}
}
trait BraceMatcherXXX extends MatcherYYY {
- trait NodeImpl extends super.NodeImpl {
+ trait NodeImpl2 extends super.NodeImpl {
def doMatch (braces : BracePair) : Unit
}
trait BracePair {
- trait BraceImpl extends NodeImpl with Matchable {
+ trait BraceImpl extends NodeImpl2 with Matchable {
override def doMatch : Unit = {
super.doMatch;
();
diff --git a/tests/pending/pos/t8128.scala b/tests/pos/t8128.scala
index b6f76691b..b6f76691b 100644
--- a/tests/pending/pos/t8128.scala
+++ b/tests/pos/t8128.scala
diff --git a/tests/pending/pos/t8177a.scala b/tests/pos/t8177a.scala
index 7e2cfb386..7e2cfb386 100644
--- a/tests/pending/pos/t8177a.scala
+++ b/tests/pos/t8177a.scala
diff --git a/tests/pending/pos/t8187.scala b/tests/pos/t8187.scala
index 84b8cd0f4..84b8cd0f4 100644
--- a/tests/pending/pos/t8187.scala
+++ b/tests/pos/t8187.scala
diff --git a/tests/pending/pos/t8219.scala b/tests/pos/t8219.scala
index e1653b623..e1653b623 100644
--- a/tests/pending/pos/t8219.scala
+++ b/tests/pos/t8219.scala
diff --git a/tests/pending/pos/t8367.scala b/tests/pos/t8367.scala
index f0c329211..f0c329211 100644
--- a/tests/pending/pos/t8367.scala
+++ b/tests/pos/t8367.scala
diff --git a/tests/pending/pos/t8369a.scala b/tests/pos/t8369a.scala
index 13046007f..13046007f 100644
--- a/tests/pending/pos/t8369a.scala
+++ b/tests/pos/t8369a.scala
diff --git a/tests/pending/pos/t873.scala b/tests/pos/t873.scala
index b8c50afd3..b8c50afd3 100644
--- a/tests/pending/pos/t873.scala
+++ b/tests/pos/t873.scala
diff --git a/tests/pending/pos/t911.scala b/tests/pos/t911.scala
index cfa4f49dc..cfa4f49dc 100644
--- a/tests/pending/pos/t911.scala
+++ b/tests/pos/t911.scala
diff --git a/tests/pending/pos/tcpoly_infer_ticket1864.scala b/tests/pos/tcpoly_infer_ticket1864.scala
index 4b7c7a223..4b7c7a223 100644
--- a/tests/pending/pos/tcpoly_infer_ticket1864.scala
+++ b/tests/pos/tcpoly_infer_ticket1864.scala
diff --git a/tests/pending/pos/tcpoly_ticket2096.scala b/tests/pos/tcpoly_ticket2096.scala
index d2387b36b..d2387b36b 100644
--- a/tests/pending/pos/tcpoly_ticket2096.scala
+++ b/tests/pos/tcpoly_ticket2096.scala
diff --git a/tests/pending/pos/tcpoly_variance_pos.scala b/tests/pos/tcpoly_variance_pos.scala
index b63abce20..b63abce20 100644
--- a/tests/pending/pos/tcpoly_variance_pos.scala
+++ b/tests/pos/tcpoly_variance_pos.scala
diff --git a/tests/pending/pos/ted.scala b/tests/pos/ted.scala
index 314f10932..314f10932 100644
--- a/tests/pending/pos/ted.scala
+++ b/tests/pos/ted.scala
diff --git a/tests/pending/pos/test4.scala b/tests/pos/test4.scala
index 4fe65a8f1..4fe65a8f1 100644
--- a/tests/pending/pos/test4.scala
+++ b/tests/pos/test4.scala
diff --git a/tests/pending/pos/test5.scala b/tests/pos/test5.scala
index c19478048..c19478048 100644
--- a/tests/pending/pos/test5.scala
+++ b/tests/pos/test5.scala
diff --git a/tests/pending/pos/test5refine.scala b/tests/pos/test5refine.scala
index 09ea179da..09ea179da 100644
--- a/tests/pending/pos/test5refine.scala
+++ b/tests/pos/test5refine.scala
diff --git a/tests/pending/pos/typealiases.scala b/tests/pos/typealiases.scala
index 93d1dce4d..93d1dce4d 100644
--- a/tests/pending/pos/typealiases.scala
+++ b/tests/pos/typealiases.scala
diff --git a/tests/pending/pos/typerep-stephane.scala b/tests/pos/typerep-stephane.scala
index 2cb899591..2cb899591 100644
--- a/tests/pending/pos/typerep-stephane.scala
+++ b/tests/pos/typerep-stephane.scala
diff --git a/tests/pending/pos/virtpatmat_alts_subst.scala b/tests/pos/virtpatmat_alts_subst.scala
index e27c52f9c..e27c52f9c 100644
--- a/tests/pending/pos/virtpatmat_alts_subst.scala
+++ b/tests/pos/virtpatmat_alts_subst.scala
diff --git a/tests/pending/pos/virtpatmat_exist1.scala b/tests/pos/virtpatmat_exist1.scala
index 6cad017b0..6cad017b0 100644
--- a/tests/pending/pos/virtpatmat_exist1.scala
+++ b/tests/pos/virtpatmat_exist1.scala
diff --git a/tests/pending/pos/virtpatmat_exist3.scala b/tests/pos/virtpatmat_exist3.scala
index 6a6d428b1..6a6d428b1 100644
--- a/tests/pending/pos/virtpatmat_exist3.scala
+++ b/tests/pos/virtpatmat_exist3.scala
diff --git a/tests/pending/pos/virtpatmat_exist_uncurry.scala b/tests/pos/virtpatmat_exist_uncurry.scala
index 727922b31..727922b31 100644
--- a/tests/pending/pos/virtpatmat_exist_uncurry.scala
+++ b/tests/pos/virtpatmat_exist_uncurry.scala