diff options
author | Adriaan Moors <adriaan.moors@epfl.ch> | 2012-06-13 02:10:02 -0700 |
---|---|---|
committer | Adriaan Moors <adriaan.moors@epfl.ch> | 2012-06-13 02:10:02 -0700 |
commit | 885d64dce1c3a34b01f4ffcbd2132838d3c60443 (patch) | |
tree | 485307fe0707377eaff1d5c8ed7a970095fecb5b | |
parent | 3103bbd9e21e1be73e8d05cd969f06b7ab4f84b3 (diff) | |
parent | 039d826e99519bcf363e92bba7d9a5bc82e708ef (diff) | |
download | scala-885d64dce1c3a34b01f4ffcbd2132838d3c60443.tar.gz scala-885d64dce1c3a34b01f4ffcbd2132838d3c60443.tar.bz2 scala-885d64dce1c3a34b01f4ffcbd2132838d3c60443.zip |
Merge pull request #705 from paulp/topic/unchecked
Suppress non-local return unchecked warnings.
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/Infer.scala | 3 | ||||
-rw-r--r-- | test/files/pos/nonlocal-unchecked.flags | 1 | ||||
-rw-r--r-- | test/files/pos/nonlocal-unchecked.scala | 6 |
3 files changed, 9 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Infer.scala b/src/compiler/scala/tools/nsc/typechecker/Infer.scala index 9e371dd2dd..688dcd91ac 100644 --- a/src/compiler/scala/tools/nsc/typechecker/Infer.scala +++ b/src/compiler/scala/tools/nsc/typechecker/Infer.scala @@ -1276,7 +1276,8 @@ trait Infer { } else { for (arg <- args) { if (sym == ArrayClass) check(arg, bound) - else if (arg.typeArgs.nonEmpty) () // avoid spurious warnings with higher-kinded types + else if (arg.typeArgs.nonEmpty) () // avoid spurious warnings with higher-kinded types + else if (sym == NonLocalReturnControlClass) () // no way to suppress unchecked warnings on try/catch else arg match { case TypeRef(_, sym, _) if isLocalBinding(sym) => ; diff --git a/test/files/pos/nonlocal-unchecked.flags b/test/files/pos/nonlocal-unchecked.flags new file mode 100644 index 0000000000..144ddac9d3 --- /dev/null +++ b/test/files/pos/nonlocal-unchecked.flags @@ -0,0 +1 @@ +-unchecked -Xfatal-warnings diff --git a/test/files/pos/nonlocal-unchecked.scala b/test/files/pos/nonlocal-unchecked.scala new file mode 100644 index 0000000000..6bd3dc479e --- /dev/null +++ b/test/files/pos/nonlocal-unchecked.scala @@ -0,0 +1,6 @@ +class A { + def f: Boolean = { + val xs = Nil map (_ => return false) + true + } +} |