File tree Expand file tree Collapse file tree 1 file changed +9
-3
lines changed
src/dotty/tools/dotc/core Expand file tree Collapse file tree 1 file changed +9
-3
lines changed Original file line number Diff line number Diff line change @@ -205,17 +205,23 @@ object Denotations {
205
205
denot.symbol
206
206
}
207
207
208
+ def slowSearch (name : Name )(implicit ctx : Context ): Symbol =
209
+ info.decls.find(_.name == name).getOrElse(NoSymbol )
210
+
208
211
def requiredMethod (name : PreName )(implicit ctx : Context ): TermSymbol =
209
212
if (info.exists) {
210
213
val meth = info.member(name.toTermName)
211
214
if (meth.exists) meth.requiredSymbol(_ is Method ).asTerm
212
215
else { // Heisenbughunt
213
- println(s " *** missing method: $name in $this" )
214
- println(info.decls)
216
+ println(s " *** missing method: ${name.toString} in $this" )
217
+ info.decls.checkConsistent()
218
+ println(i " decls = ${info.decls}" )
219
+ if (slowSearch(name.toTermName).exists)
220
+ System .err.println(i " **** slow search found: ${slowSearch(name.toTermName)}" )
215
221
throw new TypeError (s " Missing method: $this . $name" )
216
222
}
217
223
}
218
- else throw new TypeError (s " Missing module: $this" )
224
+ else throw new TypeError (s " M issing module: $this" )
219
225
220
226
def requiredMethodRef (name : PreName )(implicit ctx : Context ): TermRef =
221
227
requiredMethod(name).termRef
You can’t perform that action at this time.
0 commit comments