Skip to content

Commit d67af24

Browse files
Merge pull request #7367 from brunnerant/tuple-concat-fix
Fix unreachable code in DynamicTuple.dynamiamicConcat
2 parents 736af36 + 4db4831 commit d67af24

File tree

3 files changed

+22
-2
lines changed

3 files changed

+22
-2
lines changed

library/src/scala/runtime/DynamicTuple.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -212,8 +212,8 @@ object DynamicTuple {
212212

213213
def dynamicConcat[This <: Tuple, That <: Tuple](self: This, that: That): Concat[This, That] = {
214214
type Result = Concat[This, That]
215-
(this: Any) match {
216-
case self: Unit => return self.asInstanceOf[Result]
215+
(self: Any) match {
216+
case self: Unit => return that.asInstanceOf[Result]
217217
case _ =>
218218
}
219219
(that: Any) match {

tests/run/tuple-concat.check

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
tuple1 ++ emptyTuple = (e1,e2,e3)
2+
emptyTuple ++ tuple1 = (e1,e2,e3)
3+
tuple2 ++ emptyTuple = (e4,e5,e6)
4+
emptyTuple ++ tuple2 = (e4,e5,e6)
5+
tuple1 ++ tuple2 = (e1,e2,e3,e4,e5,e6)

tests/run/tuple-concat.scala

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
2+
object Test extends App {
3+
val emptyTuple: Tuple = ()
4+
val tuple1: Tuple = "e1" *: "e2" *: "e3" *: ()
5+
val tuple2: Tuple = "e4" *: "e5" *: "e6" *: ()
6+
val result: Tuple = "e1" *: "e2" *: "e3" *: "e4" *: "e5" *: "e6" *: ()
7+
8+
println("tuple1 ++ emptyTuple = " + (tuple1 ++ emptyTuple))
9+
println("emptyTuple ++ tuple1 = " + (emptyTuple ++ tuple1))
10+
println("tuple2 ++ emptyTuple = " + (tuple2 ++ emptyTuple))
11+
println("emptyTuple ++ tuple2 = " + (emptyTuple ++ tuple2))
12+
println("tuple1 ++ tuple2 = " + (tuple1 ++ tuple2))
13+
assert((tuple1 ++ emptyTuple).asInstanceOf[AnyRef] eq tuple1.asInstanceOf[AnyRef])
14+
assert((emptyTuple ++tuple1).asInstanceOf[AnyRef] eq tuple1.asInstanceOf[AnyRef])
15+
}

0 commit comments

Comments
 (0)