summaryrefslogtreecommitdiff
path: root/test/files/run/trait-renaming/A_1.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2012-01-23 08:19:32 -0800
committerPaul Phillips <paulp@improving.org>2012-01-23 10:11:52 -0800
commit5cbd7d06eb8fe81bc3812ee99de05b1f4bd820fe (patch)
tree4ab1a9e75afad397b4602f288298fb2403db05bf /test/files/run/trait-renaming/A_1.scala
parentec3438c28987a38a3c03ebb5fe084709384b485a (diff)
downloadscala-5cbd7d06eb8fe81bc3812ee99de05b1f4bd820fe.tar.gz
scala-5cbd7d06eb8fe81bc3812ee99de05b1f4bd820fe.tar.bz2
scala-5cbd7d06eb8fe81bc3812ee99de05b1f4bd820fe.zip
Figured out the "$class$1" problem.
In lambda lift traits are renamed independently of their implementation classes, leading in the case of a method-defined trait to an interface called A$1 and an impl class called A$class$1 rather than A$1$class. This is now remedied.
Diffstat (limited to 'test/files/run/trait-renaming/A_1.scala')
-rw-r--r--test/files/run/trait-renaming/A_1.scala15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/files/run/trait-renaming/A_1.scala b/test/files/run/trait-renaming/A_1.scala
new file mode 100644
index 0000000000..2c3d4f566f
--- /dev/null
+++ b/test/files/run/trait-renaming/A_1.scala
@@ -0,0 +1,15 @@
+package bippy {
+ class A {
+ def f = {
+ trait B {
+ def f = 5
+ }
+ trait C {
+ def g = 10
+ }
+ new B with C { }
+ }
+
+ def g = Class.forName("bippy.A$B$1$class")
+ }
+}