diff options
author | Som Snytt <som.snytt@gmail.com> | 2016-08-17 16:07:24 -0700 |
---|---|---|
committer | Som Snytt <som.snytt@gmail.com> | 2016-08-24 12:34:19 -0700 |
commit | 6db54e82d00c087c360eb6308a2bcdf6b044c9d3 (patch) | |
tree | ca1fc0eca20bd4c9b9a03a9966df7219257af114 /test | |
parent | 81a67eeacc7d2622ee364a21203b227142e2043e (diff) | |
download | scala-6db54e82d00c087c360eb6308a2bcdf6b044c9d3.tar.gz scala-6db54e82d00c087c360eb6308a2bcdf6b044c9d3.tar.bz2 scala-6db54e82d00c087c360eb6308a2bcdf6b044c9d3.zip |
SI-9841 Regression test for init SO
Verifies example behavior in ticket.
Diffstat (limited to 'test')
-rw-r--r-- | test/files/run/t9841.scala | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/test/files/run/t9841.scala b/test/files/run/t9841.scala new file mode 100644 index 0000000000..19cfef28a5 --- /dev/null +++ b/test/files/run/t9841.scala @@ -0,0 +1,24 @@ +// SI-9841 regrettable behavior initializing private inner object +// A fix is not yet planned for 2.11.9, but it works in 2.12.x. +// +//at Container.Container$$Inner$lzycompute(t9841.scala:4) +//at Container.Container$$Inner(t9841.scala:4) +//at Container$Inner$.<init>(t9841.scala:5) +// +class Container { + private case class Inner(s: String) + private object Inner { + val Empty = Inner("") + } + private val state = Inner.Empty +} + +object Test extends App { + val catcher: PartialFunction[Throwable, Unit] = { + case _: StackOverflowError => + } + try { + new Container + Console println "Expected StackOverflowError" + } catch catcher +} |