Alphabetical sort wrapped intersection types for rendered diagnostics
This commit is contained in:
+2
-2
@@ -1,6 +1,5 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_FUNCTIONS
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS NOT LINKED SPEC TEST (NEGATIVE)
|
||||
@@ -10,6 +9,7 @@
|
||||
* DESCRIPTION: Contract is first statement in control flow terms, but not in tokens order terms.
|
||||
* UNEXPECTED BEHAVIOUR
|
||||
* ISSUES: KT-26153
|
||||
* HELPERS: functions
|
||||
*/
|
||||
|
||||
import kotlin.contracts.*
|
||||
@@ -57,7 +57,7 @@ inline fun case_6(block: () -> Unit) {
|
||||
|
||||
// TESTCASE NUMBER: 7
|
||||
inline fun case_7(block: () -> Unit) {
|
||||
_funWithAnyArg(contract {
|
||||
funWithAnyArg(contract {
|
||||
callsInPlace(block, InvocationKind.EXACTLY_ONCE)
|
||||
})
|
||||
}
|
||||
|
||||
+10
-2
@@ -1,7 +1,5 @@
|
||||
package
|
||||
|
||||
public fun _funWithAnyArg(/*0*/ value_1: kotlin.Any): kotlin.Int
|
||||
public fun _funWithoutArgs(): kotlin.Int
|
||||
public inline fun case_1(/*0*/ block: () -> kotlin.Unit): kotlin.Unit
|
||||
public fun case_2(): kotlin.Unit
|
||||
public inline fun case_3(/*0*/ block: () -> kotlin.Unit): kotlin.Unit
|
||||
@@ -9,3 +7,13 @@ public inline fun case_4(/*0*/ block: () -> kotlin.Unit): kotlin.Unit
|
||||
public inline fun case_5(/*0*/ block: () -> kotlin.Unit): kotlin.Unit
|
||||
public inline fun case_6(/*0*/ block: () -> kotlin.Unit): kotlin.Unit
|
||||
public inline fun case_7(/*0*/ block: () -> kotlin.Unit): kotlin.Unit
|
||||
public fun </*0*/ K> expandIn(/*0*/ vararg x: [ERROR : In<K>]<K> /*kotlin.Array<out [ERROR : In<K>]<K>>*/): K
|
||||
public fun </*0*/ K> expandInWithRemoveNullable(/*0*/ vararg x: [ERROR : In<K?>]<K?> /*kotlin.Array<out [ERROR : In<K?>]<K?>>*/): K
|
||||
public fun </*0*/ K> expandInv(/*0*/ vararg x: [ERROR : Inv<K>]<K> /*kotlin.Array<out [ERROR : Inv<K>]<K>>*/): K
|
||||
public fun </*0*/ K> expandInvWithRemoveNullable(/*0*/ vararg x: [ERROR : Inv<K?>]<K?> /*kotlin.Array<out [ERROR : Inv<K?>]<K?>>*/): K
|
||||
public fun </*0*/ K> expandOut(/*0*/ vararg x: [ERROR : Out<K>]<K> /*kotlin.Array<out [ERROR : Out<K>]<K>>*/): K
|
||||
public fun </*0*/ K> expandOutWithRemoveNullable(/*0*/ vararg x: [ERROR : Out<K?>]<K?> /*kotlin.Array<out [ERROR : Out<K?>]<K?>>*/): K
|
||||
public fun funWithAnyArg(/*0*/ value_1: kotlin.Any): kotlin.Int
|
||||
public fun funWithoutArgs(): kotlin.Int
|
||||
public fun </*0*/ K> removeNullable(/*0*/ vararg x: K? /*kotlin.Array<out K?>*/): K
|
||||
public fun </*0*/ K> select(/*0*/ vararg x: K /*kotlin.Array<out K>*/): K
|
||||
|
||||
+1
-1
@@ -1,6 +1,5 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER -UNREACHABLE_CODE -UNUSED_EXPRESSION
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_BASIC_TYPES
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS NOT LINKED SPEC TEST (NEGATIVE)
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, declarations, contractBuilder, common
|
||||
* NUMBER: 6
|
||||
* DESCRIPTION: contracts with not function parameters in implies.
|
||||
* HELPERS: typesProvider
|
||||
*/
|
||||
|
||||
import kotlin.contracts.*
|
||||
|
||||
+22
-22
@@ -1,34 +1,34 @@
|
||||
package
|
||||
|
||||
public fun getAny(): kotlin.Any
|
||||
public fun getBoolean(/*0*/ arg: kotlin.Any = ...): kotlin.Boolean
|
||||
public fun getByte(/*0*/ arg: kotlin.Any = ...): kotlin.Byte
|
||||
public fun getChar(/*0*/ arg: kotlin.Any = ...): kotlin.Char
|
||||
public fun getDouble(/*0*/ arg: kotlin.Any = ...): kotlin.Double
|
||||
public fun getFloat(/*0*/ arg: kotlin.Any = ...): kotlin.Float
|
||||
public fun getInt(/*0*/ arg: kotlin.Any = ...): kotlin.Int
|
||||
public fun getList(): kotlin.collections.MutableList<kotlin.Int>
|
||||
public fun getLong(/*0*/ arg: kotlin.Any = ...): kotlin.Long
|
||||
public fun getBoolean(): kotlin.Boolean
|
||||
public fun getByte(): kotlin.Byte
|
||||
public fun getChar(): kotlin.Char
|
||||
public fun getDouble(): kotlin.Double
|
||||
public fun getFloat(): kotlin.Float
|
||||
public fun getInt(): kotlin.Int
|
||||
public fun getList(): kotlin.collections.List<kotlin.Int>
|
||||
public fun getLong(): kotlin.Long
|
||||
public fun getNothing(): kotlin.Nothing
|
||||
public fun getShort(/*0*/ arg: kotlin.Any = ...): kotlin.Short
|
||||
public fun getString(/*0*/ arg: kotlin.Any = ...): kotlin.String
|
||||
public fun getShort(): kotlin.Short
|
||||
public fun getString(): kotlin.String
|
||||
public fun getUnit(): () -> kotlin.Unit
|
||||
|
||||
public final class _BasicTypesProvider {
|
||||
public constructor _BasicTypesProvider()
|
||||
public final class TypesProvider {
|
||||
public constructor TypesProvider()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final fun getAny(): kotlin.Any
|
||||
public final fun getBoolean(/*0*/ arg: kotlin.Any = ...): kotlin.Boolean
|
||||
public final fun getByte(/*0*/ arg: kotlin.Any = ...): kotlin.Byte
|
||||
public final fun getChar(/*0*/ arg: kotlin.Any = ...): kotlin.Char
|
||||
public final fun getDouble(/*0*/ arg: kotlin.Any = ...): kotlin.Double
|
||||
public final fun getFloat(/*0*/ arg: kotlin.Any = ...): kotlin.Float
|
||||
public final fun getInt(/*0*/ arg: kotlin.Any = ...): kotlin.Int
|
||||
public final fun getList(): kotlin.collections.MutableList<kotlin.Int>
|
||||
public final fun getLong(/*0*/ arg: kotlin.Any = ...): kotlin.Long
|
||||
public final fun getBoolean(): kotlin.Boolean
|
||||
public final fun getByte(): kotlin.Byte
|
||||
public final fun getChar(): kotlin.Char
|
||||
public final fun getDouble(): kotlin.Double
|
||||
public final fun getFloat(): kotlin.Float
|
||||
public final fun getInt(): kotlin.Int
|
||||
public final fun getList(): kotlin.collections.List<kotlin.Int>
|
||||
public final fun getLong(): kotlin.Long
|
||||
public final fun getNothing(): kotlin.Nothing
|
||||
public final fun getShort(/*0*/ arg: kotlin.Any = ...): kotlin.Short
|
||||
public final fun getString(/*0*/ arg: kotlin.Any = ...): kotlin.String
|
||||
public final fun getShort(): kotlin.Short
|
||||
public final fun getString(): kotlin.String
|
||||
public final fun getUnit(): () -> kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
+1
-1
@@ -1,6 +1,5 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER -UNREACHABLE_CODE -UNUSED_EXPRESSION
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_BASIC_TYPES
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS NOT LINKED SPEC TEST (NEGATIVE)
|
||||
@@ -9,6 +8,7 @@
|
||||
* NUMBER: 7
|
||||
* DESCRIPTION: Contract function with 'this' labeled by not current extensible object
|
||||
* ISSUES: KT-26149
|
||||
* HELPERS: typesProvider
|
||||
*/
|
||||
|
||||
import kotlin.contracts.*
|
||||
|
||||
+22
-22
@@ -1,35 +1,35 @@
|
||||
package
|
||||
|
||||
public fun getAny(): kotlin.Any
|
||||
public fun getBoolean(/*0*/ arg: kotlin.Any = ...): kotlin.Boolean
|
||||
public fun getByte(/*0*/ arg: kotlin.Any = ...): kotlin.Byte
|
||||
public fun getChar(/*0*/ arg: kotlin.Any = ...): kotlin.Char
|
||||
public fun getDouble(/*0*/ arg: kotlin.Any = ...): kotlin.Double
|
||||
public fun getFloat(/*0*/ arg: kotlin.Any = ...): kotlin.Float
|
||||
public fun getInt(/*0*/ arg: kotlin.Any = ...): kotlin.Int
|
||||
public fun getList(): kotlin.collections.MutableList<kotlin.Int>
|
||||
public fun getLong(/*0*/ arg: kotlin.Any = ...): kotlin.Long
|
||||
public fun getBoolean(): kotlin.Boolean
|
||||
public fun getByte(): kotlin.Byte
|
||||
public fun getChar(): kotlin.Char
|
||||
public fun getDouble(): kotlin.Double
|
||||
public fun getFloat(): kotlin.Float
|
||||
public fun getInt(): kotlin.Int
|
||||
public fun getList(): kotlin.collections.List<kotlin.Int>
|
||||
public fun getLong(): kotlin.Long
|
||||
public fun getNothing(): kotlin.Nothing
|
||||
public fun getShort(/*0*/ arg: kotlin.Any = ...): kotlin.Short
|
||||
public fun getString(/*0*/ arg: kotlin.Any = ...): kotlin.String
|
||||
public fun getShort(): kotlin.Short
|
||||
public fun getString(): kotlin.String
|
||||
public fun getUnit(): () -> kotlin.Unit
|
||||
public fun </*0*/ T> T?.case_1(): kotlin.Unit
|
||||
|
||||
public final class _BasicTypesProvider {
|
||||
public constructor _BasicTypesProvider()
|
||||
public final class TypesProvider {
|
||||
public constructor TypesProvider()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final fun getAny(): kotlin.Any
|
||||
public final fun getBoolean(/*0*/ arg: kotlin.Any = ...): kotlin.Boolean
|
||||
public final fun getByte(/*0*/ arg: kotlin.Any = ...): kotlin.Byte
|
||||
public final fun getChar(/*0*/ arg: kotlin.Any = ...): kotlin.Char
|
||||
public final fun getDouble(/*0*/ arg: kotlin.Any = ...): kotlin.Double
|
||||
public final fun getFloat(/*0*/ arg: kotlin.Any = ...): kotlin.Float
|
||||
public final fun getInt(/*0*/ arg: kotlin.Any = ...): kotlin.Int
|
||||
public final fun getList(): kotlin.collections.MutableList<kotlin.Int>
|
||||
public final fun getLong(/*0*/ arg: kotlin.Any = ...): kotlin.Long
|
||||
public final fun getBoolean(): kotlin.Boolean
|
||||
public final fun getByte(): kotlin.Byte
|
||||
public final fun getChar(): kotlin.Char
|
||||
public final fun getDouble(): kotlin.Double
|
||||
public final fun getFloat(): kotlin.Float
|
||||
public final fun getInt(): kotlin.Int
|
||||
public final fun getList(): kotlin.collections.List<kotlin.Int>
|
||||
public final fun getLong(): kotlin.Long
|
||||
public final fun getNothing(): kotlin.Nothing
|
||||
public final fun getShort(/*0*/ arg: kotlin.Any = ...): kotlin.Short
|
||||
public final fun getString(/*0*/ arg: kotlin.Any = ...): kotlin.String
|
||||
public final fun getShort(): kotlin.Short
|
||||
public final fun getString(): kotlin.String
|
||||
public final fun getUnit(): () -> kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
+3
-3
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_OBJECTS
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS NOT LINKED SPEC TEST (NEGATIVE)
|
||||
@@ -8,6 +7,7 @@
|
||||
* NUMBER: 3
|
||||
* DESCRIPTION: Using reference equality in implies.
|
||||
* ISSUES: KT-26177
|
||||
* HELPERS: objects
|
||||
*/
|
||||
|
||||
import kotlin.contracts.*
|
||||
@@ -15,7 +15,7 @@ import kotlin.contracts.*
|
||||
// TESTCASE NUMBER: 1
|
||||
fun case_1(x: Any?): Boolean {
|
||||
contract {
|
||||
returns(true) implies (x === <!ERROR_IN_CONTRACT_DESCRIPTION!>_EmptyObject<!>) // should be not allowed
|
||||
returns(true) implies (x === <!ERROR_IN_CONTRACT_DESCRIPTION!>EmptyObject<!>) // should be not allowed
|
||||
}
|
||||
return x === _EmptyObject
|
||||
return x === EmptyObject
|
||||
}
|
||||
|
||||
+77
-2
@@ -2,8 +2,83 @@ package
|
||||
|
||||
public fun case_1(/*0*/ x: kotlin.Any?): kotlin.Boolean
|
||||
|
||||
public object _EmptyObject {
|
||||
private constructor _EmptyObject()
|
||||
public object DeepObject {
|
||||
private constructor DeepObject()
|
||||
public final val prop_1: kotlin.Nothing? = null
|
||||
public final var prop_2: kotlin.Nothing?
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
public object A {
|
||||
private constructor A()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
public object B {
|
||||
private constructor B()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
public object C {
|
||||
private constructor C()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
public object D {
|
||||
private constructor D()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
public object E {
|
||||
private constructor E()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
public object F {
|
||||
private constructor F()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
public object G {
|
||||
private constructor G()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
public object J {
|
||||
private constructor J()
|
||||
public final val x: kotlin.Int? = 10
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public object EmptyObject {
|
||||
private constructor EmptyObject()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public object Object {
|
||||
private constructor Object()
|
||||
public final val prop_1: kotlin.Number? = 1
|
||||
public final val prop_2: kotlin.Number = 1
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
+3
-3
@@ -1,6 +1,5 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !DIAGNOSTICS: -FINAL_UPPER_BOUND
|
||||
// !WITH_CLASSES
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS NOT LINKED SPEC TEST (POSITIVE)
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, declarations, contractBuilder, effects, returns
|
||||
* NUMBER: 1
|
||||
* DESCRIPTION: Returns effect with simple conditions.
|
||||
* HELPERS: classes
|
||||
*/
|
||||
|
||||
import kotlin.contracts.*
|
||||
@@ -50,8 +50,8 @@ fun Any?.case_7() {
|
||||
|
||||
// TESTCASE NUMBER: 8
|
||||
fun <T>T?.case_8() {
|
||||
contract { returns() implies (this@case_8 !is _ClassLevel3?) }
|
||||
if (this is _ClassLevel3?) throw Exception()
|
||||
contract { returns() implies (this@case_8 !is ClassLevel3?) }
|
||||
if (this is ClassLevel3?) throw Exception()
|
||||
}
|
||||
|
||||
// TESTCASE NUMBER: 9
|
||||
|
||||
+103
-22
@@ -31,16 +31,20 @@ public fun kotlin.Any?.case_7(): kotlin.Unit
|
||||
Returns(WILDCARD) -> <this> is Number
|
||||
|
||||
public fun </*0*/ T> T?.case_8(): kotlin.Unit
|
||||
Returns(WILDCARD) -> <this> !is _ClassLevel3?
|
||||
Returns(WILDCARD) -> <this> !is ClassLevel3?
|
||||
|
||||
public fun </*0*/ T : kotlin.Number?> T.case_9(): kotlin.Boolean?
|
||||
Returns(NULL) -> <this> is Byte?
|
||||
|
||||
public final class _Class {
|
||||
public constructor _Class()
|
||||
public final class Class {
|
||||
public constructor Class()
|
||||
public final val prop_1: kotlin.Int = 1
|
||||
public final val prop_2: kotlin.Int = 2
|
||||
public final val prop_3: kotlin.Int = 3
|
||||
public final val prop_4: kotlin.Float? = 3.0.toFloat()
|
||||
public final val prop_5: kotlin.Float = 3.0.toFloat()
|
||||
public final val prop_6: kotlin.String = "..."
|
||||
public final val prop_7: kotlin.Nothing? = "..."
|
||||
public final operator fun contains(/*0*/ a: kotlin.Char): kotlin.Boolean
|
||||
public final operator fun contains(/*0*/ a: kotlin.Int): kotlin.Boolean
|
||||
public final operator fun contains(/*0*/ a: kotlin.Long): kotlin.Boolean
|
||||
@@ -48,9 +52,9 @@ public final class _Class {
|
||||
public final fun fun_1(): (kotlin.Int) -> (kotlin.Int) -> kotlin.Int
|
||||
public final fun fun_2(/*0*/ value_1: kotlin.Int): kotlin.Int
|
||||
public final fun fun_3(/*0*/ value_1: kotlin.Int): (kotlin.Int) -> kotlin.Int
|
||||
public final fun getCharArray(/*0*/ value_1: kotlin.Char): kotlin.CharArray
|
||||
public final fun getIntArray(/*0*/ value_1: kotlin.Int): kotlin.IntArray
|
||||
public final fun getLongArray(/*0*/ value_1: kotlin.Long): kotlin.LongArray
|
||||
public final fun getCharArray(): kotlin.CharArray
|
||||
public final fun getIntArray(): kotlin.IntArray
|
||||
public final fun getLongArray(): kotlin.LongArray
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
@@ -64,50 +68,71 @@ public final class _Class {
|
||||
}
|
||||
}
|
||||
|
||||
public open class _ClassLevel1 {
|
||||
public constructor _ClassLevel1()
|
||||
public open class ClassLevel1 {
|
||||
public constructor ClassLevel1()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun test1(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class _ClassLevel2 : _ClassLevel1 {
|
||||
public constructor _ClassLevel2()
|
||||
public open class ClassLevel2 : ClassLevel1 {
|
||||
public constructor ClassLevel2()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final fun test2(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class _ClassLevel3 : _ClassLevel2 {
|
||||
public constructor _ClassLevel3()
|
||||
public open class ClassLevel3 : ClassLevel2 {
|
||||
public constructor ClassLevel3()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final fun test3(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class _ClassLevel4 : _ClassLevel3 {
|
||||
public constructor _ClassLevel4()
|
||||
public open class ClassLevel4 : ClassLevel3 {
|
||||
public constructor ClassLevel4()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test3(): kotlin.Unit
|
||||
public final fun test4(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class _ClassLevel5 : _ClassLevel4 {
|
||||
public constructor _ClassLevel5()
|
||||
public open class ClassLevel5 : ClassLevel4 {
|
||||
public constructor ClassLevel5()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test3(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test4(): kotlin.Unit
|
||||
public final fun test5(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class _ClassLevel6 : _ClassLevel5 {
|
||||
public constructor _ClassLevel6()
|
||||
public final class ClassLevel6 : ClassLevel5 {
|
||||
public constructor ClassLevel6()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test3(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test4(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test5(): kotlin.Unit
|
||||
public final fun test6(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class _ClassWithCompanionObject {
|
||||
public constructor _ClassWithCompanionObject()
|
||||
public final class ClassWithCompanionObject {
|
||||
public constructor ClassWithCompanionObject()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
@@ -120,9 +145,65 @@ public final class _ClassWithCompanionObject {
|
||||
}
|
||||
}
|
||||
|
||||
public final class _EmptyClass {
|
||||
public constructor _EmptyClass()
|
||||
public final class ClassWithSixTypeParameters</*0*/ K, /*1*/ in L, /*2*/ out M, /*3*/ O, /*4*/ in P, /*5*/ out R> {
|
||||
public constructor ClassWithSixTypeParameters</*0*/ K, /*1*/ in L, /*2*/ out M, /*3*/ O, /*4*/ in P, /*5*/ out R>()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class ClassWithThreeTypeParameters</*0*/ K, /*1*/ L, /*2*/ M> {
|
||||
public constructor ClassWithThreeTypeParameters</*0*/ K, /*1*/ L, /*2*/ M>(/*0*/ x: K, /*1*/ y: L, /*2*/ z: M)
|
||||
public final val x: K
|
||||
public final val y: L
|
||||
public final val z: M
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class ClassWithTwoTypeParameters</*0*/ K, /*1*/ L> {
|
||||
public constructor ClassWithTwoTypeParameters</*0*/ K, /*1*/ L>()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun test1(): [ERROR : T]?
|
||||
public final fun test2(): K?
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class EmptyClass {
|
||||
public constructor EmptyClass()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class In</*0*/ in T> {
|
||||
public constructor In</*0*/ in T>()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final fun </*0*/ K : T> getWithUpperBoundT(): K
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun put(/*0*/ x: T): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class Inv</*0*/ T> {
|
||||
public constructor Inv</*0*/ T>(/*0*/ x: T = ...)
|
||||
public final val x: T
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final fun get(): T
|
||||
public final fun getNullable(): T?
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun put(/*0*/ x: T): kotlin.Unit
|
||||
public final fun test(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class Out</*0*/ out T> {
|
||||
public constructor Out</*0*/ out T>(/*0*/ x: T = ...)
|
||||
public final val x: T
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final fun get(): T
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,6 +1,5 @@
|
||||
// !DIAGNOSTICS: -FINAL_UPPER_BOUND
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CLASSES
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS NOT LINKED SPEC TEST (POSITIVE)
|
||||
@@ -8,6 +7,7 @@
|
||||
* SECTIONS: contracts, declarations, contractBuilder, effects, returns
|
||||
* NUMBER: 2
|
||||
* DESCRIPTION: Returns effect with complex conditions (using conjunction and disjuntion).
|
||||
* HELPERS: classes
|
||||
*/
|
||||
|
||||
import kotlin.contracts.*
|
||||
|
||||
+102
-21
@@ -12,11 +12,15 @@ public fun case_3(/*0*/ value_1: kotlin.Any?, /*1*/ value_2: kotlin.Any?, /*2*/
|
||||
public fun </*0*/ T> T.case_4(): kotlin.Boolean
|
||||
Returns(FALSE) -> <this> is Char || <this> == null
|
||||
|
||||
public final class _Class {
|
||||
public constructor _Class()
|
||||
public final class Class {
|
||||
public constructor Class()
|
||||
public final val prop_1: kotlin.Int = 1
|
||||
public final val prop_2: kotlin.Int = 2
|
||||
public final val prop_3: kotlin.Int = 3
|
||||
public final val prop_4: kotlin.Float? = 3.0.toFloat()
|
||||
public final val prop_5: kotlin.Float = 3.0.toFloat()
|
||||
public final val prop_6: kotlin.String = "..."
|
||||
public final val prop_7: kotlin.Nothing? = "..."
|
||||
public final operator fun contains(/*0*/ a: kotlin.Char): kotlin.Boolean
|
||||
public final operator fun contains(/*0*/ a: kotlin.Int): kotlin.Boolean
|
||||
public final operator fun contains(/*0*/ a: kotlin.Long): kotlin.Boolean
|
||||
@@ -24,9 +28,9 @@ public final class _Class {
|
||||
public final fun fun_1(): (kotlin.Int) -> (kotlin.Int) -> kotlin.Int
|
||||
public final fun fun_2(/*0*/ value_1: kotlin.Int): kotlin.Int
|
||||
public final fun fun_3(/*0*/ value_1: kotlin.Int): (kotlin.Int) -> kotlin.Int
|
||||
public final fun getCharArray(/*0*/ value_1: kotlin.Char): kotlin.CharArray
|
||||
public final fun getIntArray(/*0*/ value_1: kotlin.Int): kotlin.IntArray
|
||||
public final fun getLongArray(/*0*/ value_1: kotlin.Long): kotlin.LongArray
|
||||
public final fun getCharArray(): kotlin.CharArray
|
||||
public final fun getIntArray(): kotlin.IntArray
|
||||
public final fun getLongArray(): kotlin.LongArray
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
@@ -40,50 +44,71 @@ public final class _Class {
|
||||
}
|
||||
}
|
||||
|
||||
public open class _ClassLevel1 {
|
||||
public constructor _ClassLevel1()
|
||||
public open class ClassLevel1 {
|
||||
public constructor ClassLevel1()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun test1(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class _ClassLevel2 : _ClassLevel1 {
|
||||
public constructor _ClassLevel2()
|
||||
public open class ClassLevel2 : ClassLevel1 {
|
||||
public constructor ClassLevel2()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final fun test2(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class _ClassLevel3 : _ClassLevel2 {
|
||||
public constructor _ClassLevel3()
|
||||
public open class ClassLevel3 : ClassLevel2 {
|
||||
public constructor ClassLevel3()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final fun test3(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class _ClassLevel4 : _ClassLevel3 {
|
||||
public constructor _ClassLevel4()
|
||||
public open class ClassLevel4 : ClassLevel3 {
|
||||
public constructor ClassLevel4()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test3(): kotlin.Unit
|
||||
public final fun test4(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class _ClassLevel5 : _ClassLevel4 {
|
||||
public constructor _ClassLevel5()
|
||||
public open class ClassLevel5 : ClassLevel4 {
|
||||
public constructor ClassLevel5()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test3(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test4(): kotlin.Unit
|
||||
public final fun test5(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class _ClassLevel6 : _ClassLevel5 {
|
||||
public constructor _ClassLevel6()
|
||||
public final class ClassLevel6 : ClassLevel5 {
|
||||
public constructor ClassLevel6()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test3(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test4(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test5(): kotlin.Unit
|
||||
public final fun test6(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class _ClassWithCompanionObject {
|
||||
public constructor _ClassWithCompanionObject()
|
||||
public final class ClassWithCompanionObject {
|
||||
public constructor ClassWithCompanionObject()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
@@ -96,9 +121,65 @@ public final class _ClassWithCompanionObject {
|
||||
}
|
||||
}
|
||||
|
||||
public final class _EmptyClass {
|
||||
public constructor _EmptyClass()
|
||||
public final class ClassWithSixTypeParameters</*0*/ K, /*1*/ in L, /*2*/ out M, /*3*/ O, /*4*/ in P, /*5*/ out R> {
|
||||
public constructor ClassWithSixTypeParameters</*0*/ K, /*1*/ in L, /*2*/ out M, /*3*/ O, /*4*/ in P, /*5*/ out R>()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class ClassWithThreeTypeParameters</*0*/ K, /*1*/ L, /*2*/ M> {
|
||||
public constructor ClassWithThreeTypeParameters</*0*/ K, /*1*/ L, /*2*/ M>(/*0*/ x: K, /*1*/ y: L, /*2*/ z: M)
|
||||
public final val x: K
|
||||
public final val y: L
|
||||
public final val z: M
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class ClassWithTwoTypeParameters</*0*/ K, /*1*/ L> {
|
||||
public constructor ClassWithTwoTypeParameters</*0*/ K, /*1*/ L>()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun test1(): [ERROR : T]?
|
||||
public final fun test2(): K?
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class EmptyClass {
|
||||
public constructor EmptyClass()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class In</*0*/ in T> {
|
||||
public constructor In</*0*/ in T>()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final fun </*0*/ K : T> getWithUpperBoundT(): K
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun put(/*0*/ x: T): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class Inv</*0*/ T> {
|
||||
public constructor Inv</*0*/ T>(/*0*/ x: T = ...)
|
||||
public final val x: T
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final fun get(): T
|
||||
public final fun getNullable(): T?
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun put(/*0*/ x: T): kotlin.Unit
|
||||
public final fun test(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class Out</*0*/ out T> {
|
||||
public constructor Out</*0*/ out T>(/*0*/ x: T = ...)
|
||||
public final val x: T
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final fun get(): T
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
Vendored
+11
-11
@@ -1,5 +1,4 @@
|
||||
// !USE_EXPERIMENTAL: kotlin.contracts.ExperimentalContracts
|
||||
// !WITH_CLASSES
|
||||
|
||||
/*
|
||||
* KOTLIN DIAGNOSTICS NOT LINKED SPEC TEST (NEGATIVE)
|
||||
@@ -8,6 +7,7 @@
|
||||
* NUMBER: 2
|
||||
* DESCRIPTION: Check report about use contracts in literal functions, lambdas or not top-level functions.
|
||||
* ISSUES: KT-26149
|
||||
* HELPERS: classes
|
||||
*/
|
||||
|
||||
import kotlin.contracts.*
|
||||
@@ -46,10 +46,10 @@ object case_3 {
|
||||
* TESTCASE NUMBER: 4
|
||||
* ISSUES: KT-26244
|
||||
*/
|
||||
class case_4 : _ClassLevel3() {
|
||||
class case_4 : ClassLevel3() {
|
||||
|
||||
fun <T : Number?>T.case_4_1(): Boolean {
|
||||
<!CONTRACT_NOT_ALLOWED!>contract<!> { returns(false) implies (<!USELESS_IS_CHECK!>this@case_4 !is _ClassLevel1<!>) }
|
||||
<!CONTRACT_NOT_ALLOWED!>contract<!> { returns(false) implies (<!USELESS_IS_CHECK!>this@case_4 !is ClassLevel1<!>) }
|
||||
return this == null
|
||||
}
|
||||
|
||||
@@ -70,30 +70,30 @@ class case_4 : _ClassLevel3() {
|
||||
|
||||
fun <T>T.case_4_5_wrap() {
|
||||
fun case_4_5_contract() {
|
||||
<!CONTRACT_NOT_ALLOWED!>contract<!> { returns() implies (this@case_4_5_wrap is _ClassLevel1) }
|
||||
if (this@case_4_5_wrap !is _ClassLevel1) throw Exception()
|
||||
<!CONTRACT_NOT_ALLOWED!>contract<!> { returns() implies (this@case_4_5_wrap is ClassLevel1) }
|
||||
if (this@case_4_5_wrap !is ClassLevel1) throw Exception()
|
||||
}
|
||||
case_4_5_contract()
|
||||
println("!")
|
||||
}
|
||||
|
||||
fun case_4_5() = _ClassLevel3().case_4_5_wrap()
|
||||
fun case_4_5() = ClassLevel3().case_4_5_wrap()
|
||||
}
|
||||
|
||||
/*
|
||||
* TESTCASE NUMBER: 5
|
||||
* ISSUES: KT-26244
|
||||
*/
|
||||
class case_5<T> : _ClassLevel5() {
|
||||
class case_5<T> : ClassLevel5() {
|
||||
inner class case_5_1 {
|
||||
fun <K : Number?>K.case_5_1_1() {
|
||||
<!CONTRACT_NOT_ALLOWED!>contract<!> { returns() implies (this@case_5_1 !is _ClassLevel1 && <!SENSELESS_COMPARISON!>this@case_5_1 != null<!> || <!USELESS_IS_CHECK!>this@case_5 is _ClassLevel1<!> && this@case_5_1_1 is Float) }
|
||||
if (!(this@case_5_1 !is _ClassLevel1 && <!SENSELESS_COMPARISON!>this@case_5_1 != null<!> || <!USELESS_IS_CHECK!>this@case_5 is _ClassLevel1<!> && this is Float)) throw Exception()
|
||||
<!CONTRACT_NOT_ALLOWED!>contract<!> { returns() implies (this@case_5_1 !is ClassLevel1 && <!SENSELESS_COMPARISON!>this@case_5_1 != null<!> || <!USELESS_IS_CHECK!>this@case_5 is ClassLevel1<!> && this@case_5_1_1 is Float) }
|
||||
if (!(this@case_5_1 !is ClassLevel1 && <!SENSELESS_COMPARISON!>this@case_5_1 != null<!> || <!USELESS_IS_CHECK!>this@case_5 is ClassLevel1<!> && this is Float)) throw Exception()
|
||||
}
|
||||
|
||||
fun case_5_1_2() {
|
||||
<!CONTRACT_NOT_ALLOWED!>contract<!> { returns() implies (this@case_5_1 !is _ClassLevel1 || <!USELESS_IS_CHECK!>this@case_5 is _ClassLevel1<!> || <!SENSELESS_COMPARISON!>this@case_5_1 == null<!>) }
|
||||
if (!(this@case_5_1 !is _ClassLevel1 || <!USELESS_IS_CHECK!>this@case_5 is _ClassLevel1<!> || <!SENSELESS_COMPARISON!>this@case_5_1 == null<!>)) throw Exception()
|
||||
<!CONTRACT_NOT_ALLOWED!>contract<!> { returns() implies (this@case_5_1 !is ClassLevel1 || <!USELESS_IS_CHECK!>this@case_5 is ClassLevel1<!> || <!SENSELESS_COMPARISON!>this@case_5_1 == null<!>) }
|
||||
if (!(this@case_5_1 !is ClassLevel1 || <!USELESS_IS_CHECK!>this@case_5 is ClassLevel1<!> || <!SENSELESS_COMPARISON!>this@case_5_1 == null<!>)) throw Exception()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
compiler/tests-spec/testData/diagnostics/notLinked/contracts/declarations/contractFunction/neg/2.txt
Vendored
+112
-23
@@ -3,11 +3,15 @@ package
|
||||
public fun case_1(): kotlin.Unit
|
||||
public fun case_2(): kotlin.Unit
|
||||
|
||||
public final class _Class {
|
||||
public constructor _Class()
|
||||
public final class Class {
|
||||
public constructor Class()
|
||||
public final val prop_1: kotlin.Int = 1
|
||||
public final val prop_2: kotlin.Int = 2
|
||||
public final val prop_3: kotlin.Int = 3
|
||||
public final val prop_4: kotlin.Float? = 3.0.toFloat()
|
||||
public final val prop_5: kotlin.Float = 3.0.toFloat()
|
||||
public final val prop_6: kotlin.String = "..."
|
||||
public final val prop_7: kotlin.Nothing? = "..."
|
||||
public final operator fun contains(/*0*/ a: kotlin.Char): kotlin.Boolean
|
||||
public final operator fun contains(/*0*/ a: kotlin.Int): kotlin.Boolean
|
||||
public final operator fun contains(/*0*/ a: kotlin.Long): kotlin.Boolean
|
||||
@@ -15,9 +19,9 @@ public final class _Class {
|
||||
public final fun fun_1(): (kotlin.Int) -> (kotlin.Int) -> kotlin.Int
|
||||
public final fun fun_2(/*0*/ value_1: kotlin.Int): kotlin.Int
|
||||
public final fun fun_3(/*0*/ value_1: kotlin.Int): (kotlin.Int) -> kotlin.Int
|
||||
public final fun getCharArray(/*0*/ value_1: kotlin.Char): kotlin.CharArray
|
||||
public final fun getIntArray(/*0*/ value_1: kotlin.Int): kotlin.IntArray
|
||||
public final fun getLongArray(/*0*/ value_1: kotlin.Long): kotlin.LongArray
|
||||
public final fun getCharArray(): kotlin.CharArray
|
||||
public final fun getIntArray(): kotlin.IntArray
|
||||
public final fun getLongArray(): kotlin.LongArray
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
@@ -31,50 +35,71 @@ public final class _Class {
|
||||
}
|
||||
}
|
||||
|
||||
public open class _ClassLevel1 {
|
||||
public constructor _ClassLevel1()
|
||||
public open class ClassLevel1 {
|
||||
public constructor ClassLevel1()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun test1(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class _ClassLevel2 : _ClassLevel1 {
|
||||
public constructor _ClassLevel2()
|
||||
public open class ClassLevel2 : ClassLevel1 {
|
||||
public constructor ClassLevel2()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final fun test2(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class _ClassLevel3 : _ClassLevel2 {
|
||||
public constructor _ClassLevel3()
|
||||
public open class ClassLevel3 : ClassLevel2 {
|
||||
public constructor ClassLevel3()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final fun test3(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class _ClassLevel4 : _ClassLevel3 {
|
||||
public constructor _ClassLevel4()
|
||||
public open class ClassLevel4 : ClassLevel3 {
|
||||
public constructor ClassLevel4()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test3(): kotlin.Unit
|
||||
public final fun test4(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class _ClassLevel5 : _ClassLevel4 {
|
||||
public constructor _ClassLevel5()
|
||||
public open class ClassLevel5 : ClassLevel4 {
|
||||
public constructor ClassLevel5()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test3(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test4(): kotlin.Unit
|
||||
public final fun test5(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class _ClassLevel6 : _ClassLevel5 {
|
||||
public constructor _ClassLevel6()
|
||||
public final class ClassLevel6 : ClassLevel5 {
|
||||
public constructor ClassLevel6()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test3(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test4(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test5(): kotlin.Unit
|
||||
public final fun test6(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class _ClassWithCompanionObject {
|
||||
public constructor _ClassWithCompanionObject()
|
||||
public final class ClassWithCompanionObject {
|
||||
public constructor ClassWithCompanionObject()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
@@ -87,13 +112,69 @@ public final class _ClassWithCompanionObject {
|
||||
}
|
||||
}
|
||||
|
||||
public final class _EmptyClass {
|
||||
public constructor _EmptyClass()
|
||||
public final class ClassWithSixTypeParameters</*0*/ K, /*1*/ in L, /*2*/ out M, /*3*/ O, /*4*/ in P, /*5*/ out R> {
|
||||
public constructor ClassWithSixTypeParameters</*0*/ K, /*1*/ in L, /*2*/ out M, /*3*/ O, /*4*/ in P, /*5*/ out R>()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class ClassWithThreeTypeParameters</*0*/ K, /*1*/ L, /*2*/ M> {
|
||||
public constructor ClassWithThreeTypeParameters</*0*/ K, /*1*/ L, /*2*/ M>(/*0*/ x: K, /*1*/ y: L, /*2*/ z: M)
|
||||
public final val x: K
|
||||
public final val y: L
|
||||
public final val z: M
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class ClassWithTwoTypeParameters</*0*/ K, /*1*/ L> {
|
||||
public constructor ClassWithTwoTypeParameters</*0*/ K, /*1*/ L>()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun test1(): [ERROR : T]?
|
||||
public final fun test2(): K?
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class EmptyClass {
|
||||
public constructor EmptyClass()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class In</*0*/ in T> {
|
||||
public constructor In</*0*/ in T>()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final fun </*0*/ K : T> getWithUpperBoundT(): K
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun put(/*0*/ x: T): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class Inv</*0*/ T> {
|
||||
public constructor Inv</*0*/ T>(/*0*/ x: T = ...)
|
||||
public final val x: T
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final fun get(): T
|
||||
public final fun getNullable(): T?
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final fun put(/*0*/ x: T): kotlin.Unit
|
||||
public final fun test(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class Out</*0*/ out T> {
|
||||
public constructor Out</*0*/ out T>(/*0*/ x: T = ...)
|
||||
public final val x: T
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final fun get(): T
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public object case_3 {
|
||||
private constructor case_3()
|
||||
public final fun case_3(/*0*/ block: () -> kotlin.Unit): kotlin.Unit
|
||||
@@ -102,12 +183,15 @@ public object case_3 {
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public final class case_4 : _ClassLevel3 {
|
||||
public final class case_4 : ClassLevel3 {
|
||||
public constructor case_4()
|
||||
public final fun case_4_2(/*0*/ number: kotlin.Int?): kotlin.Boolean
|
||||
public final fun case_4_5(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test3(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
public final fun </*0*/ T : kotlin.Number?> T.case_4_1(): kotlin.Boolean
|
||||
public final fun </*0*/ T> T?.case_4_3(): kotlin.Boolean
|
||||
@@ -115,10 +199,15 @@ public final class case_4 : _ClassLevel3 {
|
||||
public final fun </*0*/ T> T.case_4_5_wrap(): kotlin.Unit
|
||||
}
|
||||
|
||||
public final class case_5</*0*/ T> : _ClassLevel5 {
|
||||
public final class case_5</*0*/ T> : ClassLevel5 {
|
||||
public constructor case_5</*0*/ T>()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun test1(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test2(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test3(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test4(): kotlin.Unit
|
||||
public final override /*1*/ /*fake_override*/ fun test5(): kotlin.Unit
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
public final inner class case_5_1 /*captured type parameters: /*0*/ T*/ {
|
||||
|
||||
Reference in New Issue
Block a user