diff options
author | Paul Phillips <paulp@improving.org> | 2010-10-04 06:22:31 +0000 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2010-10-04 06:22:31 +0000 |
commit | c901a0675711a92ff714cfc909013a67a88c0ca3 (patch) | |
tree | 01e73b483cf3e372a0d7be0dab7edf7f2086b1d7 /test/files | |
parent | a7fd7d6dc257e396cf2cf22a9e0a60c3ce44a992 (diff) | |
download | scala-c901a0675711a92ff714cfc909013a67a88c0ca3.tar.gz scala-c901a0675711a92ff714cfc909013a67a88c0ca3.tar.bz2 scala-c901a0675711a92ff714cfc909013a67a88c0ca3.zip |
Another batch of busywork shuffling the content...
Another batch of busywork shuffling the contents of pending around. Can
almost see some daylight. No review.
Diffstat (limited to 'test/files')
-rw-r--r-- | test/files/neg/t0565.check | 4 | ||||
-rw-r--r-- | test/files/neg/t0565.scala | 22 | ||||
-rw-r--r-- | test/files/run/bug1042.check | 1 | ||||
-rw-r--r-- | test/files/run/bug1042.scala | 14 | ||||
-rw-r--r-- | test/files/run/preinits.check | 3 | ||||
-rw-r--r-- | test/files/run/preinits.scala | 6 | ||||
-rw-r--r-- | test/files/run/t0048.check | 1 | ||||
-rw-r--r-- | test/files/run/t0048.scala | 13 |
8 files changed, 64 insertions, 0 deletions
diff --git a/test/files/neg/t0565.check b/test/files/neg/t0565.check new file mode 100644 index 0000000000..c5a64d0e53 --- /dev/null +++ b/test/files/neg/t0565.check @@ -0,0 +1,4 @@ +t0565.scala:8: error: Parameter type in structural refinement may not refer to a type member of that refinement + def z (w : T) : T } = + ^ +one error found diff --git a/test/files/neg/t0565.scala b/test/files/neg/t0565.scala new file mode 100644 index 0000000000..eb6e32e644 --- /dev/null +++ b/test/files/neg/t0565.scala @@ -0,0 +1,22 @@ +object Test extends Application { + + class MacGuffin + + object A { + var x : { type T >: Null <: AnyRef; + val y : T; + def z (w : T) : T } = + new { type T = String; + val y = "foo"; + def z (w : String) = w + "bar" } + lazy val u = { println("u evaluated"); x } + def foo (v : => u.type#T) : u.type#T = { + x = new { type T = MacGuffin; + val y = new MacGuffin; + def z (w : MacGuffin) = w } + u.z(v) + } + } + + A.foo(A.u.y) +} diff --git a/test/files/run/bug1042.check b/test/files/run/bug1042.check new file mode 100644 index 0000000000..223b7836fb --- /dev/null +++ b/test/files/run/bug1042.check @@ -0,0 +1 @@ +B diff --git a/test/files/run/bug1042.scala b/test/files/run/bug1042.scala new file mode 100644 index 0000000000..32eb49a7ec --- /dev/null +++ b/test/files/run/bug1042.scala @@ -0,0 +1,14 @@ +abstract class A { + override def toString(): String // crucial + + def toString(sb: StringBuilder): StringBuilder // crucial +} + +case class B() extends A { + // overloaded version is implemented, causing toString not to be implemented? + def toString(sb: StringBuilder): StringBuilder = error("") +} + +object Test extends Application { + Console.println(B) +} diff --git a/test/files/run/preinits.check b/test/files/run/preinits.check new file mode 100644 index 0000000000..5584ab261e --- /dev/null +++ b/test/files/run/preinits.check @@ -0,0 +1,3 @@ +A +B +2 diff --git a/test/files/run/preinits.scala b/test/files/run/preinits.scala new file mode 100644 index 0000000000..8de43b62ea --- /dev/null +++ b/test/files/run/preinits.scala @@ -0,0 +1,6 @@ +trait A { val x: Int; println("A") } +trait B extends { override val x = 1 } with A { println("B") } +trait C extends { override val x = 2 } with A +object Test extends B with C with Application { + println(x) +} diff --git a/test/files/run/t0048.check b/test/files/run/t0048.check new file mode 100644 index 0000000000..1e8b314962 --- /dev/null +++ b/test/files/run/t0048.check @@ -0,0 +1 @@ +6 diff --git a/test/files/run/t0048.scala b/test/files/run/t0048.scala new file mode 100644 index 0000000000..9ee3453cd9 --- /dev/null +++ b/test/files/run/t0048.scala @@ -0,0 +1,13 @@ +object A1 { + object A2 { + class X { def unapply(v : Int) = Some(v + 1) } + } +} + +object Test { + def main(args: Array[String]) { + val q = new A1.A2.X + val res = 5 match { case q(x) => x } + println(res) + } +} |