diff options
author | Martin Odersky <odersky@gmail.com> | 2004-01-15 12:23:01 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2004-01-15 12:23:01 +0000 |
commit | b629bde913be70b95e00f4c7a252e55dee070d34 (patch) | |
tree | 28c444499753fc78851d1b044b2c630e4bd3b7dd | |
parent | de408cadfb612d04e9adfe049a2bdf9f71da5bd5 (diff) | |
download | scala-b629bde913be70b95e00f4c7a252e55dee070d34.tar.gz scala-b629bde913be70b95e00f4c7a252e55dee070d34.tar.bz2 scala-b629bde913be70b95e00f4c7a252e55dee070d34.zip |
*** empty log message ***
-rw-r--r-- | test/files/neg/bug44.check | 6 | ||||
-rw-r--r-- | test/files/neg/bug44.scala | 5 | ||||
-rw-r--r-- | test/files/neg/refine.check | 6 | ||||
-rw-r--r-- | test/files/neg/refine.scala | 6 | ||||
-rw-r--r-- | test/files/neg/vincent1.check | 7 | ||||
-rw-r--r-- | test/files/neg/vincent1.scala | 19 | ||||
-rw-r--r-- | test/neg/bug44.check | 6 | ||||
-rw-r--r-- | test/neg/bug44.scala | 5 | ||||
-rw-r--r-- | test/neg/refine.check | 6 | ||||
-rw-r--r-- | test/neg/refine.scala | 6 | ||||
-rw-r--r-- | test/neg/vincent1.check | 7 | ||||
-rw-r--r-- | test/neg/vincent1.scala | 19 |
12 files changed, 98 insertions, 0 deletions
diff --git a/test/files/neg/bug44.check b/test/files/neg/bug44.check new file mode 100644 index 0000000000..9347758ac9 --- /dev/null +++ b/test/files/neg/bug44.check @@ -0,0 +1,6 @@ +bug44.scala:2: type mismatch; + found : scala.Object + required: scala.Object { def t: scala.Int } + var x: Object { def t: Int; } = new Object() { + ^ +one error found diff --git a/test/files/neg/bug44.scala b/test/files/neg/bug44.scala new file mode 100644 index 0000000000..7989838250 --- /dev/null +++ b/test/files/neg/bug44.scala @@ -0,0 +1,5 @@ +abstract class C { + var x: Object { def t: Int; } = new Object() { + def t: Int = 1; + } +} diff --git a/test/files/neg/refine.check b/test/files/neg/refine.check new file mode 100644 index 0000000000..271451e65e --- /dev/null +++ b/test/files/neg/refine.check @@ -0,0 +1,6 @@ +refine.scala:3: type mismatch; + found : scala.Object + required: scala.Object { def t(): java.lang.String } + val x: Object { def t(): String } = new Object { + ^ +one error found diff --git a/test/files/neg/refine.scala b/test/files/neg/refine.scala new file mode 100644 index 0000000000..5d175f26f5 --- /dev/null +++ b/test/files/neg/refine.scala @@ -0,0 +1,6 @@ +object test { + + val x: Object { def t(): String } = new Object { + def t(): String = "1"; + } +} diff --git a/test/files/neg/vincent1.check b/test/files/neg/vincent1.check new file mode 100644 index 0000000000..a9f60e9ad2 --- /dev/null +++ b/test/files/neg/vincent1.check @@ -0,0 +1,7 @@ +vincent1.scala:7: type x.type escapes its defining scope as part of scala.Object { type T = x.T } + class Functor(x: A) { type T = x.T } + ^ +vincent1.scala:9: type x.type escapes its defining scope as part of test.B { type T = x.T } + def functor(x: A): B { type T = x.T } = + ^ +two errors found diff --git a/test/files/neg/vincent1.scala b/test/files/neg/vincent1.scala new file mode 100644 index 0000000000..fb047305ff --- /dev/null +++ b/test/files/neg/vincent1.scala @@ -0,0 +1,19 @@ +object test { + + trait A { type T; } + + trait B { type T; } + + class Functor(x: A) { type T = x.T } + + def functor(x: A): B { type T = x.T } = + new B { + type T = x.T; + }; + + val a = new A { type T = String }; + val b = functor(a); + + val s: b.T = "coucou"; + +} diff --git a/test/neg/bug44.check b/test/neg/bug44.check new file mode 100644 index 0000000000..9347758ac9 --- /dev/null +++ b/test/neg/bug44.check @@ -0,0 +1,6 @@ +bug44.scala:2: type mismatch; + found : scala.Object + required: scala.Object { def t: scala.Int } + var x: Object { def t: Int; } = new Object() { + ^ +one error found diff --git a/test/neg/bug44.scala b/test/neg/bug44.scala new file mode 100644 index 0000000000..7989838250 --- /dev/null +++ b/test/neg/bug44.scala @@ -0,0 +1,5 @@ +abstract class C { + var x: Object { def t: Int; } = new Object() { + def t: Int = 1; + } +} diff --git a/test/neg/refine.check b/test/neg/refine.check new file mode 100644 index 0000000000..271451e65e --- /dev/null +++ b/test/neg/refine.check @@ -0,0 +1,6 @@ +refine.scala:3: type mismatch; + found : scala.Object + required: scala.Object { def t(): java.lang.String } + val x: Object { def t(): String } = new Object { + ^ +one error found diff --git a/test/neg/refine.scala b/test/neg/refine.scala new file mode 100644 index 0000000000..5d175f26f5 --- /dev/null +++ b/test/neg/refine.scala @@ -0,0 +1,6 @@ +object test { + + val x: Object { def t(): String } = new Object { + def t(): String = "1"; + } +} diff --git a/test/neg/vincent1.check b/test/neg/vincent1.check new file mode 100644 index 0000000000..a9f60e9ad2 --- /dev/null +++ b/test/neg/vincent1.check @@ -0,0 +1,7 @@ +vincent1.scala:7: type x.type escapes its defining scope as part of scala.Object { type T = x.T } + class Functor(x: A) { type T = x.T } + ^ +vincent1.scala:9: type x.type escapes its defining scope as part of test.B { type T = x.T } + def functor(x: A): B { type T = x.T } = + ^ +two errors found diff --git a/test/neg/vincent1.scala b/test/neg/vincent1.scala new file mode 100644 index 0000000000..fb047305ff --- /dev/null +++ b/test/neg/vincent1.scala @@ -0,0 +1,19 @@ +object test { + + trait A { type T; } + + trait B { type T; } + + class Functor(x: A) { type T = x.T } + + def functor(x: A): B { type T = x.T } = + new B { + type T = x.T; + }; + + val a = new A { type T = String }; + val b = functor(a); + + val s: b.T = "coucou"; + +} |