diff options
author | Martin Odersky <odersky@gmail.com> | 2012-03-06 17:48:42 +0100 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2012-03-06 17:50:40 +0100 |
commit | 1e9277689461452c594dc547dc0b0ceab8cd3e7d (patch) | |
tree | 07a4cb55a4f90d05dcd093e3d7b562ba28513e6d /src/compiler/scala/tools/nsc/transform/Erasure.scala | |
parent | fa55e4f0f8d2834becdb9a9aef9c3ea65cb31fee (diff) | |
download | scala-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.scala | 6 |
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) } |