summaryrefslogtreecommitdiff
path: root/test/files/run/t8233-bcode.scala
diff options
context:
space:
mode:
Diffstat (limited to 'test/files/run/t8233-bcode.scala')
-rw-r--r--test/files/run/t8233-bcode.scala31
1 files changed, 31 insertions, 0 deletions
diff --git a/test/files/run/t8233-bcode.scala b/test/files/run/t8233-bcode.scala
new file mode 100644
index 0000000000..72d013e553
--- /dev/null
+++ b/test/files/run/t8233-bcode.scala
@@ -0,0 +1,31 @@
+object Test {
+ def bar(s: String) = s;
+ val o: Option[Null] = None
+ def nullReference {
+ val a: Null = o.get
+ bar(a) // Was: VerifyError under GenICode
+ }
+
+ def literal {
+ val a: Null = null
+ bar(a)
+ }
+
+ /** Check SI-8330 for details */
+ def expectedUnitInABranch(b: Boolean): Boolean = {
+ if (b) {
+ val x = 12
+ ()
+ } else {
+ // here expected type is (unboxed) Unit
+ null
+ }
+ true
+ }
+
+ def main(args: Array[String]): Unit = {
+ try { nullReference } catch { case _: NoSuchElementException => }
+ literal
+ expectedUnitInABranch(true)
+ }
+}