diff options
author | Eugene Burmako <xeno.by@gmail.com> | 2013-02-27 16:27:10 +0100 |
---|---|---|
committer | Eugene Burmako <xeno.by@gmail.com> | 2013-02-27 16:27:10 +0100 |
commit | 1117be8418525ce20af847bdcfdbbe66b9cf3d4d (patch) | |
tree | a76003c58f8b89ce1b5d3d5b6d9ec39684b363d2 /src | |
parent | 3b85c3d22b9d62e9e07c53f235ae8e889581ddc8 (diff) | |
download | scala-1117be8418525ce20af847bdcfdbbe66b9cf3d4d.tar.gz scala-1117be8418525ce20af847bdcfdbbe66b9cf3d4d.tar.bz2 scala-1117be8418525ce20af847bdcfdbbe66b9cf3d4d.zip |
SI-7190 macros no longer give rise to bridges
Amazingly enough, this got through all the testing we performed. But now
erasure knows that it shouldn't generate bridges for macro methods.
Diffstat (limited to 'src')
-rw-r--r-- | src/compiler/scala/tools/nsc/transform/Erasure.scala | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/Erasure.scala b/src/compiler/scala/tools/nsc/transform/Erasure.scala index 889d309ba9..cb5268c422 100644 --- a/src/compiler/scala/tools/nsc/transform/Erasure.scala +++ b/src/compiler/scala/tools/nsc/transform/Erasure.scala @@ -477,6 +477,7 @@ abstract class Erasure extends AddInterfaces def checkPair(member: Symbol, other: Symbol) { val otpe = specialErasure(root)(other.tpe) val bridgeNeeded = afterErasure ( + !member.isMacro && !(other.tpe =:= member.tpe) && !(deconstMap(other.tpe) =:= deconstMap(member.tpe)) && { var e = bridgesScope.lookupEntry(member.name) |