diff options
author | Dmitry Petrashko <dark@d-d.me> | 2016-02-20 17:38:01 +0100 |
---|---|---|
committer | Dmitry Petrashko <dark@d-d.me> | 2016-02-20 17:38:01 +0100 |
commit | 6e535f7dc855d1587142f81bd9a53ea9ba3c7300 (patch) | |
tree | d40ac06c10a3d587ac9bac1fea7d6acde2339e75 /tests | |
parent | 3a8fa8b4fc5ef486ffc2e9e85d454598bf15aa02 (diff) | |
parent | 1ebbba352eb61f5cc575455f61d496a54fcb7f95 (diff) | |
download | dotty-6e535f7dc855d1587142f81bd9a53ea9ba3c7300.tar.gz dotty-6e535f7dc855d1587142f81bd9a53ea9ba3c7300.tar.bz2 dotty-6e535f7dc855d1587142f81bd9a53ea9ba3c7300.zip |
Merge pull request #1112 from dotty-staging/value-classes-private-this-param
Value classes: add support for private[this] parameter
Diffstat (limited to 'tests')
-rw-r--r-- | tests/neg/valueClasses.scala | 2 | ||||
-rw-r--r-- | tests/pos/valueclasses/privatethisparam.scala | 18 |
2 files changed, 18 insertions, 2 deletions
diff --git a/tests/neg/valueClasses.scala b/tests/neg/valueClasses.scala index ae90ef63c..74a576ce6 100644 --- a/tests/neg/valueClasses.scala +++ b/tests/neg/valueClasses.scala @@ -6,5 +6,3 @@ class B1 { class B2(x: Int) extends AnyVal // error: value class may not be a local class } } -class C(private[this] val u: Int) extends AnyVal // error: value class parameter must not be private[this] -class D(u: Int) extends AnyVal // error: value class parameter must not be private[this] diff --git a/tests/pos/valueclasses/privatethisparam.scala b/tests/pos/valueclasses/privatethisparam.scala new file mode 100644 index 000000000..77ca9851c --- /dev/null +++ b/tests/pos/valueclasses/privatethisparam.scala @@ -0,0 +1,18 @@ +package privatethisparam + +class Meter[T](x: T) extends AnyVal { + def zero: T = x +} + +class Meter2(private[this] val x: Int) extends AnyVal { + def foo = x +} + +object Test { + def bar = new Meter2(42) + def useZero = new Meter(5).zero + def test: Unit = { + val m1 = new Meter(1) + m1.zero + } +}
\ No newline at end of file |