summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@epfl.ch>2012-06-19 04:25:42 -0700
committerAdriaan Moors <adriaan.moors@epfl.ch>2012-06-19 04:25:42 -0700
commit32d42b1264bd52578957abffe312a128ac23122b (patch)
treec1a8dc840e9d31a866c2052aa322f498cc4a3c98 /test
parent83f97e9b4733978679f779e11c34fd5d343e1bf4 (diff)
parenta83586a4815acd35df0801ed0e9f067e113c8664 (diff)
downloadscala-32d42b1264bd52578957abffe312a128ac23122b.tar.gz
scala-32d42b1264bd52578957abffe312a128ac23122b.tar.bz2
scala-32d42b1264bd52578957abffe312a128ac23122b.zip
Merge pull request #743 from axel22/issue/4541
Fix SI-4541.
Diffstat (limited to 'test')
-rw-r--r--test/files/neg/t4541.check7
-rw-r--r--test/files/neg/t4541.scala16
-rw-r--r--test/files/neg/t4541b.check7
-rw-r--r--test/files/neg/t4541b.scala16
4 files changed, 46 insertions, 0 deletions
diff --git a/test/files/neg/t4541.check b/test/files/neg/t4541.check
new file mode 100644
index 0000000000..c01226685f
--- /dev/null
+++ b/test/files/neg/t4541.check
@@ -0,0 +1,7 @@
+t4541.scala:11: error: scala.reflect.internal.Types$TypeError: variable data in class Sparse cannot be accessed in Sparse[Int]
+ Access to protected method data not permitted because
+ prefix type Sparse[Int] does not conform to
+ class Sparse$mcI$sp where the access take place
+ that.data
+ ^
+one error found \ No newline at end of file
diff --git a/test/files/neg/t4541.scala b/test/files/neg/t4541.scala
new file mode 100644
index 0000000000..744af1c288
--- /dev/null
+++ b/test/files/neg/t4541.scala
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+@SerialVersionUID(1L)
+final class Sparse[@specialized(Int) T](d: Array[T]) extends Serializable {
+ protected var data: Array[T] = d
+ def set(that: Sparse[T]) = {
+ that.data
+ }
+}
+
+
+
diff --git a/test/files/neg/t4541b.check b/test/files/neg/t4541b.check
new file mode 100644
index 0000000000..54d9c3d1ee
--- /dev/null
+++ b/test/files/neg/t4541b.check
@@ -0,0 +1,7 @@
+t4541b.scala:13: error: scala.reflect.internal.Types$TypeError: variable data in class SparseArray cannot be accessed in SparseArray[Int]
+ Access to protected method data not permitted because
+ prefix type SparseArray[Int] does not conform to
+ class SparseArray$mcI$sp where the access take place
+ use(that.data.clone)
+ ^
+one error found \ No newline at end of file
diff --git a/test/files/neg/t4541b.scala b/test/files/neg/t4541b.scala
new file mode 100644
index 0000000000..7a21ffc156
--- /dev/null
+++ b/test/files/neg/t4541b.scala
@@ -0,0 +1,16 @@
+
+
+
+
+
+@SerialVersionUID(1L)
+final class SparseArray[@specialized(Int) T](private var data: Array[T]) extends Serializable {
+ def use(inData: Array[T]) = {
+ data = inData;
+ }
+
+ def set(that: SparseArray[T]) = {
+ use(that.data.clone)
+ }
+}
+