scala/async — pull request #19 by retronym (2013-05-29 14:33:27+00:00)
Title: Workaround for existential bind / resetAttrs interaction

The original trees for pattern matching Binds are somewhat unusual.

pat = (s#4999 @ (_: Seq#41[_#5000]))
`------- Typed ---'
`--------- Bind -------------'

val Typed(_, tpt: TypeTree) = <<(_: Seq#41[_#5000])>>
val AppliedTypeTree(<>, (arg: TypeTree) :: Nil) = tpt.original
val Bind(_#5000, EmptyTree) = arg.original

This commit manually resets the typed `_#5000` to `Ident(tpename.WILDCARD)`.

I'm not sure yet whether scalac ought to present a fully untyped original here.

Review by @phaller