diff -r 39aa4d9e5559 -r 2c861b196d52 src/Pure/System/scala.scala --- a/src/Pure/System/scala.scala Thu Apr 07 20:15:58 2022 +0200 +++ b/src/Pure/System/scala.scala Fri Apr 08 09:58:49 2022 +0200 @@ -112,15 +112,11 @@ } } - def toplevel(interpret: Boolean, source: String): List[String] = { + def toplevel(source: String): List[String] = { val out = new StringWriter val interp = interpreter(new PrintWriter(out)) val marker = '\u000b' - val ok = - interp.withLabel(marker.toString) { - if (interpret) interp.interpret(source) == Results.Success - else (new interp.ReadEvalPrint).compile(source) - } + val ok = interp.withLabel(marker.toString) { (new interp.ReadEvalPrint).compile(source) } out.close() val Error = """(?s)^\S* error: (.*)$""".r @@ -135,15 +131,9 @@ object Toplevel extends Fun_String("scala_toplevel") { val here = Scala_Project.here - def apply(arg: String): String = { - val (interpret, source) = - YXML.parse_body(arg) match { - case Nil => (false, "") - case List(XML.Text(source)) => (false, source) - case body => import XML.Decode._; pair(bool, string)(body) - } + def apply(source: String): String = { val errors = - try { Compiler.context().toplevel(interpret, source) } + try { Compiler.context().toplevel(source) } catch { case ERROR(msg) => List(msg) } locally { import XML.Encode._; YXML.string_of_body(list(string)(errors)) } }