summaryrefslogtreecommitdiff
path: root/test/files/neg/valueclasses.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2012-02-19 18:02:44 +0100
committerMartin Odersky <odersky@gmail.com>2012-02-19 18:03:19 +0100
commit64aaef72504b46b9d40359eb0476ad8416f36023 (patch)
treecb41068323ee789847e287a9caf6695856580f16 /test/files/neg/valueclasses.scala
parent8cc7de74d35b437b7126d02a6219796b5872ac14 (diff)
downloadscala-64aaef72504b46b9d40359eb0476ad8416f36023.tar.gz
scala-64aaef72504b46b9d40359eb0476ad8416f36023.tar.bz2
scala-64aaef72504b46b9d40359eb0476ad8416f36023.zip
Implemented super access in value classes, restrictions for value classes.
Diffstat (limited to 'test/files/neg/valueclasses.scala')
-rw-r--r--test/files/neg/valueclasses.scala36
1 files changed, 36 insertions, 0 deletions
diff --git a/test/files/neg/valueclasses.scala b/test/files/neg/valueclasses.scala
new file mode 100644
index 0000000000..2794a852ee
--- /dev/null
+++ b/test/files/neg/valueclasses.scala
@@ -0,0 +1,36 @@
+package test
+
+trait T extends AnyVal // fail
+
+class Foo {
+ class Bar(x: Int) extends AnyVal // fail
+ def foo() {
+ class Baz(x: Int) extends AnyVal // fail
+ }
+}
+
+class V1 extends AnyVal // fail
+
+class V2(private[test] val x: Int) extends AnyVal // fail
+class V3(protected[test] val x: Int) extends AnyVal // fail
+class V4(protected val x: Int) extends AnyVal // fail
+class V5(private val x: Int) extends AnyVal // fail
+
+class V6(val x: Int, val y: String) extends AnyVal // fail
+class V7(val x: Int, private[this] val y: String) extends AnyVal // fail
+class V8(var x: Int) extends AnyVal // fail
+
+class V9(val x: Int) extends AnyVal {
+ val y = x // fail
+}
+
+class V10[T](val x: T) extends AnyVal // fail
+class V11[T](val x: List[T]) extends AnyVal // ok
+class V12[@specialized T, U](val x: (T, U)) extends AnyVal // fail
+
+class V13(x: Int) extends AnyVal // fail
+
+
+
+
+