From ab3ac7479c25a446089559c48eb75b8fd61dc731 Mon Sep 17 00:00:00 2001 From: Nicolas Stucki Date: Fri, 5 May 2023 20:40:06 +0200 Subject: [PATCH] Remove code dealing with `@SplicedType` --- compiler/src/dotty/tools/dotc/staging/HealType.scala | 4 +--- .../dotty/tools/dotc/transform/PickleQuotes.scala | 3 --- .../src/dotty/tools/dotc/transform/Splicing.scala | 12 ------------ 3 files changed, 1 insertion(+), 18 deletions(-) diff --git a/compiler/src/dotty/tools/dotc/staging/HealType.scala b/compiler/src/dotty/tools/dotc/staging/HealType.scala index 05056730491a..023271960b40 100644 --- a/compiler/src/dotty/tools/dotc/staging/HealType.scala +++ b/compiler/src/dotty/tools/dotc/staging/HealType.scala @@ -43,8 +43,6 @@ class HealType(pos: SrcPos)(using Context) extends TypeMap { private def healTypeRef(tp: TypeRef): Type = tp.prefix match - case NoPrefix if tp.typeSymbol.hasAnnotation(defn.QuotedRuntime_SplicedTypeAnnot) => - tp case prefix: TermRef if tp.symbol.isTypeSplice => checkNotWildcardSplice(tp) if level == 0 then tp else getTagRef(prefix) @@ -58,7 +56,7 @@ class HealType(pos: SrcPos)(using Context) extends TypeMap { private object NonSpliceAlias: def unapply(tp: TypeRef)(using Context): Option[Type] = tp.underlying match - case TypeAlias(alias) if !tp.symbol.isTypeSplice && !tp.typeSymbol.hasAnnotation(defn.QuotedRuntime_SplicedTypeAnnot) => Some(alias) + case TypeAlias(alias) if !tp.symbol.isTypeSplice => Some(alias) case _ => None private def checkNotWildcardSplice(splice: TypeRef): Unit = diff --git a/compiler/src/dotty/tools/dotc/transform/PickleQuotes.scala b/compiler/src/dotty/tools/dotc/transform/PickleQuotes.scala index 5f597a2682fc..98bca65093fa 100644 --- a/compiler/src/dotty/tools/dotc/transform/PickleQuotes.scala +++ b/compiler/src/dotty/tools/dotc/transform/PickleQuotes.scala @@ -83,9 +83,6 @@ class PickleQuotes extends MacroTransform { assert(Inlines.inInlineMethod) case tree: Splice => assert(Inlines.inInlineMethod) - case _ : TypeDef if !Inlines.inInlineMethod => - assert(!tree.symbol.hasAnnotation(defn.QuotedRuntime_SplicedTypeAnnot), - s"${tree.symbol} should have been removed by PickledQuotes because it has a @quoteTypeTag") case _ => override def run(using Context): Unit = diff --git a/compiler/src/dotty/tools/dotc/transform/Splicing.scala b/compiler/src/dotty/tools/dotc/transform/Splicing.scala index 3e8ba67fb8fc..d2a19760538a 100644 --- a/compiler/src/dotty/tools/dotc/transform/Splicing.scala +++ b/compiler/src/dotty/tools/dotc/transform/Splicing.scala @@ -117,18 +117,6 @@ class Splicing extends MacroTransform: val newSplicedCode1 = splicer.transformSplice(tree.expr, tree.tpe, holeIdx)(using spliceContext) val newSplicedCode2 = Level0QuoteTransformer.transform(newSplicedCode1)(using spliceContext) newSplicedCode2 - case tree: TypeDef if tree.symbol.hasAnnotation(defn.QuotedRuntime_SplicedTypeAnnot) => - val tp @ TypeRef(qual: TermRef, _) = tree.rhs.tpe.hiBound: @unchecked - quotedDefs += tree.symbol - val hole = typeHoles.get(qual) match - case Some (hole) => cpy.Hole(hole)(content = EmptyTree) - case None => - val holeIdx = numHoles - numHoles += 1 - val hole = tpd.Hole(false, holeIdx, Nil, ref(qual), TypeTree(tp)) - typeHoles.put(qual, hole) - hole - cpy.TypeDef(tree)(rhs = hole) case _: Template => for sym <- tree.symbol.owner.info.decls do quotedDefs += sym