summaryrefslogtreecommitdiff
path: root/test/files/pos/t6215.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2012-09-29 19:58:18 +0200
committerAdriaan Moors <adriaan.moors@epfl.ch>2012-10-02 17:21:21 +0200
commitd46f2d519de0f155d37a43927fb3924d2f2fbdb2 (patch)
tree67f776cb827f89bd389544774df8cccef033ecfc /test/files/pos/t6215.scala
parente9edc69684b3d55a0aef16325e358036c71f4c57 (diff)
downloadscala-d46f2d519de0f155d37a43927fb3924d2f2fbdb2.tar.gz
scala-d46f2d519de0f155d37a43927fb3924d2f2fbdb2.tar.bz2
scala-d46f2d519de0f155d37a43927fb3924d2f2fbdb2.zip
SI-6215 Fix compiler crash on private method in value class
Fixes the problem with private defs in value classes by moving the $extension after the name proper rather than before. The previous scheme did not commute with makeNonPrivate: I.e. if -ext-> is "generate extension name" and -mnp-> is "make not private" we did get for method foo in value class Foo: foo -ext-> extension$foo -mnp-> Foo$$extension$foo but foo -mnp-> Foo$$foo -ext-> extension$Foo$$foo With the change both variations give the same name: foo -ext-> foo$extension -mnp-> Foo$$foo$extension but foo -mnp-> Foo$$foo -ext-> Foo$$foo$extension
Diffstat (limited to 'test/files/pos/t6215.scala')
-rw-r--r--test/files/pos/t6215.scala1
1 files changed, 1 insertions, 0 deletions
diff --git a/test/files/pos/t6215.scala b/test/files/pos/t6215.scala
new file mode 100644
index 0000000000..2f66892b69
--- /dev/null
+++ b/test/files/pos/t6215.scala
@@ -0,0 +1 @@
+class Foo(val v: String) extends AnyVal { private def len = v.length ; def f = len }