aboutsummaryrefslogtreecommitdiff
path: root/src/test/scala/scala
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2016-01-20 10:30:15 +1000
committerJason Zaugg <jzaugg@gmail.com>2017-10-16 07:44:56 -0500
commit505ce2292b3d58ed38f7670e05934b63df2c0450 (patch)
tree82754872c986aaaff213beacc979b1e18112b03f /src/test/scala/scala
parentad1905a99ddd6073afa5787e16a58e661ed8ee0b (diff)
downloadscala-async-505ce2292b3d58ed38f7670e05934b63df2c0450.tar.gz
scala-async-505ce2292b3d58ed38f7670e05934b63df2c0450.tar.bz2
scala-async-505ce2292b3d58ed38f7670e05934b63df2c0450.zip
Workaround ill-scoped exist. skolem refs emited by patmat
e.g `val x2 = Foo[$1] with Bar = boundValue` is rewritten to `val x2 = (Foo[$1] @uncheckedBounds) with Bar = boundValue` This is to have refchecks turn a blind eye to the type argument that doesn't conform the to type parameter bounds. For regular compilation, without the async transform between patmat and refchecks, bound conformance is disabled with: https://github.com/scala/scala/blob/v2.11.7/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala#L1743 Using the `uncheckedBounds` annotation is a newer, more inclusive way of acheiving the same thing: https://github.com/scala/scala/blob/v2.11.7/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala#L1677
Diffstat (limited to 'src/test/scala/scala')
-rw-r--r--src/test/scala/scala/async/run/late/LateExpansion.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/test/scala/scala/async/run/late/LateExpansion.scala b/src/test/scala/scala/async/run/late/LateExpansion.scala
index e012df8..42506fc 100644
--- a/src/test/scala/scala/async/run/late/LateExpansion.scala
+++ b/src/test/scala/scala/async/run/late/LateExpansion.scala
@@ -476,7 +476,7 @@ abstract class LatePlugin extends Plugin {
}
}
- override val runsAfter: List[String] = "refchecks" :: Nil
+ override val runsAfter: List[String] = "patmat" :: Nil
override val phaseName: String = "postpatmat"
})