Skip to content

Commit cd12e32

Browse files
Merge pull request #7398 from dotty-staging/fix-#7395
Fix #7395: Handle inlined repeated arguments
2 parents 45b6ebd + 4ba89c0 commit cd12e32

File tree

6 files changed

+27
-14
lines changed

6 files changed

+27
-14
lines changed

library/src/scala/tasty/reflect/Printers.scala

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -833,12 +833,10 @@ trait Printers
833833
case Typed(term, tpt) =>
834834
tpt.tpe match {
835835
case Types.Repeated(_) =>
836+
printTree(term)
836837
term match {
837-
case Repeated(_, _) =>
838-
printTree(term)
839-
case _ =>
840-
printTree(term)
841-
this += ": " += highlightTypeDef("_*")
838+
case Repeated(_, _) | Inlined(None, Nil, Repeated(_, _)) => this
839+
case _ => this += ": " += highlightTypeDef("_*")
842840
}
843841
case _ =>
844842
inParens {

tests/run-macros/i6765-b.check

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
scala.List.apply[java.lang.String]("One": _*)
2-
scala.List.apply[java.lang.String]("One": _*)
1+
scala.List.apply[java.lang.String]("One")
2+
scala.List.apply[java.lang.String]("One")

tests/run-macros/i6765-c.check

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
scala.Nil
22
List()
33

4-
scala.List.apply[java.lang.String]("#0": _*)
4+
scala.List.apply[java.lang.String]("#0")
55
List(#0)
66

7-
scala.List.apply[java.lang.String]("#0", "#1": _*)
7+
scala.List.apply[java.lang.String]("#0", "#1")
88
List(#0, #1)
99

10-
scala.List.apply[java.lang.String]("#0", "#1", "#2": _*)
10+
scala.List.apply[java.lang.String]("#0", "#1", "#2")
1111
List(#0, #1, #2)
1212

13-
scala.List.apply[java.lang.String]("#0", "#1", "#2", "#3": _*)
13+
scala.List.apply[java.lang.String]("#0", "#1", "#2", "#3")
1414
List(#0, #1, #2, #3)
1515

16-
scala.List.apply[java.lang.String]("#0", "#1", "#2", "#3", "#4": _*)
16+
scala.List.apply[java.lang.String]("#0", "#1", "#2", "#3", "#4")
1717
List(#0, #1, #2, #3, #4)
1818

tests/run-macros/i6765.check

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
scala.List.apply[java.lang.String]("One": _*)
2-
scala.List.apply[java.lang.String]("One": _*)
1+
scala.List.apply[java.lang.String]("One")
2+
scala.List.apply[java.lang.String]("One")

tests/run-staging/i7381.check

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
scala.List.apply[scala.Int](1, 2, 3)

tests/run-staging/i7381.scala

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import scala.quoted._
2+
import scala.quoted.staging._
3+
4+
object Test {
5+
6+
def main(args: Array[String]): Unit = {
7+
given Toolbox = Toolbox.make(getClass.getClassLoader)
8+
withQuoteContext {
9+
val expr = Expr(List(1, 2, 3))
10+
println(expr.show)
11+
}
12+
}
13+
14+
}

0 commit comments

Comments
 (0)