From 6db54e82d00c087c360eb6308a2bcdf6b044c9d3 Mon Sep 17 00:00:00 2001 From: Som Snytt Date: Wed, 17 Aug 2016 16:07:24 -0700 Subject: SI-9841 Regression test for init SO Verifies example behavior in ticket. --- test/files/run/t9841.scala | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 test/files/run/t9841.scala 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$.(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 +} -- cgit v1.2.3