summaryrefslogtreecommitdiff
path: root/test/files/run/repl-inline.scala
blob: 260ed28a4f9243077a3b7c39ad2fd58a6d165d15 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import scala.tools.nsc._

object Test {
  val testCode =
    """
def callerOfCaller = Thread.currentThread.getStackTrace.drop(2).head.getMethodName
def g = callerOfCaller
def h = g
assert(h == "g", h)
@inline def g = callerOfCaller
def h = g
assert(h == "h", h)
  """

  def main(args: Array[String]) {
    def test(f: Settings => Unit): Unit = {
      val settings = new Settings()
      settings.processArgumentString("-opt:l:classpath")
      f(settings)
      settings.usejavacp.value = true
      val repl = new interpreter.IMain(settings)
      testCode.linesIterator.foreach(repl.interpret(_))
    }
    test(_ => ())
    test(_.Yreplclassbased.value = true)
  }
}