summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/transform/Erasure.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2012-03-06 17:48:42 +0100
committerMartin Odersky <odersky@gmail.com>2012-03-06 17:50:40 +0100
commit1e9277689461452c594dc547dc0b0ceab8cd3e7d (patch)
tree07a4cb55a4f90d05dcd093e3d7b562ba28513e6d /src/compiler/scala/tools/nsc/transform/Erasure.scala
parentfa55e4f0f8d2834becdb9a9aef9c3ea65cb31fee (diff)
downloadscala-1e9277689461452c594dc547dc0b0ceab8cd3e7d.tar.gz
scala-1e9277689461452c594dc547dc0b0ceab8cd3e7d.tar.bz2
scala-1e9277689461452c594dc547dc0b0ceab8cd3e7d.zip
Fixes to value classes: Flags now double definitions, private constructors as errors. Fixed erasure scheme.
Diffstat (limited to 'src/compiler/scala/tools/nsc/transform/Erasure.scala')
-rw-r--r--src/compiler/scala/tools/nsc/transform/Erasure.scala6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/Erasure.scala b/src/compiler/scala/tools/nsc/transform/Erasure.scala
index f3cb50e5c4..beb7083caa 100644
--- a/src/compiler/scala/tools/nsc/transform/Erasure.scala
+++ b/src/compiler/scala/tools/nsc/transform/Erasure.scala
@@ -642,8 +642,10 @@ abstract class Erasure extends AddInterfaces
tree match {
case InjectDerivedValue(arg) =>
val clazz = tree.symbol
- util.trace("transforming inject "+arg+":"+underlyingOfValueClass(clazz)+"/"+ErasedValueType(clazz))(
- typed1(arg, mode, underlyingOfValueClass(clazz)) setType ErasedValueType(clazz))
+ val result = typed1(arg, mode, underlyingOfValueClass(clazz)) setType ErasedValueType(clazz)
+ log("transforming inject "+arg+":"+underlyingOfValueClass(clazz)+"/"+ErasedValueType(clazz)+" = "+result)
+ return result
+
case _ =>
super.typed1(adaptMember(tree), mode, pt)
}