summaryrefslogtreecommitdiff
path: root/test/files/run/structural.scala
diff options
context:
space:
mode:
authorHubert Plociniczak <hubert.plociniczak@epfl.ch>2011-11-02 14:34:35 +0000
committerHubert Plociniczak <hubert.plociniczak@epfl.ch>2011-11-02 14:34:35 +0000
commitb6778be91900b8161e705dc2598ef7af86842b0b (patch)
treed15e8ec18a37eec212f50f1ace27714d7e7d4d34 /test/files/run/structural.scala
parentac6c76f26d884a94d0c9ff54f055d3f9ab750bac (diff)
downloadscala-b6778be91900b8161e705dc2598ef7af86842b0b.tar.gz
scala-b6778be91900b8161e705dc2598ef7af86842b0b.tar.bz2
scala-b6778be91900b8161e705dc2598ef7af86842b0b.zip
Begone t1737...
Diffstat (limited to 'test/files/run/structural.scala')
-rw-r--r--test/files/run/structural.scala52
1 files changed, 26 insertions, 26 deletions
diff --git a/test/files/run/structural.scala b/test/files/run/structural.scala
index 97627b8da1..36af8c4bfc 100644
--- a/test/files/run/structural.scala
+++ b/test/files/run/structural.scala
@@ -1,18 +1,18 @@
object test1 {
-
+
val o1 = new Object { override def toString = "ohone" }
val o2 = new Object { override def toString = "ohtwo" }
-
+
val t1 = new Tata("tieone")
val t2 = new Tata("tietwo")
-
+
class Tata(name: String) {
override def toString = name
def tatMe = "oy"
}
-
+
class Titi extends Tata("titi")
-
+
object Rec {
val a = 1
val b = 2
@@ -41,7 +41,7 @@ object test1 {
val y: Tata = null
def z(t: Tata) = ()
}
-
+
type rt = Object {
val a: Int;
val c: String;
@@ -65,7 +65,7 @@ object test1 {
var v: Int
val y: Tata
}
-
+
def l (r: rt) {
println(" 1. " + r.c)
println(" 2. " + r.a + 1)
@@ -94,33 +94,33 @@ object test1 {
println("25. " + r.y)
println("26. " + r.e(null))
}
-
+
/*def ma[T](r: Object{def e(x: T): T; val x: T}) {
println("30. " + r.e(r.x)) // static error
}*/
-
+
def mb(r: Object { def e[T](x: T): T }) {
println("31. " + r.e[Int](4)) // while this is ok
}
-
+
def m1(r: Object { def z(x: Tata): Unit }) {
println("32. " + r.z(new Titi)) // while this is ok
}
-
+
def m2[T](r: Object { def e(x: Tata): T; val x: Tata }) {
println("33. " + r.e(r.x)) // and this too
}
-
+
class Rec3[T] {
def e(x: T): T = x
}
-
+
def m3[T](r: Rec3[T], x: T) {
println("33. " + r.e(x)) // and this too
}
-
+
Rec.g(11)
-
+
this.l(Rec)
this.mb(new Object{def e[T](x: T): T = x})
this.m1(Rec)
@@ -132,7 +132,7 @@ object test2 {
class C extends { def f() { println("1") } }
val x1 = new C
x1.f()
-
+
abstract class D extends { def f() }
val x2 = new D { def f() { println("2") } }
x2.f()
@@ -153,11 +153,11 @@ object test2 {
object test3 {
case class Exc extends Exception
-
+
object Rec {
def f = throw Exc()
}
-
+
def m(r: { def f: Nothing }) =
try {
r.f
@@ -166,31 +166,31 @@ object test3 {
case e: Exc => println("caught")
case e => println(e)
}
-
+
m(Rec)
-
+
}
object test4 {
class A
-
+
val aar = Array(new A, new A, new A)
val nar = Array(1, 2)
-
+
def f(p: {def size: Int}) = println(p.size)
//def g[T <: {def size: Int}](p: T) = println(p.size) // open issue
//def h[T <% {def size: Int}](p: T) = println(p.size) // open issue
-
+
f(aar)
f(nar)
-
+
//g(aar)
//g(nar)
-
+
//h(aar)
//h(nar)
-
+
}
object Test extends App {