File: large_code.scala

package info (click to toggle)
scala 2.11.12-5
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 62,828 kB
  • sloc: javascript: 28,808; java: 13,415; xml: 3,250; sh: 1,620; python: 756; makefile: 38; awk: 36; ansic: 6
file content (24 lines) | stat: -rw-r--r-- 765 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import scala.tools.partest._
import java.io.{Console => _, _}

// a cold run of partest takes about 15s for this test on my laptop
object Test extends DirectTest {
  override def extraSettings: String = "-usejavacp -d " + testOutput.path

  // test that we hit the code size limit and error out gracefully
  // 5958 is the magic number (2^16/11 -- each `a(1,2,3,4,5,6)` is 11 bytes of bytecode)
  override def code
    = s"""
      |class BigEnoughToFail {
      |  def a(a: Int, b: Int, c: Int, d: Int, e: Int, f: Int): Unit = {}
      |  def tooLong: Unit = {
      |    ${(1 to 5958) map (_ => "a(1,2,3,4,5,6)") mkString(";")}
      |  }
      |}""".stripMargin.trim

  override def show(): Unit = {
    Console.withErr(System.out) {
      compile()
    }
  }
}