Skip to content

Commit 18ebd6b

Browse files
author
Antoine Brunner
committed
Fix unreachable code in DynamicTuple.dynamiamicConcat
1 parent 15cece6 commit 18ebd6b

File tree

3 files changed

+20
-2
lines changed

3 files changed

+20
-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: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
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+
}

0 commit comments

Comments
 (0)