Star projection information preserved in substitutions

#KT-6700 Fixed
This commit is contained in:
Andrey Breslav
2015-01-30 19:53:04 +03:00
parent da639039bd
commit fecf6f9fdf
38 changed files with 412 additions and 216 deletions
@@ -1,4 +1,4 @@
// "Cast expression 'x' to 'Foo<out Number>'" "true"
// "Cast expression 'x' to 'Foo<*>'" "true"
trait Foo<T: Number> {
fun foo()
}
@@ -6,6 +6,6 @@ trait Foo<T: Number> {
fun bar(_x: Any) {
var x = _x
if (x is Foo<*>) {
(x as Foo<out Number>)<caret>.foo()
(x as Foo<*>).foo()
}
}
@@ -1,4 +1,4 @@
// "Cast expression 'x' to 'Foo<out Number>'" "true"
// "Cast expression 'x' to 'Foo<*>'" "true"
trait Foo<T: Number> {
fun foo()
}