Scalac 2.12.0 got an assertion failure compiling the following code snippet.
It also affects 2.9 and 2.11.
The case is generated from an existing test program in the scala repository.
$ scalac -version
Scala compiler version 2.12.0-20161028-204919-0666377 -- Copyright 2002-2016, LAMP/EPFL and Lightbend, Inc.
$ scalac abc.scala
error: java.lang.AssertionError: assertion failed: sym: Chunk$mcB$sp.bippy$mBc$sp target: Chunk.bippy
at scala.tools.nsc.Global.assert(Global.scala:229)
at scala.tools.nsc.transform.SpecializeTypes$$anon$2.transformDefDef$1(SpecializeTypes.scala:1647)
at scala.tools.nsc.transform.SpecializeTypes$$anon$2.transform1(SpecializeTypes.scala:1721)
at scala.tools.nsc.transform.SpecializeTypes$$anon$2.$anonfun$transform$3(SpecializeTypes.scala:1461)
at scala.tools.nsc.transform.SpecializeTypes$$anon$2.reportError(SpecializeTypes.scala:1453)
at scala.tools.nsc.transform.SpecializeTypes$$anon$2.transform(SpecializeTypes.scala:1461)
at scala.tools.nsc.transform.SpecializeTypes$$anon$2.transform(SpecializeTypes.scala:1404)
<snipped>
$ cat abc.scala
trait Chunk[@specialized A] { def bippy[@specialized B >: A](e: B): Chunk[B] }