diff options
author | Lukas Rytz <lukas.rytz@epfl.ch> | 2010-08-23 13:17:06 +0000 |
---|---|---|
committer | Lukas Rytz <lukas.rytz@epfl.ch> | 2010-08-23 13:17:06 +0000 |
commit | 38ba1149cb46b7c2240a8dcbacb2b97d5437a886 (patch) | |
tree | 1e6f42e14ee3385f9d604d99b8cdee6d7329e8a8 | |
parent | 74da0c78515875ef12a13f24260bcb765aa0cc1a (diff) | |
download | scala-38ba1149cb46b7c2240a8dcbacb2b97d5437a886.tar.gz scala-38ba1149cb46b7c2240a8dcbacb2b97d5437a886.tar.bz2 scala-38ba1149cb46b7c2240a8dcbacb2b97d5437a886.zip |
in refchecks, visit the qualifier of irrefutabl...
in refchecks, visit the qualifier of irrefutable filters. close #3773.
review by moors.
-rw-r--r-- | src/compiler/scala/tools/nsc/typechecker/RefChecks.scala | 2 | ||||
-rw-r--r-- | test/files/neg/t3773.check | 4 | ||||
-rw-r--r-- | test/files/neg/t3773.flags | 1 | ||||
-rw-r--r-- | test/files/neg/t3773.scala | 5 |
4 files changed, 11 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala b/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala index 1a1ae99d28..162749da41 100644 --- a/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala +++ b/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala @@ -1124,7 +1124,7 @@ abstract class RefChecks extends InfoTransform { if ((pname startsWith nme.CHECK_IF_REFUTABLE_STRING) && isIrrefutable(pat1, tpt.tpe) && (qual.tpe <:< tree.tpe)) => - qual + transform(qual) case Apply(Select(New(tpt), name), args) if (tpt.tpe.typeSymbol == ArrayClass && args.length >= 2) => diff --git a/test/files/neg/t3773.check b/test/files/neg/t3773.check new file mode 100644 index 0000000000..29a3e14d83 --- /dev/null +++ b/test/files/neg/t3773.check @@ -0,0 +1,4 @@ +t3773.scala:3: error: method elements in trait IterableLike is deprecated: use `iterator' instead + for ((v, t) <- m.elements) () + ^ +one error found diff --git a/test/files/neg/t3773.flags b/test/files/neg/t3773.flags new file mode 100644 index 0000000000..d1b831ea87 --- /dev/null +++ b/test/files/neg/t3773.flags @@ -0,0 +1 @@ +-deprecation -Xfatal-warnings
\ No newline at end of file diff --git a/test/files/neg/t3773.scala b/test/files/neg/t3773.scala new file mode 100644 index 0000000000..3b92ed2d23 --- /dev/null +++ b/test/files/neg/t3773.scala @@ -0,0 +1,5 @@ +object t { + val m = Map(1 -> "one") + for ((v, t) <- m.elements) () +} + |