Skip to content

Commit 5693900

Browse files
Add regression test (scala#16857)
Closes scala#16008
2 parents 0ab89e6 + e0f56c8 commit 5693900

File tree

2 files changed

+25
-0
lines changed

2 files changed

+25
-0
lines changed

tests/pos-macros/i16008/Macro_1.scala

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import scala.quoted.*
2+
3+
enum MyEnum0:
4+
case Marked
5+
case Marked2(i: Int)
6+
7+
trait MyMarker
8+
9+
enum MyEnum(val value: String):
10+
case Marked extends MyEnum("marked") with MyMarker
11+
case Marked2(i: Int) extends MyEnum("marked") with MyMarker
12+
13+
inline def enumMacro: Unit = ${ enumMacroExpr }
14+
15+
private def enumMacroExpr(using Quotes): Expr[Unit] =
16+
import quotes.reflect.*
17+
assert(TypeRepr.of[MyEnum0].typeSymbol.flags.is(Flags.Enum))
18+
assert(TypeRepr.of[MyEnum0.Marked.type].termSymbol.flags.is(Flags.Enum))
19+
assert(TypeRepr.of[MyEnum0.Marked2].typeSymbol.flags.is(Flags.Enum))
20+
assert(TypeRepr.of[MyEnum].typeSymbol.flags.is(Flags.Enum))
21+
assert(TypeRepr.of[MyEnum.Marked.type].termSymbol.flags.is(Flags.Enum))
22+
assert(TypeRepr.of[MyEnum.Marked2].typeSymbol.flags.is(Flags.Enum))
23+
24+
'{}

tests/pos-macros/i16008/Test_2.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
def test = enumMacro

0 commit comments

Comments
 (0)