File tree 2 files changed +6
-2
lines changed
compiler/src/dotty/tools/dotc/typer
2 files changed +6
-2
lines changed Original file line number Diff line number Diff line change @@ -38,6 +38,9 @@ object Inferencing {
38
38
result
39
39
}
40
40
41
+ /** Try to fully define `tp`. Return whether constraint has changed.
42
+ * Any changed constraint is kept.
43
+ */
41
44
def canDefineFurther (tp : Type )(using Context ): Boolean =
42
45
val prevConstraint = ctx.typerState.constraint
43
46
isFullyDefined(tp, force = ForceDegree .all)
Original file line number Diff line number Diff line change @@ -570,10 +570,11 @@ class Typer extends Namer
570
570
else if qual.tpe.derivesFrom(defn.DynamicClass )
571
571
&& selName.isTermName && ! isDynamicExpansion(tree)
572
572
then
573
+ val tree2 = cpy.Select (tree0)(untpd.TypedSplice (qual), selName)
573
574
if pt.isInstanceOf [FunOrPolyProto ] || pt == AssignProto then
574
- assignType(tree , TryDynamicCallType )
575
+ assignType(tree2 , TryDynamicCallType )
575
576
else
576
- typedDynamicSelect(tree0 , Nil , pt)
577
+ typedDynamicSelect(tree2 , Nil , pt)
577
578
else
578
579
assignType(tree,
579
580
rawType match
You can’t perform that action at this time.
0 commit comments