aboutsummaryrefslogtreecommitdiff
path: root/tests/pos/templateParents.scala
blob: 845913270f3060fe0ee5ef6b0ec6bfaf6cf74318 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
object templateParents {

  // traits do not call a constructor
  class C[+T](x: T) 
  trait D extends C[String]
  trait E extends C[Int]
  new C("abc") with D
  
}

object templateParents1 {
  // tests inference of synthesized class type
  class C[+T]
  trait D extends C[String]
  trait E extends C[Int]

  val x = new D with E

  val y: C[Int & String] = x
}