Skip to content

Commit b88ade9

Browse files
committed
Use empty roots for tasty terms
1 parent 898c48a commit b88ade9

File tree

3 files changed

+6
-5
lines changed

3 files changed

+6
-5
lines changed

compiler/src/dotty/tools/dotc/core/quoted/PickledQuotes.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ object PickledQuotes {
110110
/** Unpickle TASTY bytes into it's tree */
111111
private def unpickle(bytes: Array[Byte], splices: Seq[Any])(implicit ctx: Context): Tree = {
112112
val unpickler = new TastyUnpickler(bytes, splices)
113-
unpickler.enter(Set(ctx.owner))
113+
unpickler.enter(Set.empty)
114114
val tree = unpickler.tree
115115
if (pickling ne noPrinter) {
116116
println(i"**** unpickled quote for \n${tree.show}")

compiler/src/dotty/tools/dotc/core/tasty/TreeUnpickler.scala

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -855,11 +855,12 @@ class TreeUnpickler(reader: TastyReader,
855855
nextByte == IMPORT || nextByte == PACKAGE
856856

857857
def readTopLevel()(implicit ctx: Context): List[Tree] = {
858-
@tailrec def read(acc: ListBuffer[Tree]): List[Tree] = nextByte match {
859-
case IMPORT | PACKAGE =>
858+
@tailrec def read(acc: ListBuffer[Tree]): List[Tree] = {
859+
if (isTopLevel) {
860860
acc += readIndexedStat(NoSymbol)
861861
if (!isAtEnd) read(acc) else acc.toList
862-
case _ => // top-level trees which are not imports or packages are not part of tree
862+
}
863+
else // top-level trees which are not imports or packages are not part of tree
863864
acc.toList
864865
}
865866
read(new ListBuffer[tpd.Tree])

compiler/src/dotty/tools/dotc/transform/Pickler.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ class Pickler extends Phase {
9494
val unpicklers =
9595
for ((cls, pickler) <- picklers) yield {
9696
val unpickler = new DottyUnpickler(pickler.assembleParts())
97-
unpickler.enter(roots = Set())
97+
unpickler.enter(roots = Set.empty)
9898
cls -> unpickler
9999
}
100100
pickling.println("************* entered toplevel ***********")

0 commit comments

Comments
 (0)