diff options
Diffstat (limited to 'tests/run/byNameVarargs/i499.scala')
-rw-r--r-- | tests/run/byNameVarargs/i499.scala | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/run/byNameVarargs/i499.scala b/tests/run/byNameVarargs/i499.scala new file mode 100644 index 000000000..e1550b6ec --- /dev/null +++ b/tests/run/byNameVarargs/i499.scala @@ -0,0 +1,27 @@ +object Test extends dotty.runtime.LegacyApp{ + def foo(a: => Any*) = () + def bar(a: => Any*) = foo(a : _*) + def baz(a: => Seq[Any]) = foo(a : _*) + bar(???, ???) + baz(Seq(???, ???)) + + def foo1(a: => Any, b: => Any*) = () + foo1(???) + foo1(???, ???, ???) + + def assertFails(a: => Any) = { + var failed = false + try { + a + } catch { + case e => failed = true + } + assert(failed) + } + + def forceLength(b: => Any*) = b.length + assertFails(forceLength(???)) + + def forceHead(b: => Any*) = b(0) + assertFails(forceHead(1, ???)) +} |