This repository was archived by the owner on Feb 20, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 78
This repository was archived by the owner on Feb 20, 2019. It is now read-only.
Compiler slain by -Ywarn-unused-import #370
Copy link
Copy link
Open
Labels
Description
Given this minimal build.sbt
:
lazy val proj = (project in file("."))
.settings(
scalaVersion := "2.11.7",
scalacOptions ++= Seq("-Ywarn-unused-import"),
libraryDependencies ++= Seq(
"org.scala-lang.modules" %% "scala-pickling" % "0.10.1"
)
)
If I run the example on the REPL I get:
scala> import scala.pickling.Defaults._, scala.pickling.json._ [8/1055]
<console>:10: warning: Unused import
import scala.pickling.Defaults._, scala.pickling.json._
^
<console>:10: warning: Unused import
import scala.pickling.Defaults._, scala.pickling.json._
^
import scala.pickling.Defaults._
import scala.pickling.json._
scala> case class Person(name: String, age: Int)
<console>:9: warning: Unused import
import scala.pickling.Defaults._
^
<console>:12: warning: Unused import
import scala.pickling.json._
^
defined class Person
scala> val pkl = Person("foo", 20).pickle
java.lang.ArrayIndexOutOfBoundsException: 339
at scala.reflect.internal.util.InternalPositionImpl$class.calculateColumn(Position.scala:211)
at scala.reflect.internal.util.InternalPositionImpl$class.column(Position.scala:167)
at scala.reflect.internal.util.Position.column(Position.scala:12)
at scala.reflect.internal.util.InternalPositionImpl$class.lineCaret(Position.scala:169)
at scala.reflect.internal.util.Position.lineCaret(Position.scala:12)
at scala.reflect.internal.util.InternalPositionImpl$class.indicator$1(Position.scala:186)
at scala.reflect.internal.util.InternalPositionImpl$class.errorAt$1(Position.scala:187)
at scala.reflect.internal.util.InternalPositionImpl$class.showError(Position.scala:192)
at scala.reflect.internal.util.Position.showError(Position.scala:12)
at scala.reflect.internal.util.Position$.formatMessage(Position.scala:42)
at scala.tools.nsc.reporters.ConsoleReporter.printMessage(ConsoleReporter.scala:50)
at scala.tools.nsc.interpreter.ReplReporter.print(ReplReporter.scala:50)
at scala.tools.nsc.reporters.ConsoleReporter.display(ConsoleReporter.scala:69)
at scala.tools.nsc.reporters.AbstractReporter.info0(AbstractReporter.scala:48)
at scala.tools.nsc.reporters.AbstractReporter.info0(AbstractReporter.scala:16)
at scala.reflect.internal.Reporter.warning(Reporting.scala:81)
at scala.tools.nsc.interpreter.ReplReporter.scala$tools$nsc$interpreter$ReplReporter$$super$warning(ReplReporter.scala:32)
at scala.tools.nsc.interpreter.ReplReporter$$anonfun$warning$1.apply(ReplReporter.scala:32)
at scala.tools.nsc.interpreter.ReplReporter$$anonfun$warning$1.apply(ReplReporter.scala:32)
at scala.tools.nsc.interpreter.ReplReporter.withoutTruncating(ReplReporter.scala:28)
at scala.tools.nsc.interpreter.ReplReporter.warning(ReplReporter.scala:32)
at scala.tools.nsc.typechecker.Contexts$class.warnUnusedImports(Contexts.scala:64)
at scala.tools.nsc.interpreter.ReplGlobal$$anon$1.warnUnusedImports(ReplGlobal.scala:23)
at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3.apply(Analyzer.scala:106)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$applyPhase$1.apply$mcV$sp(Global.scala:440)
at scala.tools.nsc.Global$GlobalPhase.withCurrentUnit(Global.scala:431)
at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:440)
at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3$$anonfun$run$1.apply(Analyzer.scala:94)
at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3$$anonfun$run$1.apply(Analyzer.scala:93)
at scala.collection.Iterator$class.foreach(Iterator.scala:742)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1194)
at scala.tools.nsc.typechecker.Analyzer$typerFactory$$anon$3.run(Analyzer.scala:93)
at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1501)
at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1486)
at scala.tools.nsc.Global$Run.compileSources(Global.scala:1481)
at scala.tools.nsc.interpreter.IMain.compileSourcesKeepingRun(IMain.scala:434)
at scala.tools.nsc.interpreter.IMain$ReadEvalPrint.compileAndSaveRun(IMain.scala:853)
at scala.tools.nsc.interpreter.IMain$ReadEvalPrint.compile(IMain.scala:811)
at scala.tools.nsc.interpreter.IMain$Request.compile$lzycompute(IMain.scala:995)
at scala.tools.nsc.interpreter.IMain$Request.compile(IMain.scala:990)
at scala.tools.nsc.interpreter.IMain.compile(IMain.scala:577)
at scala.tools.nsc.interpreter.IMain.interpret(IMain.scala:565)
at scala.tools.nsc.interpreter.IMain.interpret(IMain.scala:563)
at scala.tools.nsc.interpreter.ILoop.reallyInterpret$1(ILoop.scala:802)
at scala.tools.nsc.interpreter.ILoop.interpretStartingWith(ILoop.scala:836)
at scala.tools.nsc.interpreter.ILoop.command(ILoop.scala:694)
at scala.tools.nsc.interpreter.ILoop.processLine(ILoop.scala:404)
at scala.tools.nsc.interpreter.ILoop.loop(ILoop.scala:424)
at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply$mcZ$sp(ILoop.scala:925)
at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply(ILoop.scala:911)
at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply(ILoop.scala:911)
at scala.reflect.internal.util.ScalaClassLoader$.savingContextLoader(ScalaClassLoader.scala:97)
at scala.tools.nsc.interpreter.ILoop.process(ILoop.scala:911)
at scala.tools.nsc.interpreter.ILoop.main(ILoop.scala:936)
at xsbt.ConsoleInterface.run(ConsoleInterface.scala:62)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at sbt.compiler.AnalyzingCompiler.call(AnalyzingCompiler.scala:101)
at sbt.compiler.AnalyzingCompiler.console(AnalyzingCompiler.scala:76)
at sbt.Console.sbt$Console$$console0$1(Console.scala:22)
at sbt.Console$$anonfun$apply$2$$anonfun$apply$1.apply$mcV$sp(Console.scala:23)
at sbt.Console$$anonfun$apply$2$$anonfun$apply$1.apply(Console.scala:23)
at sbt.Console$$anonfun$apply$2$$anonfun$apply$1.apply(Console.scala:23)
at sbt.Logger$$anon$4.apply(Logger.scala:85)
at sbt.TrapExit$App.run(TrapExit.scala:248)
at java.lang.Thread.run(Thread.java:745)
That entry seems to have slain the compiler. Shall I replay
your session? I can re-run each line except the last one.
[y/n]