Skip to content

Commit 4a9d033

Browse files
committed
Do not print inferred type arguments
1 parent e439999 commit 4a9d033

File tree

2 files changed

+54
-50
lines changed

2 files changed

+54
-50
lines changed

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

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -833,7 +833,11 @@ trait Printers
833833
// type bounds already printed in `fn`
834834
this
835835
case _ =>
836-
inSquare(printTypeOrBoundsTrees(args, ", "))
836+
def noPos(pos: Position): Boolean = !pos.exists || pos.start == pos.end
837+
lazy val nonInferred = args.filter(arg => noPos(arg.pos))
838+
// TypeTree.Inferred cannot be trusted here, as it does not handle synthetic trees
839+
if (!noPos(fn.pos) && nonInferred.isEmpty) this
840+
else inSquare(printTypeOrBoundsTrees(args, ", "))
837841
}
838842

839843
case Term.Super(qual, idOpt) =>

tests/run/literals.decompiled

Lines changed: 49 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -38,61 +38,61 @@ object Test {
3838
scala.Predef.println()
3939
}
4040
def main(args: scala.Array[scala.Predef.String]): scala.Unit = {
41-
Test.check_success[scala.Char]("\'\\u0024\' == \'$\'", '$', '$')
42-
Test.check_success[scala.Char]("\'\\u005f\' == \'_\'", '_', '_')
43-
Test.check_success[scala.Char]("65.asInstanceOf[Char] == \'A\'", 65.asInstanceOf[scala.Char], 'A')
44-
Test.check_success[java.lang.String]("\"\\141\\142\" == \"ab\"", "ab", "ab")
45-
Test.check_success[java.lang.String]("\"\\0x61\\0x62\".trim() == \"x61\\0x62\"", "\00x61\00x62".substring(1), "x61\00x62")
41+
Test.check_success("\'\\u0024\' == \'$\'", '$', '$')
42+
Test.check_success("\'\\u005f\' == \'_\'", '_', '_')
43+
Test.check_success("65.asInstanceOf[Char] == \'A\'", 65.asInstanceOf, 'A')
44+
Test.check_success("\"\\141\\142\" == \"ab\"", "ab", "ab")
45+
Test.check_success("\"\\0x61\\0x62\".trim() == \"x61\\0x62\"", "\00x61\00x62".substring(1), "x61\00x62")
4646
scala.Predef.println()
47-
Test.check_success[scala.Boolean]("(65 : Byte) == \'A\'", (65: scala.Byte).==('A'), true)
47+
Test.check_success("(65 : Byte) == \'A\'", (65: scala.Byte).==('A'), true)
4848
scala.Predef.println()
49-
Test.check_success[scala.Int]("0X01 == 1", 1, 1)
50-
Test.check_success[scala.Int]("0x01 == 1", 1, 1)
51-
Test.check_success[scala.Int]("0x10 == 16", 16, 16)
52-
Test.check_success[scala.Int]("0xa == 10", 10, 10)
53-
Test.check_success[scala.Int]("0x0a == 10", 10, 10)
54-
Test.check_success[scala.Int]("+0x01 == 1", 1.unary_+, 1)
55-
Test.check_success[scala.Int]("+0x10 == 16", 16.unary_+, 16)
56-
Test.check_success[scala.Int]("+0xa == 10", 10.unary_+, 10)
57-
Test.check_success[scala.Int]("+0x0a == 10", 10.unary_+, 10)
58-
Test.check_success[scala.Int]("-0x01 == -1", -1, -1)
59-
Test.check_success[scala.Int]("-0x10 == -16", -16, -16)
60-
Test.check_success[scala.Int]("-0xa == -10", -10, -10)
61-
Test.check_success[scala.Int]("-0x0a == -10", -10, -10)
62-
Test.check_success[scala.Int]("0x7fffffff == 2147483647", 2147483647, 2147483647)
63-
Test.check_success[scala.Int]("0x80000000 == -2147483648", -2147483648, -2147483648)
64-
Test.check_success[scala.Int]("0xffffffff == -1", -1, -1)
49+
Test.check_success("0X01 == 1", 1, 1)
50+
Test.check_success("0x01 == 1", 1, 1)
51+
Test.check_success("0x10 == 16", 16, 16)
52+
Test.check_success("0xa == 10", 10, 10)
53+
Test.check_success("0x0a == 10", 10, 10)
54+
Test.check_success("+0x01 == 1", 1.unary_+, 1)
55+
Test.check_success("+0x10 == 16", 16.unary_+, 16)
56+
Test.check_success("+0xa == 10", 10.unary_+, 10)
57+
Test.check_success("+0x0a == 10", 10.unary_+, 10)
58+
Test.check_success("-0x01 == -1", -1, -1)
59+
Test.check_success("-0x10 == -16", -16, -16)
60+
Test.check_success("-0xa == -10", -10, -10)
61+
Test.check_success("-0x0a == -10", -10, -10)
62+
Test.check_success("0x7fffffff == 2147483647", 2147483647, 2147483647)
63+
Test.check_success("0x80000000 == -2147483648", -2147483648, -2147483648)
64+
Test.check_success("0xffffffff == -1", -1, -1)
6565
scala.Predef.println()
66-
Test.check_success[scala.Long]("1l == 1L", 1L, 1L)
67-
Test.check_success[scala.Long]("1L == 1l", 1L, 1L)
68-
Test.check_success[scala.Long]("1.asInstanceOf[Long] == 1l", 1.asInstanceOf[scala.Long], 1L)
69-
Test.check_success[scala.Long]("0x7fffffffffffffffL == 9223372036854775807L", 9223372036854775807L, 9223372036854775807L)
70-
Test.check_success[scala.Long]("0x8000000000000000L == -9223372036854775808L", -9223372036854775808L, -9223372036854775808L)
71-
Test.check_success[scala.Long]("0xffffffffffffffffL == -1L", -1L, -1L)
66+
Test.check_success("1l == 1L", 1L, 1L)
67+
Test.check_success("1L == 1l", 1L, 1L)
68+
Test.check_success("1.asInstanceOf[Long] == 1l", 1.asInstanceOf, 1L)
69+
Test.check_success("0x7fffffffffffffffL == 9223372036854775807L", 9223372036854775807L, 9223372036854775807L)
70+
Test.check_success("0x8000000000000000L == -9223372036854775808L", -9223372036854775808L, -9223372036854775808L)
71+
Test.check_success("0xffffffffffffffffL == -1L", -1L, -1L)
7272
scala.Predef.println()
73-
Test.check_success[scala.Float]("1e1f == 10.0f", 10.0f, 10.0f)
74-
Test.check_success[scala.Float](".3f == 0.3f", 0.3f, 0.3f)
75-
Test.check_success[scala.Float]("0f == 0.0f", 0.0f, 0.0f)
76-
Test.check_success[scala.Float]("3.14f == 3.14f", 3.14f, 3.14f)
77-
Test.check_success[scala.Float]("6.022e23f == 6.022e23f", 6.022E23f, 6.022E23f)
78-
Test.check_success[scala.Float]("09f == 9.0f", 9.0f, 9.0f)
79-
Test.check_success[scala.Float]("1.asInstanceOf[Float] == 1.0", 1.asInstanceOf[scala.Float], 1.0f)
80-
Test.check_success[scala.Float]("1l.asInstanceOf[Float] == 1.0", 1L.asInstanceOf[scala.Float], 1.0f)
73+
Test.check_success("1e1f == 10.0f", 10.0f, 10.0f)
74+
Test.check_success(".3f == 0.3f", 0.3f, 0.3f)
75+
Test.check_success("0f == 0.0f", 0.0f, 0.0f)
76+
Test.check_success("3.14f == 3.14f", 3.14f, 3.14f)
77+
Test.check_success("6.022e23f == 6.022e23f", 6.022E23f, 6.022E23f)
78+
Test.check_success("09f == 9.0f", 9.0f, 9.0f)
79+
Test.check_success("1.asInstanceOf[Float] == 1.0", 1.asInstanceOf, 1.0f)
80+
Test.check_success("1l.asInstanceOf[Float] == 1.0", 1L.asInstanceOf, 1.0f)
8181
scala.Predef.println()
82-
Test.check_success[scala.Double]("1e1 == 10.0", 10.0, 10.0)
83-
Test.check_success[scala.Double](".3 == 0.3", 0.3, 0.3)
84-
Test.check_success[scala.Double]("0.0 == 0.0", 0.0, 0.0)
85-
Test.check_success[scala.Double]("0d == 0.0", 0.0, 0.0)
86-
Test.check_success[scala.Double]("01.23 == 1.23", 1.23, 1.23)
87-
Test.check_success[scala.Double]("01.23d == 1.23d", 1.23, 1.23)
88-
Test.check_success[scala.Double]("3.14 == 3.14", 3.14, 3.14)
89-
Test.check_success[scala.Double]("1e-9d == 1.0e-9", 1.0E-9, 1.0E-9)
90-
Test.check_success[scala.Double]("1e137 == 1.0e137", 1.0E137, 1.0E137)
91-
Test.check_success[scala.Double]("1.asInstanceOf[Double] == 1.0", 1.asInstanceOf[scala.Double], 1.0)
92-
Test.check_success[scala.Double]("1l.asInstanceOf[Double] == 1.0", 1L.asInstanceOf[scala.Double], 1.0)
82+
Test.check_success("1e1 == 10.0", 10.0, 10.0)
83+
Test.check_success(".3 == 0.3", 0.3, 0.3)
84+
Test.check_success("0.0 == 0.0", 0.0, 0.0)
85+
Test.check_success("0d == 0.0", 0.0, 0.0)
86+
Test.check_success("01.23 == 1.23", 1.23, 1.23)
87+
Test.check_success("01.23d == 1.23d", 1.23, 1.23)
88+
Test.check_success("3.14 == 3.14", 3.14, 3.14)
89+
Test.check_success("1e-9d == 1.0e-9", 1.0E-9, 1.0E-9)
90+
Test.check_success("1e137 == 1.0e137", 1.0E137, 1.0E137)
91+
Test.check_success("1.asInstanceOf[Double] == 1.0", 1.asInstanceOf, 1.0)
92+
Test.check_success("1l.asInstanceOf[Double] == 1.0", 1L.asInstanceOf, 1.0)
9393
scala.Predef.println()
94-
Test.check_success[scala.Int]("\"\".length()", "\032".length(), 1)
94+
Test.check_success("\"\".length()", "\032".length(), 1)
9595
val ggg = Test.GGG.apply(1).αα(Test.GGG.apply(2))
96-
Test.check_success[scala.Int]("ggg == 3", ggg, 3)
96+
Test.check_success("ggg == 3", ggg, 3)
9797
}
9898
}

0 commit comments

Comments
 (0)