Changing default nullability for type arguments to NotNull

This commit is contained in:
Andrey Breslav
2012-12-07 16:34:36 +04:00
parent f09054d1a0
commit f925bfccd0
33 changed files with 107 additions and 56 deletions
@@ -3,10 +3,10 @@ package test
public trait InheritNotVararg: Object {
public trait Super: Object {
public fun foo(p0: Array<out String?>?)
public fun foo(p0: Array<out String>?)
}
public trait Sub: Super {
override fun foo(p0: Array<out String?>?)
override fun foo(p0: Array<out String>?)
}
}
@@ -2,9 +2,9 @@ namespace test
public abstract trait test.InheritNotVararg : java.lang.Object {
public abstract trait test.InheritNotVararg.Sub : test.InheritNotVararg.Super {
public abstract override /*1*/ fun foo(/*0*/ p0: jet.Array<out jet.String?>?): jet.Tuple0
public abstract override /*1*/ fun foo(/*0*/ p0: jet.Array<out jet.String>?): jet.Tuple0
}
public abstract trait test.InheritNotVararg.Super : java.lang.Object {
public abstract fun foo(/*0*/ p0: jet.Array<out jet.String?>?): jet.Tuple0
public abstract fun foo(/*0*/ p0: jet.Array<out jet.String>?): jet.Tuple0
}
}
@@ -3,10 +3,10 @@ package test
public trait InheritNotVarargInteger: Object {
public trait Super: Object {
public fun foo(p0: Array<out Int?>?)
public fun foo(p0: Array<out Int>?)
}
public trait Sub: Super {
override fun foo(p0: Array<out Int?>?)
override fun foo(p0: Array<out Int>?)
}
}
@@ -2,9 +2,9 @@ namespace test
public abstract trait test.InheritNotVarargInteger : java.lang.Object {
public abstract trait test.InheritNotVarargInteger.Sub : test.InheritNotVarargInteger.Super {
public abstract override /*1*/ fun foo(/*0*/ p0: jet.Array<out jet.Int?>?): jet.Tuple0
public abstract override /*1*/ fun foo(/*0*/ p0: jet.Array<out jet.Int>?): jet.Tuple0
}
public abstract trait test.InheritNotVarargInteger.Super : java.lang.Object {
public abstract fun foo(/*0*/ p0: jet.Array<out jet.Int?>?): jet.Tuple0
public abstract fun foo(/*0*/ p0: jet.Array<out jet.Int>?): jet.Tuple0
}
}
@@ -13,7 +13,7 @@ public interface AddNullabilitySameGenericType1 {
}
public interface Sub extends Super {
@ExpectLoadError("Auto type 'jet.String' is not-null, while type in alternative signature is nullable: 'String?'")
@ExpectLoadError("Return type is changed to not subtype for method which overrides another: MutableList<String?>, was: MutableList<String>")
@KotlinSignature("fun foo(): MutableList<String?>")
List<String> foo();
}
@@ -9,7 +9,7 @@ public interface HalfSubstitutedTypeParameters {
public interface TrickyList<X, E> extends List<E> {}
public interface Super {
@KotlinSignature("fun foo(): MutableList<String>")
@KotlinSignature("fun foo(): MutableList<String?>")
List<String> foo();
}
@@ -5,10 +5,10 @@ public trait HalfSubstitutedTypeParameters: Object {
public trait TrickyList<X, E>: MutableList<E> {}
public trait Super: Object {
public fun foo(): MutableList<String>
public fun foo(): MutableList<String?>
}
public trait Sub: Super {
override fun foo(): TrickyList<Int?, String>
override fun foo(): TrickyList<Int, String?>
}
}
@@ -2,10 +2,10 @@ namespace test
public abstract trait test.HalfSubstitutedTypeParameters : java.lang.Object {
public abstract trait test.HalfSubstitutedTypeParameters.Sub : test.HalfSubstitutedTypeParameters.Super {
public abstract override /*1*/ fun foo(): test.HalfSubstitutedTypeParameters.TrickyList<jet.Int?, jet.String>
public abstract override /*1*/ fun foo(): test.HalfSubstitutedTypeParameters.TrickyList<jet.Int, jet.String?>
}
public abstract trait test.HalfSubstitutedTypeParameters.Super : java.lang.Object {
public abstract fun foo(): jet.MutableList<jet.String>
public abstract fun foo(): jet.MutableList<jet.String?>
}
public abstract trait test.HalfSubstitutedTypeParameters.TrickyList</*0*/ X : jet.Any?, /*1*/ E : jet.Any?> : jet.MutableList<E> {
public abstract override /*1*/ /*fake_override*/ fun add(/*0*/ e: E): jet.Boolean