diff options
Diffstat (limited to 'test/pending/pos/t2173.scala')
-rw-r--r-- | test/pending/pos/t2173.scala | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/test/pending/pos/t2173.scala b/test/pending/pos/t2173.scala index 9a9a2edce4..bbcca39826 100644 --- a/test/pending/pos/t2173.scala +++ b/test/pending/pos/t2173.scala @@ -1,17 +1,12 @@ - - -This (somewhat convoluted) code fails to compile - -class A[+U>:Null] { - - type R[+X>:Null] = X type O[+X] = A[R[X]] - +class A[+U >: Null] { + type R[+X >: Null] = X + type O[+X] = A[R[X]] } -with the following error: - -type arguments [A.this.R[X]] do not conform to class A's type parameter bounds [+U >: Null] - -However, because type R[+X>:Null] is identical to X, it should carry X bounds and R[X] lower bound should be known to be X's lower bound, i.e. Null. - -The same problem occurs with upper bounds. +// with the following error: +// +// type arguments [A.this.R[X]] do not conform to class A's type parameter bounds [+U >: Null] +// +// However, because type R[+X>:Null] is identical to X, it should carry X bounds and R[X] lower bound should be known to be X's lower bound, i.e. Null. +// +// The same problem occurs with upper bounds. |