Skip to content

Commit f4280ab

Browse files
committed
Check PCP in annotations
1 parent b47498d commit f4280ab

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

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

+4
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,10 @@ class PCPCheckAndHeal(@constructorOnly ictx: Context) extends TreeMapWithStages(
3838
transform(tree)(ctx.withSource(tree.source))
3939
else tree match {
4040
case tree: DefDef if tree.symbol.is(Inline) && level > 0 => EmptyTree
41+
case tree: DefTree =>
42+
for (annot <- tree.symbol.annotations)
43+
transform(annot.tree) given ctx.withOwner(tree.symbol)
44+
checkLevel(super.transform(tree))
4145
case _ => checkLevel(super.transform(tree))
4246
}
4347
}

tests/neg/i7052.scala

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import scala.quoted._
2+
class Test {
3+
def foo(str: String) given QuoteContext = '{
4+
@deprecated(str, "") // error
5+
def bar = ???
6+
}
7+
}

0 commit comments

Comments
 (0)