Suggestion crashes with a Conversion requiring a using parameter
ChenCMD opened this issue · comments
Describe the bug
When I input a . after "" on line 5 in the minimized code, metals does not show any suggestion and instead reports a compiler error.
Minimized code
given Int = ???
given (using ev: Int): Conversion[String, Any] = ???
val test = {
""./* Trigger Suggest here */
1
}
Error report
file:///C:/Users/scnme/Chen_Data/Programming/Scala/Test/src/main/scala/Main.scala
### java.lang.AssertionError: NoDenotation.owner
occurred in the presentation compiler.
action parameters:
offset: 88
uri: file:///C:/Users/scnme/Chen_Data/Programming/Scala/Test/src/main/scala/Main.scala
text:
```scala
given Int = ???
given (using ev: Int): Conversion[String, Any] = ???
val test = {
"".@@
???
}
```
#### Error stacktrace:
```
dotty.tools.dotc.core.SymDenotations$NoDenotation$.owner(SymDenotations.scala:2603)
dotty.tools.dotc.typer.Implicits$ImplicitSearch.candSucceedsGiven$1(Implicits.scala:1586)
dotty.tools.dotc.typer.Implicits$ImplicitSearch.comesTooLate$1(Implicits.scala:1595)
dotty.tools.dotc.typer.Implicits$ImplicitSearch.$anonfun$5(Implicits.scala:1600)
scala.collection.immutable.List.filterNot(List.scala:515)
dotty.tools.dotc.typer.Implicits$ImplicitSearch.searchImplicit(Implicits.scala:1600)
dotty.tools.dotc.typer.Implicits$ImplicitSearch.bestImplicit(Implicits.scala:1686)
dotty.tools.dotc.typer.Implicits.inferImplicit(Implicits.scala:1093)
dotty.tools.dotc.typer.Implicits.inferImplicit$(Implicits.scala:851)
dotty.tools.dotc.typer.Typer.inferImplicit(Typer.scala:120)
dotty.tools.dotc.typer.Implicits.inferImplicitArg(Implicits.scala:917)
dotty.tools.dotc.typer.Implicits.inferImplicitArg$(Implicits.scala:851)
dotty.tools.dotc.typer.Typer.inferImplicitArg(Typer.scala:120)
dotty.tools.dotc.typer.Typer.implicitArgs$1(Typer.scala:3817)
dotty.tools.dotc.typer.Typer.addImplicitArgs$1(Typer.scala:3853)
dotty.tools.dotc.typer.Typer.adaptNoArgsImplicitMethod$1(Typer.scala:3932)
dotty.tools.dotc.typer.Typer.adaptNoArgs$1(Typer.scala:4132)
dotty.tools.dotc.typer.Typer.adapt1(Typer.scala:4368)
dotty.tools.dotc.typer.Typer.adapt(Typer.scala:3679)
dotty.tools.dotc.typer.Implicits.tryConversion$1(Implicits.scala:1164)
dotty.tools.dotc.typer.Implicits.typedImplicit(Implicits.scala:1200)
dotty.tools.dotc.typer.Implicits.typedImplicit$(Implicits.scala:851)
dotty.tools.dotc.typer.Typer.typedImplicit(Typer.scala:120)
dotty.tools.dotc.typer.Implicits$ImplicitSearch.tryImplicit(Implicits.scala:1275)
dotty.tools.dotc.typer.Implicits$ImplicitSearch.$anonfun$6(Implicits.scala:1694)
scala.collection.immutable.List.map(List.scala:246)
dotty.tools.dotc.typer.Implicits$ImplicitSearch.allImplicits(Implicits.scala:1694)
dotty.tools.dotc.interactive.Completion$Completer.implicitConversionTargets(Completion.scala:556)
dotty.tools.dotc.interactive.Completion$Completer.implicitConversionMemberCompletions(Completion.scala:421)
dotty.tools.dotc.interactive.Completion$Completer.selectionCompletions(Completion.scala:363)
dotty.tools.dotc.interactive.Completion$.computeCompletions(Completion.scala:188)
dotty.tools.dotc.interactive.Completion$.completions(Completion.scala:53)
dotty.tools.pc.completions.Completions.completions(Completions.scala:128)
dotty.tools.pc.completions.CompletionProvider.completions(CompletionProvider.scala:87)
dotty.tools.pc.ScalaPresentationCompiler.complete$$anonfun$1(ScalaPresentationCompiler.scala:143)
```
#### Short summary:
java.lang.AssertionError: NoDenotation.owner
Expected behavior
Suggestions (for a String
value) should be listed.
Operating system
Windows
Editor/Extension
VS Code
Version of Metals
v1.2.2
Extra context or search terms
No response
Thanks for reporting!
Which Scala version are you using?
Tried Scala 3.4.0
and 3.4.1-RC1
.