summaryrefslogtreecommitdiff
path: root/test/files/run/optimizer-array-load.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2011-08-21 16:05:06 +0000
committerPaul Phillips <paulp@improving.org>2011-08-21 16:05:06 +0000
commita707ec6fef216334e2cde4437664f28a3983d1eb (patch)
treef3c1522042b55386caed29f6d89c0c976f652471 /test/files/run/optimizer-array-load.scala
parent553bea21fbe38c23060be74b5acefefe49c5abbf (diff)
downloadscala-a707ec6fef216334e2cde4437664f28a3983d1eb.tar.gz
scala-a707ec6fef216334e2cde4437664f28a3983d1eb.tar.bz2
scala-a707ec6fef216334e2cde4437664f28a3983d1eb.zip
Bug in optimizer eliminated potentially excepti...
Bug in optimizer eliminated potentially exceptional not-dead code. Streamlined isSideEffecting logic. Review by ureche.
Diffstat (limited to 'test/files/run/optimizer-array-load.scala')
-rw-r--r--test/files/run/optimizer-array-load.scala16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/files/run/optimizer-array-load.scala b/test/files/run/optimizer-array-load.scala
new file mode 100644
index 0000000000..a4d76f7385
--- /dev/null
+++ b/test/files/run/optimizer-array-load.scala
@@ -0,0 +1,16 @@
+object Test {
+ def f() = {
+ val ar = Array.ofDim[Int](5)
+ var x = 0
+
+ while (x<=5) {
+ println(x)
+ val a = ar(x)
+ x+=1
+ }
+ }
+ def main(args: Array[String]): Unit = {
+ try { f() ; assert(false, "should have thrown exception") }
+ catch { case _: ArrayIndexOutOfBoundsException => () }
+ }
+}