summaryrefslogtreecommitdiff
path: root/test/files/run/t8738.scala
diff options
context:
space:
mode:
authorRex Kerr <ichoran@gmail.com>2014-07-20 12:36:25 -0700
committerRex Kerr <ichoran@gmail.com>2014-07-20 12:39:12 -0700
commitc7cc1a803764b4d26dd23d2baf34a27a3a40f682 (patch)
treefa9b18d772ca8104ebc42f7e51ac06cb488cae85 /test/files/run/t8738.scala
parentabdd570cee5788000724c6d3b89a978c48a7fa39 (diff)
downloadscala-c7cc1a803764b4d26dd23d2baf34a27a3a40f682.tar.gz
scala-c7cc1a803764b4d26dd23d2baf34a27a3a40f682.tar.bz2
scala-c7cc1a803764b4d26dd23d2baf34a27a3a40f682.zip
SI-8738 Regression in range equality
Missed the case of comparing a non-empty range to an empty one. Fixed by checking nonEmpty/isEmpty on other collection. Added a test to verify the behavior.
Diffstat (limited to 'test/files/run/t8738.scala')
-rw-r--r--test/files/run/t8738.scala16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/files/run/t8738.scala b/test/files/run/t8738.scala
new file mode 100644
index 0000000000..6898301db7
--- /dev/null
+++ b/test/files/run/t8738.scala
@@ -0,0 +1,16 @@
+object Test {
+ def check(a: Range, b: Range) = (a == b) == (a.toList == b.toList)
+ def main(args: Array[String]) {
+ val lo = -2 to 2
+ val hi = lo
+ val step = List(-6,-2,-1,1,2,6)
+ for (i <- lo; j <- hi; n <- step; k <- lo; l <- hi; m <- step) {
+ assert(
+ check(i until j by n, k until l by m) &&
+ check(i until j by n, k to l by m) &&
+ check(i to j by n, k until l by m) &&
+ check(i to j by n, k to l by m)
+ )
+ }
+ }
+}