Skip to content

Commit d48849f

Browse files
Merge pull request #11239 from dotty-staging/fix-#9239
Fix #9239: Add regression test
2 parents ce684de + d91a88b commit d48849f

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

tests/pos/9239.scala

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
object ABug:
2+
sealed trait Bit
3+
sealed trait B0 extends Bit
4+
sealed trait B1 extends Bit
5+
6+
sealed trait Bin
7+
sealed trait Nil extends Bin
8+
sealed trait ::[U <: Bit, D <: Bin] extends Bin
9+
10+
type Zero = B0 :: Nil
11+
type One = B1 :: Nil
12+
13+
type --[B <: Bin] =
14+
B match
15+
case B1 :: d => B0 :: d
16+
case B0 :: B1 :: Nil => B1 :: Nil
17+
case B0 :: d => B1 :: --[d]
18+
19+
type ×[N <: Bin, M <: Bin] =
20+
(N, M) match
21+
case (Zero, ?) => Zero
22+
23+
type ![N <: Bin] =
24+
N match
25+
case Zero => One
26+
case One => One
27+
case ? => ![--[N]] × (N)
28+
case ? :: ? => ![--[N]] × (N)

0 commit comments

Comments
 (0)