diff options
author | David Helder <david@twitter.com> | 2012-04-23 11:20:23 -0700 |
---|---|---|
committer | Christopher Vogt <oss.nsp@cvogt.org> | 2016-11-07 02:08:38 -0500 |
commit | 5d00e76b8ffefb3bdddbd50b1efd002357e252f7 (patch) | |
tree | d70b0efec3faddb690446223e50030dd92c1c3ae | |
parent | e43b4e0f8146b6befe17f000141422badd4d5b43 (diff) | |
download | cbt-5d00e76b8ffefb3bdddbd50b1efd002357e252f7.tar.gz cbt-5d00e76b8ffefb3bdddbd50b1efd002357e252f7.tar.bz2 cbt-5d00e76b8ffefb3bdddbd50b1efd002357e252f7.zip |
[split] Eval.scala: Allow @deprecated
The Scala compiler propagates warnings through exceptions. So Eval
failed if an Eval'ed file uses something deprecated. Disable
warnings.
RB_ID=63167
-rw-r--r-- | libraries/eval/Eval.scala | 3 | ||||
-rw-r--r-- | libraries/eval/test/EvalTest.scala | 6 | ||||
-rw-r--r-- | libraries/eval/test/resources/Deprecated.scala | 6 |
3 files changed, 13 insertions, 2 deletions
diff --git a/libraries/eval/Eval.scala b/libraries/eval/Eval.scala index d2188cb..7a45d20 100644 --- a/libraries/eval/Eval.scala +++ b/libraries/eval/Eval.scala @@ -418,8 +418,7 @@ class Eval(target: Option[File]) { val cache = new mutable.HashMap[String, Class[_]]() val settings = new Settings - settings.deprecation.value = true // enable detailed deprecation warnings - settings.unchecked.value = true // enable detailed unchecked warnings + settings.nowarnings.value = true // warnings are exceptions, so disable settings.outputDirs.setSingleOutput(target) val pathList = compilerPath ::: libPath diff --git a/libraries/eval/test/EvalTest.scala b/libraries/eval/test/EvalTest.scala index 24acdc9..6e86327 100644 --- a/libraries/eval/test/EvalTest.scala +++ b/libraries/eval/test/EvalTest.scala @@ -93,6 +93,12 @@ class EvalSpec extends SpecificationWithJUnit { (new Eval).apply[Int](getClass.getResourceAsStream("/OnePlusOne.scala")) mustEqual 2 } + "uses deprecated" in { + val deprecated = (new Eval).apply[() => String]( + TempFile.fromResourcePath("/Deprecated.scala")) + deprecated() mustEqual "hello" + } + "inPlace('expression')" in { // Old object API works Eval.compile("object Doubler { def apply(n: Int) = n * 2 }") diff --git a/libraries/eval/test/resources/Deprecated.scala b/libraries/eval/test/resources/Deprecated.scala new file mode 100644 index 0000000..979affb --- /dev/null +++ b/libraries/eval/test/resources/Deprecated.scala @@ -0,0 +1,6 @@ +new (() => String) { + @deprecated("don't use hello") + def hello() = "hello" + + def apply() = hello() +} |