File tree 2 files changed +3
-5
lines changed
src/dotty/tools/dotc/core 2 files changed +3
-5
lines changed Original file line number Diff line number Diff line change @@ -2924,7 +2924,7 @@ object Types {
2924
2924
tp match {
2925
2925
case tp : TypeRef => apply(x, tp.prefix)
2926
2926
case tp : RecThis => RecType .this eq tp.binder
2927
- case tp : LazyRef => true // To be safe, assume a reference exists
2927
+ case tp : LazyRef => this (x, tp.ref)
2928
2928
case _ => foldOver(x, tp)
2929
2929
}
2930
2930
}
@@ -5729,7 +5729,8 @@ object Types {
5729
5729
def apply (exists : Boolean , tp : Type ): Boolean =
5730
5730
exists || tp.match {
5731
5731
case tp : NamedType =>
5732
- this (false , tp.prefix)
5732
+ // a method param is non-local in avoidance
5733
+ ! tp.symbol.is(Param ) && this (false , tp.prefix)
5733
5734
case NoPrefix =>
5734
5735
true
5735
5736
case tp : AppliedType =>
Original file line number Diff line number Diff line change @@ -60,6 +60,3 @@ i9793.scala
60
60
61
61
# lazy_implicit symbol has different position after pickling
62
62
i8182.scala
63
-
64
- # trivial recursive type gets stripped
65
- i11464.scala
You can’t perform that action at this time.
0 commit comments