diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2012-07-03 23:59:39 +0200 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2012-07-04 08:13:23 +0200 |
commit | 1a2ec87c0964ad3bf42d49bbdaebd66b45506210 (patch) | |
tree | 154301d14663acfc7420a2181370012364f1b71f /test/files/neg/t6013.check | |
parent | 33936243bdf597e438de8d10ae7b3ed30454be9f (diff) | |
download | scala-1a2ec87c0964ad3bf42d49bbdaebd66b45506210.tar.gz scala-1a2ec87c0964ad3bf42d49bbdaebd66b45506210.tar.bz2 scala-1a2ec87c0964ad3bf42d49bbdaebd66b45506210.zip |
SI-6013 Disallow deferred members from intermediate java parents.
76c76b28f allowed for the fact that a Java method can override
a super class method without matching its type in a Scala sense;
it need only match its type after erasure. However that change
went too far, and considered a concrete method in a base class
to override a deferred method in a subclass.
Diffstat (limited to 'test/files/neg/t6013.check')
-rw-r--r-- | test/files/neg/t6013.check | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/test/files/neg/t6013.check b/test/files/neg/t6013.check new file mode 100644 index 0000000000..502da999f5 --- /dev/null +++ b/test/files/neg/t6013.check @@ -0,0 +1,7 @@ +DerivedScala.scala:4: error: class C needs to be abstract, since there is a deferred declaration of method foo in class B of type => Int which is not implemented in a subclass +class C extends B + ^ +DerivedScala.scala:7: error: class DerivedScala needs to be abstract, since there is a deferred declaration of method foo in class Abstract of type ()Boolean which is not implemented in a subclass +class DerivedScala extends Abstract + ^ +two errors found |