summaryrefslogtreecommitdiff
path: root/src/compiler
diff options
context:
space:
mode:
Diffstat (limited to 'src/compiler')
-rw-r--r--src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala
index 73081e1c9a..8fda1d9767 100644
--- a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala
+++ b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala
@@ -418,9 +418,10 @@ abstract class GenJVM extends SubComponent {
nattr
}
- def addGenericSignature(jmember: JMember, sym: Symbol, owner: Symbol) {
- if (!sym.hasFlag(Flags.LIFTED |
- Flags.EXPANDEDNAME | Flags.SYNTHETIC) && settings.target.value == "jvm-1.5") {
+ def addGenericSignature(jmember: JMember, sym: Symbol) {
+ if (settings.target.value == "jvm-1.5"
+ && !sym.hasFlag(Flags.EXPANDEDNAME | Flags.SYNTHETIC)
+ && !(sym.isMethod && sym.hasFlag(Flags.LIFTED))) {
val memberTpe = atPhase(currentRun.erasurePhase)(owner.thisType.memberInfo(sym))
// println("sym: " + sym.fullNameString + " : " + memberTpe + " sym.info: " + sym.info)
erasure.javaSig(sym, memberTpe) match {