@@ -2,6 +2,7 @@ package scala.async.internal
2
2
3
3
trait Lifter {
4
4
self : AsyncMacro =>
5
+ import scala .reflect .internal .Flags ._
5
6
import global ._
6
7
7
8
/**
@@ -106,26 +107,21 @@ trait Lifter {
106
107
107
108
val lifted = liftableSyms.map(symToTree).toList.map {
108
109
t =>
110
+ val sym = t.symbol
109
111
val treeLifted = t match {
110
112
case vd@ ValDef (_, _, tpt, rhs) =>
111
- import reflect .internal .Flags ._
112
- val sym = vd.symbol
113
113
sym.setFlag(MUTABLE | STABLE | PRIVATE | LOCAL )
114
114
sym.name = name.fresh(sym.name.toTermName)
115
115
sym.modifyInfo(_.deconst)
116
116
val zeroRhs = atPos(t.pos)(gen.mkZero(vd.symbol.info))
117
117
treeCopy.ValDef (vd, Modifiers (sym.flags), sym.name, TypeTree (sym.tpe).setPos(t.pos), zeroRhs)
118
118
case dd@ DefDef (_, _, tparams, vparamss, tpt, rhs) =>
119
- import reflect .internal .Flags ._
120
- val sym = dd.symbol
121
119
sym.name = this .name.fresh(sym.name.toTermName)
122
120
sym.setFlag(PRIVATE | LOCAL )
123
121
// Was `DefDef(sym, rhs)`, but this ran afoul of `ToughTypeSpec.nestedMethodWithInconsistencyTreeAndInfoParamSymbols`
124
122
// due to the handling of type parameter skolems in `thisMethodType` in `Namers`
125
123
treeCopy.DefDef (dd, Modifiers (sym.flags), sym.name, tparams, vparamss, tpt, rhs)
126
124
case cd@ ClassDef (_, _, tparams, impl) =>
127
- import reflect .internal .Flags ._
128
- val sym = cd.symbol
129
125
sym.name = newTypeName(name.fresh(sym.name.toString).toString)
130
126
companionship.companionOf(cd.symbol) match {
131
127
case NoSymbol =>
@@ -135,8 +131,6 @@ trait Lifter {
135
131
}
136
132
treeCopy.ClassDef (cd, Modifiers (sym.flags), sym.name, tparams, impl)
137
133
case md@ ModuleDef (_, _, impl) =>
138
- import reflect .internal .Flags ._
139
- val sym = md.symbol
140
134
companionship.companionOf(md.symbol) match {
141
135
case NoSymbol =>
142
136
sym.name = name.fresh(sym.name.toTermName)
@@ -145,8 +139,6 @@ trait Lifter {
145
139
}
146
140
treeCopy.ModuleDef (md, Modifiers (sym.flags), sym.name, impl)
147
141
case td@ TypeDef (_, _, tparams, rhs) =>
148
- import reflect .internal .Flags ._
149
- val sym = td.symbol
150
142
sym.name = newTypeName(name.fresh(sym.name.toString).toString)
151
143
treeCopy.TypeDef (td, Modifiers (sym.flags), sym.name, tparams, rhs)
152
144
}
0 commit comments