summaryrefslogtreecommitdiff
path: root/test/files/run/t8601b.scala
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2014-05-18 12:17:02 +0200
committerJason Zaugg <jzaugg@gmail.com>2014-05-18 12:17:02 +0200
commit70b912a87433c9589af33e4f8b33dca39abb66e5 (patch)
tree0162c6f5d4ba795df523dda87a0e9c0361146e1e /test/files/run/t8601b.scala
parent99b4ef8d8472f154d73160f5fe72daf081abb24e (diff)
downloadscala-70b912a87433c9589af33e4f8b33dca39abb66e5.tar.gz
scala-70b912a87433c9589af33e4f8b33dca39abb66e5.tar.bz2
scala-70b912a87433c9589af33e4f8b33dca39abb66e5.zip
SI-8601 Don't treat newarray as dead code
Otherwise we lose the side effect of a `NegativeArraySizeException`.
Diffstat (limited to 'test/files/run/t8601b.scala')
-rw-r--r--test/files/run/t8601b.scala3
1 files changed, 3 insertions, 0 deletions
diff --git a/test/files/run/t8601b.scala b/test/files/run/t8601b.scala
index c01caa57d0..9c37ce33d6 100644
--- a/test/files/run/t8601b.scala
+++ b/test/files/run/t8601b.scala
@@ -1,11 +1,14 @@
object Test {
def len(x: Array[String]): Unit = x.length
def load(x: Array[String]): Unit = x(0)
+ def newarray(i: Int): Unit = new Array[Int](i)
def check(x: => Any) = try { x; sys.error("failed to throw NPE!") } catch { case _: NullPointerException => }
+ def checkNegSize(x: => Any) = try { x; sys.error("failed to throw NegativeArraySizeException!") } catch { case _: NegativeArraySizeException => }
def main(args: Array[String]) {
check(len(null)) // bug: did not NPE
check(load(null))
+ checkNegSize(newarray(-1))
}
}