File tree Expand file tree Collapse file tree 1 file changed +3
-5
lines changed
src/dotty/tools/dotc/transform Expand file tree Collapse file tree 1 file changed +3
-5
lines changed Original file line number Diff line number Diff line change @@ -246,16 +246,14 @@ class PatternMatcher extends MiniPhaseTransform with DenotTransformer {thisTrans
246
246
case ((mkCase, sym), nextCase) =>
247
247
val body = mkCase(new OptimizedCasegen (nextCase)).ensureConforms(restpe)
248
248
249
- val caseBody = DefDef (sym, _ => Block (List (acc), body))
250
-
251
- Block (List (caseBody),ref(sym).ensureApplied)
249
+ DefDef (sym, _ => Block (List (acc), body))
252
250
}}
253
251
254
252
255
253
// scrutSym == NoSymbol when generating an alternatives matcher
256
254
// val scrutDef = scrutSym.fold(List[Tree]())(ValDef(_, scrut) :: Nil) // for alternatives
257
255
258
- caseDefs
256
+ Block ( List ( caseDefs), ref(caseSyms.head).ensureApplied)
259
257
}
260
258
261
259
class OptimizedCasegen (nextCase : Tree ) extends CommonCodegen with Casegen {
@@ -283,7 +281,7 @@ class PatternMatcher extends MiniPhaseTransform with DenotTransformer {thisTrans
283
281
List (ValDef (prevSym, prev)),
284
282
// must be isEmpty and get as we don't control the target of the call (prev is an extractor call)
285
283
ifThenElseZero(
286
- ref(prevSym).select(nme.isDefined).select(defn. Boolean_! ) ,
284
+ ref(prevSym).select(nme.isDefined),
287
285
Substitution (b, prevValue)(next)
288
286
)
289
287
)
You can’t perform that action at this time.
0 commit comments