File tree 1 file changed +8
-5
lines changed
compiler/src/dotty/tools/dotc/core
1 file changed +8
-5
lines changed Original file line number Diff line number Diff line change @@ -88,13 +88,13 @@ object Types {
88
88
89
89
// ----- Tests -----------------------------------------------------
90
90
91
- // debug only: a unique identifier for a type
92
- val uniqId = {
93
- nextId = nextId + 1
91
+ // // debug only: a unique identifier for a type
92
+ // val uniqId = {
93
+ // nextId = nextId + 1
94
94
// if (nextId == 19555)
95
95
// println("foo")
96
- nextId
97
- }
96
+ // nextId
97
+ // }
98
98
99
99
/** A cache indicating whether the type was still provisional, last time we checked */
100
100
@ sharable private var mightBeProvisional = true
@@ -122,6 +122,8 @@ object Types {
122
122
case _ => false
123
123
}
124
124
}
125
+ case t : LazyRef =>
126
+ ! t.completed || apply(x, t.ref)
125
127
case _ =>
126
128
foldOver(x, t)
127
129
}
@@ -2260,6 +2262,7 @@ object Types {
2260
2262
myRef
2261
2263
}
2262
2264
def evaluating = computed && myRef == null
2265
+ def completed = myRef != null
2263
2266
override def underlying (implicit ctx : Context ) = ref
2264
2267
override def toString = s " LazyRef( ${if (computed) myRef else " ..." }) "
2265
2268
override def equals (other : Any ) = this .eq(other.asInstanceOf [AnyRef ])
You can’t perform that action at this time.
0 commit comments