Closed
Description
import dotty.tools.dotc.quoted.Toolbox._
import scala.quoted._
object Test {
def foo[T: Type](init: Expr[T]): Expr[Unit] = '{
var x = ~init
}
def main(args: Array[String]): Unit = {
foo('(Option(9))).run
}
}
crashes with
Exception in thread "main" scala.MatchError: AppliedType(TypeRef(TermRef(ThisType(TypeRef(NoPrefix,module class <root>)),module scala),Option),List(TypeRef(TermRef(ThisType(TypeRef(NoPrefix,module class <root>)),module scala),Int))) (of class dotty.tools.dotc.core.Types$CachedAppliedType)
at dotty.tools.dotc.core.tasty.TreeUnpickler$TreeReader.readPathTerm$1(TreeUnpickler.scala:936)
at dotty.tools.dotc.core.tasty.TreeUnpickler$TreeReader.readLengthTerm$1(TreeUnpickler.scala:1099)
at dotty.tools.dotc.core.tasty.TreeUnpickler$TreeReader.readTerm(TreeUnpickler.scala:1105)
at dotty.tools.dotc.core.tasty.TreeUnpickler.unpickleExpr(TreeUnpickler.scala:85)
at dotty.tools.dotc.core.tasty.DottyUnpickler.unpickleExpr(DottyUnpickler.scala:50)
at dotty.tools.dotc.core.quoted.PickledQuotes$.unpickle(PickledQuotes.scala:105)
at dotty.tools.dotc.core.quoted.PickledQuotes$.unpickleType(PickledQuotes.scala:75)
at dotty.tools.dotc.core.quoted.PickledQuotes$.quotedTypeToTree(PickledQuotes.scala:61)
at dotty.tools.dotc.core.tasty.TreeUnpickler$TreeReader.readHole(TreeUnpickler.scala:1158)
at dotty.tools.dotc.core.tasty.TreeUnpickler$TreeReader.readLengthType$1(TreeUnpickler.scala:314)
at dotty.tools.dotc.core.tasty.TreeUnpickler$TreeReader.readType(TreeUnpickler.scala:386)
at dotty.tools.dotc.core.tasty.TreeUnpickler$TreeReader.readTpt(TreeUnpickler.scala:1119)
at dotty.tools.dotc.core.tasty.TreeUnpickler$TreeReader.readLengthTerm$1(TreeUnpickler.scala:1093)
at dotty.tools.dotc.core.tasty.TreeUnpickler$TreeReader.readTerm(TreeUnpickler.scala:1105)
at dotty.tools.dotc.core.tasty.TreeUnpickler$TreeReader.readTpt(TreeUnpickler.scala:1116)
at dotty.tools.dotc.core.tasty.TreeUnpickler$TreeReader.readNewDef(TreeUnpickler.scala:767)