aboutsummaryrefslogblamecommitdiff
path: root/tests/run/t4351.scala
blob: d954d748b77cd18d09822bb6749fbbc0e82aacf8 (plain) (tree)




















                                                                  
object Test {
  def main(args: Array[String]): Unit = {
    try new BooleanPropImpl().value
    catch {
      // was: StackOverflowError
      case e: RuntimeException => println("runtime exception")
    }
  }
}

trait Prop[@specialized(Boolean) +T] {
  def value: T
}

class PropImpl[+T] extends Prop[T] {
  def value: T = scala.sys.error("")
}

trait BooleanProp extends Prop[Boolean]

class BooleanPropImpl() extends PropImpl[Boolean] with BooleanProp