diff options
author | Martin Odersky <odersky@gmail.com> | 2006-03-31 10:36:49 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2006-03-31 10:36:49 +0000 |
commit | 3049afc7ec7ca038dd8d68d26803c0733df01ee1 (patch) | |
tree | 0a41f798b75b4aef55ab00e645cc77b6cdb0be69 /test/files/neg | |
parent | 7ff239d7a998fb0ef7443e6c2020b6dcb64dabdd (diff) | |
download | scala-3049afc7ec7ca038dd8d68d26803c0733df01ee1.tar.gz scala-3049afc7ec7ca038dd8d68d26803c0733df01ee1.tar.bz2 scala-3049afc7ec7ca038dd8d68d26803c0733df01ee1.zip |
fixed several old bugs
Diffstat (limited to 'test/files/neg')
-rw-r--r-- | test/files/neg/bug200.check | 4 | ||||
-rw-r--r-- | test/files/neg/bug200.scala | 8 | ||||
-rw-r--r-- | test/files/neg/bug343.check | 4 | ||||
-rw-r--r-- | test/files/neg/bug343.scala | 12 | ||||
-rw-r--r-- | test/files/neg/bug409.check | 4 | ||||
-rw-r--r-- | test/files/neg/bug409.scala | 18 | ||||
-rw-r--r-- | test/files/neg/bug414.check | 9 | ||||
-rw-r--r-- | test/files/neg/bug414.scala | 10 | ||||
-rw-r--r-- | test/files/neg/bug415.check | 4 | ||||
-rw-r--r-- | test/files/neg/bug415.scala | 9 | ||||
-rw-r--r-- | test/files/neg/bug418.check | 7 | ||||
-rw-r--r-- | test/files/neg/bug418.scala | 3 | ||||
-rw-r--r-- | test/files/neg/bug432.check | 4 | ||||
-rw-r--r-- | test/files/neg/bug432.scala | 2 | ||||
-rw-r--r-- | test/files/neg/bug452.check | 6 | ||||
-rw-r--r-- | test/files/neg/bug452.scala | 8 | ||||
-rw-r--r-- | test/files/neg/bug555.check | 4 | ||||
-rw-r--r-- | test/files/neg/bug555.scala | 5 | ||||
-rw-r--r-- | test/files/neg/bug556.check | 4 | ||||
-rw-r--r-- | test/files/neg/bug556.scala | 4 | ||||
-rw-r--r-- | test/files/neg/bug558.check | 4 | ||||
-rw-r--r-- | test/files/neg/bug558.scala | 19 |
22 files changed, 152 insertions, 0 deletions
diff --git a/test/files/neg/bug200.check b/test/files/neg/bug200.check new file mode 100644 index 0000000000..d24d832b85 --- /dev/null +++ b/test/files/neg/bug200.check @@ -0,0 +1,4 @@ +bug200.scala:7 error: method foo is defined twice + def foo: Int; + ^ +one error found diff --git a/test/files/neg/bug200.scala b/test/files/neg/bug200.scala new file mode 100644 index 0000000000..692fe368e2 --- /dev/null +++ b/test/files/neg/bug200.scala @@ -0,0 +1,8 @@ +trait X { + def foo: Int; +} + +trait Y extends X { + def foo: String; + def foo: Int; +} diff --git a/test/files/neg/bug343.check b/test/files/neg/bug343.check new file mode 100644 index 0000000000..5ba5919650 --- /dev/null +++ b/test/files/neg/bug343.check @@ -0,0 +1,4 @@ +bug343.scala:5 error: private class Foo escapes its defining scope as part of type C.this.Foo + def get:Foo = new Foo(); + ^ +one error found diff --git a/test/files/neg/bug343.scala b/test/files/neg/bug343.scala new file mode 100644 index 0000000000..d04e1479f7 --- /dev/null +++ b/test/files/neg/bug343.scala @@ -0,0 +1,12 @@ +package scalaInner1; + +class C { + private class Foo {} + def get:Foo = new Foo(); +} + +object Test { + def main(args:Array[String]) = { + val c = new C().get; + } +} diff --git a/test/files/neg/bug409.check b/test/files/neg/bug409.check new file mode 100644 index 0000000000..6d596108fc --- /dev/null +++ b/test/files/neg/bug409.check @@ -0,0 +1,4 @@ +bug409.scala:6 error: `{' expected +class Toto extends Expr with Case1(12); + ^ +one error found diff --git a/test/files/neg/bug409.scala b/test/files/neg/bug409.scala new file mode 100644 index 0000000000..5dac2fdaa4 --- /dev/null +++ b/test/files/neg/bug409.scala @@ -0,0 +1,18 @@ +abstract class Expr; +case class Case1(x: Int) extends Expr; +case class Case2(x: Int) extends Expr; +case class Case3(x: Int) extends Expr; + +class Toto extends Expr with Case1(12); + +object Main { + def f(x: Expr): Int = x match { + case Case1(x) => x + case Case2(x) => x + case Case3(x) => x + } + + def main(args: Array[String]): Unit = { + Console.println(f(new Toto)); + } +} diff --git a/test/files/neg/bug414.check b/test/files/neg/bug414.check new file mode 100644 index 0000000000..dc6f636ff8 --- /dev/null +++ b/test/files/neg/bug414.check @@ -0,0 +1,9 @@ +bug414.scala:5 error: stable identifier required, but Empty found. + case Empty => + ^ +bug414.scala:7 error: type mismatch; + found : scala.Unit + required: a + case _ => + ^ +two errors found diff --git a/test/files/neg/bug414.scala b/test/files/neg/bug414.scala new file mode 100644 index 0000000000..3dff7f7b36 --- /dev/null +++ b/test/files/neg/bug414.scala @@ -0,0 +1,10 @@ +case class Empty[a] extends IntMap[a]; +case class Node[a](left: IntMap[a], keyVal: Pair[int, a], right: IntMap[a]) extends IntMap[a]; +abstract class IntMap[a] { + def lookup(key: int): a = this match { + case Empty => + error("clef inexistante") + case _ => + }; + +}; diff --git a/test/files/neg/bug415.check b/test/files/neg/bug415.check new file mode 100644 index 0000000000..7a7c5cf4f5 --- /dev/null +++ b/test/files/neg/bug415.check @@ -0,0 +1,4 @@ +bug415.scala:8 error: malformed type: A#T + val y: String = a.x; + ^ +one error found diff --git a/test/files/neg/bug415.scala b/test/files/neg/bug415.scala new file mode 100644 index 0000000000..355b6136d1 --- /dev/null +++ b/test/files/neg/bug415.scala @@ -0,0 +1,9 @@ +abstract class A { + type T <: String; + def x: T; +} + +abstract class B { + def a: A; + val y: String = a.x; +} diff --git a/test/files/neg/bug418.check b/test/files/neg/bug418.check new file mode 100644 index 0000000000..598d6666f5 --- /dev/null +++ b/test/files/neg/bug418.check @@ -0,0 +1,7 @@ +bug418.scala:2 error: not found: value Foo12340771 + null match { case Foo12340771.Bar(x) => x } + ^ +bug418.scala:2 error: not found: value x + null match { case Foo12340771.Bar(x) => x } + ^ +two errors found diff --git a/test/files/neg/bug418.scala b/test/files/neg/bug418.scala new file mode 100644 index 0000000000..67007010d4 --- /dev/null +++ b/test/files/neg/bug418.scala @@ -0,0 +1,3 @@ +object Test { + null match { case Foo12340771.Bar(x) => x } +} diff --git a/test/files/neg/bug432.check b/test/files/neg/bug432.check new file mode 100644 index 0000000000..e6fbd29579 --- /dev/null +++ b/test/files/neg/bug432.check @@ -0,0 +1,4 @@ +bug432.scala:2 error: Tata is already defined as case class Tata +object Tata +^ +one error found diff --git a/test/files/neg/bug432.scala b/test/files/neg/bug432.scala new file mode 100644 index 0000000000..8e3097ac9d --- /dev/null +++ b/test/files/neg/bug432.scala @@ -0,0 +1,2 @@ +case class Tata +object Tata diff --git a/test/files/neg/bug452.check b/test/files/neg/bug452.check new file mode 100644 index 0000000000..de484ef44b --- /dev/null +++ b/test/files/neg/bug452.check @@ -0,0 +1,6 @@ +bug452.scala:3 error: type mismatch; + found : Test + required: Test.this.Foo + def this() = this(this); + ^ +one error found diff --git a/test/files/neg/bug452.scala b/test/files/neg/bug452.scala new file mode 100644 index 0000000000..855406d0c4 --- /dev/null +++ b/test/files/neg/bug452.scala @@ -0,0 +1,8 @@ +object Test { + class Foo(x: Foo) { + def this() = this(this); + } + def main(args: Array[String]): Unit = { + new Foo(); + } +} diff --git a/test/files/neg/bug555.check b/test/files/neg/bug555.check new file mode 100644 index 0000000000..5bd0833217 --- /dev/null +++ b/test/files/neg/bug555.check @@ -0,0 +1,4 @@ +bug555.scala:4 error: block must end in result expression, not in definition + } + ^ +one error found diff --git a/test/files/neg/bug555.scala b/test/files/neg/bug555.scala new file mode 100644 index 0000000000..26dbe6cc0d --- /dev/null +++ b/test/files/neg/bug555.scala @@ -0,0 +1,5 @@ +object Main extends Application { + def tata = { + def titi = {} + } +} diff --git a/test/files/neg/bug556.check b/test/files/neg/bug556.check new file mode 100644 index 0000000000..39d9f50f85 --- /dev/null +++ b/test/files/neg/bug556.check @@ -0,0 +1,4 @@ +bug556.scala:3 error: wrong number of parameters; expected = 1 + def g:Int = f((x,y)=>x) + ^ +one error found diff --git a/test/files/neg/bug556.scala b/test/files/neg/bug556.scala new file mode 100644 index 0000000000..4f4e905fbb --- /dev/null +++ b/test/files/neg/bug556.scala @@ -0,0 +1,4 @@ +object Main extends Application { + def f(a:Int=>Int):Int = a(4) + def g:Int = f((x,y)=>x) +} diff --git a/test/files/neg/bug558.check b/test/files/neg/bug558.check new file mode 100644 index 0000000000..6587939731 --- /dev/null +++ b/test/files/neg/bug558.check @@ -0,0 +1,4 @@ +bug558.scala:13 error: value file is not a member of NewModel.this.RootURL + final val source = top.file; + ^ +one error found diff --git a/test/files/neg/bug558.scala b/test/files/neg/bug558.scala new file mode 100644 index 0000000000..f88471f776 --- /dev/null +++ b/test/files/neg/bug558.scala @@ -0,0 +1,19 @@ +package scala.tools.nsc.models; +import scala.tools.util._; + +abstract class NewModel { + abstract class SymbolURL { + val top : RootURL; + val name : String; + val source : AbstractFile; + } + abstract class NodeURL extends SymbolURL { + val parent : SymbolURL; + final val top = parent.top; + final val source = top.file; + + } + abstract class RootURL extends SymbolURL { + final val top : RootURL = this; + } +} |