summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2012-02-28 08:08:30 -0800
committerPaul Phillips <paulp@improving.org>2012-02-28 08:25:01 -0800
commitf3711b634ccfa6ef4ab14ffc8d12d244de6917c2 (patch)
treee7ba70b582b23f787ab3d8f6fc2d5b146f8c58ab /test
parent0bcc8f8f92bbee772924813d00512f3765d4beee (diff)
downloadscala-f3711b634ccfa6ef4ab14ffc8d12d244de6917c2.tar.gz
scala-f3711b634ccfa6ef4ab14ffc8d12d244de6917c2.tar.bz2
scala-f3711b634ccfa6ef4ab14ffc8d12d244de6917c2.zip
Improving error message.
Hacked filename into message to alleviate meaningless "_$1 defined twice" error condition. References SI-4893.
Diffstat (limited to 'test')
-rw-r--r--test/files/neg/t200.check2
-rw-r--r--test/files/neg/t2779.check2
-rw-r--r--test/files/neg/t278.check2
-rw-r--r--test/files/neg/t591.check2
-rw-r--r--test/files/neg/t800.check6
-rw-r--r--test/files/neg/t960.check4
-rw-r--r--test/pending/run/t4511b.scala25
7 files changed, 34 insertions, 9 deletions
diff --git a/test/files/neg/t200.check b/test/files/neg/t200.check
index 78701f8533..3ef6665fe5 100644
--- a/test/files/neg/t200.check
+++ b/test/files/neg/t200.check
@@ -1,4 +1,4 @@
-t200.scala:7: error: method foo is defined twice
+t200.scala:7: error: method foo is defined twice in t200.scala
def foo: Int;
^
one error found
diff --git a/test/files/neg/t2779.check b/test/files/neg/t2779.check
index 4f94a780a1..d642541e3e 100644
--- a/test/files/neg/t2779.check
+++ b/test/files/neg/t2779.check
@@ -1,4 +1,4 @@
-t2779.scala:16: error: method f is defined twice
+t2779.scala:16: error: method f is defined twice in t2779.scala
override def f = List(M1)
^
one error found
diff --git a/test/files/neg/t278.check b/test/files/neg/t278.check
index 675ef910ee..0c2dfeb67a 100644
--- a/test/files/neg/t278.check
+++ b/test/files/neg/t278.check
@@ -4,7 +4,7 @@ t278.scala:5: error: overloaded method value a with alternatives:
does not take type parameters
println(a[A])
^
-t278.scala:4: error: method a is defined twice
+t278.scala:4: error: method a is defined twice in t278.scala
def a = (p:A) => ()
^
two errors found
diff --git a/test/files/neg/t591.check b/test/files/neg/t591.check
index 434c2dd002..5cdeebf079 100644
--- a/test/files/neg/t591.check
+++ b/test/files/neg/t591.check
@@ -1,4 +1,4 @@
-t591.scala:38: error: method input_= is defined twice
+t591.scala:38: error: method input_= is defined twice in t591.scala
def input_=(in : Input) = {}
^
one error found
diff --git a/test/files/neg/t800.check b/test/files/neg/t800.check
index 4bfba5420b..44c316a95b 100644
--- a/test/files/neg/t800.check
+++ b/test/files/neg/t800.check
@@ -1,13 +1,13 @@
t800.scala:4: error: qualification is already defined as value qualification
val qualification = false;
^
-t800.scala:8: error: method qualification is defined twice
+t800.scala:8: error: method qualification is defined twice in t800.scala
val qualification = false;
^
-t800.scala:12: error: value qualification is defined twice
+t800.scala:12: error: value qualification is defined twice in t800.scala
var qualification = false;
^
-t800.scala:16: error: method qualification is defined twice
+t800.scala:16: error: method qualification is defined twice in t800.scala
var qualification = false;
^
four errors found
diff --git a/test/files/neg/t960.check b/test/files/neg/t960.check
index 4cc76d3602..603b1cb032 100644
--- a/test/files/neg/t960.check
+++ b/test/files/neg/t960.check
@@ -7,7 +7,7 @@ match argument types (List[a])
t960.scala:22: error: cannot resolve overloaded unapply
case List(x, xs) => 7
^
-t960.scala:12: error: method unapply is defined twice
+t960.scala:12: error: method unapply is defined twice in t960.scala
def unapply[a](xs: List[a]): Option[Null] = xs match {
^
-three errors found \ No newline at end of file
+three errors found
diff --git a/test/pending/run/t4511b.scala b/test/pending/run/t4511b.scala
new file mode 100644
index 0000000000..3337fb3203
--- /dev/null
+++ b/test/pending/run/t4511b.scala
@@ -0,0 +1,25 @@
+import scala.{specialized => spec}
+
+class Interval[@spec(Int) T](high:T)
+
+class X1[@spec(Int) T](interval:Interval[T]) { val x = interval }
+class Y1[@spec(Int) T](interval:Interval[T]) { val y = Some(interval) }
+
+class X2[T](val interval:Interval[T]) { val x = interval }
+class Y2[T](val interval:Interval[T]) { val y = Some(interval) }
+
+class X3[@spec(Int) T](val interval:Interval[T]) { val x = interval }
+class Y3[@spec(Int) T](val interval:Interval[T]) { val y = Some(interval) }
+
+object Test {
+ def tryit(o: => Any) = println(try { "ok: " + o.getClass.getName } catch { case e => "FAIL: " + e + "\n" + e.getStackTrace.mkString("\n ") })
+
+ def main(args: Array[String]) {
+ tryit(new X1(new Interval(3)))
+ tryit(new X2(new Interval(3)))
+ tryit(new X3(new Interval(3)))
+ tryit(new Y1(new Interval(3)))
+ tryit(new Y2(new Interval(3)))
+ tryit(new Y3(new Interval(3)))
+ }
+}