[FE 1.0] Report INTEGER_OPERATOR_RESOLVE_WILL_CHANGE in missing cases
Covered places: - local properties - vars - return positions of functions and lambdas ^KT-45970 Fixed ^KT-55358 Fixed
This commit is contained in:
committed by
Space Team
parent
a979960e63
commit
bd3a28d04d
+12
@@ -2988,6 +2988,12 @@ public class DiagnosisCompilerTestFE10TestdataTestGenerated extends AbstractDiag
|
|||||||
runTest("compiler/testData/diagnostics/tests/callableReference/referenceAdaptationCompatibility.kt");
|
runTest("compiler/testData/diagnostics/tests/callableReference/referenceAdaptationCompatibility.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@TestMetadata("referenceInCycleInProperties.kt")
|
||||||
|
public void testReferenceInCycleInProperties() throws Exception {
|
||||||
|
runTest("compiler/testData/diagnostics/tests/callableReference/referenceInCycleInProperties.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@TestMetadata("referenceToCompanionObjectMemberViaClassName.kt")
|
@TestMetadata("referenceToCompanionObjectMemberViaClassName.kt")
|
||||||
public void testReferenceToCompanionObjectMemberViaClassName() throws Exception {
|
public void testReferenceToCompanionObjectMemberViaClassName() throws Exception {
|
||||||
@@ -22260,6 +22266,12 @@ public class DiagnosisCompilerTestFE10TestdataTestGenerated extends AbstractDiag
|
|||||||
runTest("compiler/testData/diagnostics/tests/numbers/intValuesOutOfRange.kt");
|
runTest("compiler/testData/diagnostics/tests/numbers/intValuesOutOfRange.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@TestMetadata("integerLiteralWillChangeResolveInFunctionReturnPosition.kt")
|
||||||
|
public void testIntegerLiteralWillChangeResolveInFunctionReturnPosition() throws Exception {
|
||||||
|
runTest("compiler/testData/diagnostics/tests/numbers/integerLiteralWillChangeResolveInFunctionReturnPosition.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@TestMetadata("kt41679.kt")
|
@TestMetadata("kt41679.kt")
|
||||||
public void testKt41679() throws Exception {
|
public void testKt41679() throws Exception {
|
||||||
|
|||||||
+12
@@ -2994,6 +2994,12 @@ public class FirOldFrontendDiagnosticsTestGenerated extends AbstractFirDiagnosti
|
|||||||
runTest("compiler/testData/diagnostics/tests/callableReference/referenceAdaptationCompatibility.kt");
|
runTest("compiler/testData/diagnostics/tests/callableReference/referenceAdaptationCompatibility.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@TestMetadata("referenceInCycleInProperties.kt")
|
||||||
|
public void testReferenceInCycleInProperties() throws Exception {
|
||||||
|
runTest("compiler/testData/diagnostics/tests/callableReference/referenceInCycleInProperties.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@TestMetadata("referenceToCompanionObjectMemberViaClassName.kt")
|
@TestMetadata("referenceToCompanionObjectMemberViaClassName.kt")
|
||||||
public void testReferenceToCompanionObjectMemberViaClassName() throws Exception {
|
public void testReferenceToCompanionObjectMemberViaClassName() throws Exception {
|
||||||
@@ -22266,6 +22272,12 @@ public class FirOldFrontendDiagnosticsTestGenerated extends AbstractFirDiagnosti
|
|||||||
runTest("compiler/testData/diagnostics/tests/numbers/intValuesOutOfRange.kt");
|
runTest("compiler/testData/diagnostics/tests/numbers/intValuesOutOfRange.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@TestMetadata("integerLiteralWillChangeResolveInFunctionReturnPosition.kt")
|
||||||
|
public void testIntegerLiteralWillChangeResolveInFunctionReturnPosition() throws Exception {
|
||||||
|
runTest("compiler/testData/diagnostics/tests/numbers/integerLiteralWillChangeResolveInFunctionReturnPosition.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@TestMetadata("kt41679.kt")
|
@TestMetadata("kt41679.kt")
|
||||||
public void testKt41679() throws Exception {
|
public void testKt41679() throws Exception {
|
||||||
|
|||||||
+12
@@ -2988,6 +2988,12 @@ public class FirOldFrontendDiagnosticsWithLightTreeTestGenerated extends Abstrac
|
|||||||
runTest("compiler/testData/diagnostics/tests/callableReference/referenceAdaptationCompatibility.kt");
|
runTest("compiler/testData/diagnostics/tests/callableReference/referenceAdaptationCompatibility.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@TestMetadata("referenceInCycleInProperties.kt")
|
||||||
|
public void testReferenceInCycleInProperties() throws Exception {
|
||||||
|
runTest("compiler/testData/diagnostics/tests/callableReference/referenceInCycleInProperties.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@TestMetadata("referenceToCompanionObjectMemberViaClassName.kt")
|
@TestMetadata("referenceToCompanionObjectMemberViaClassName.kt")
|
||||||
public void testReferenceToCompanionObjectMemberViaClassName() throws Exception {
|
public void testReferenceToCompanionObjectMemberViaClassName() throws Exception {
|
||||||
@@ -22260,6 +22266,12 @@ public class FirOldFrontendDiagnosticsWithLightTreeTestGenerated extends Abstrac
|
|||||||
runTest("compiler/testData/diagnostics/tests/numbers/intValuesOutOfRange.kt");
|
runTest("compiler/testData/diagnostics/tests/numbers/intValuesOutOfRange.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@TestMetadata("integerLiteralWillChangeResolveInFunctionReturnPosition.kt")
|
||||||
|
public void testIntegerLiteralWillChangeResolveInFunctionReturnPosition() throws Exception {
|
||||||
|
runTest("compiler/testData/diagnostics/tests/numbers/integerLiteralWillChangeResolveInFunctionReturnPosition.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@TestMetadata("kt41679.kt")
|
@TestMetadata("kt41679.kt")
|
||||||
public void testKt41679() throws Exception {
|
public void testKt41679() throws Exception {
|
||||||
|
|||||||
-7
@@ -14,7 +14,6 @@ import org.jetbrains.kotlin.psi.KtExpression
|
|||||||
import org.jetbrains.kotlin.psi.KtProperty
|
import org.jetbrains.kotlin.psi.KtProperty
|
||||||
import org.jetbrains.kotlin.psi.KtVariableDeclaration
|
import org.jetbrains.kotlin.psi.KtVariableDeclaration
|
||||||
import org.jetbrains.kotlin.resolve.DescriptorResolver.transformAnonymousTypeIfNeeded
|
import org.jetbrains.kotlin.resolve.DescriptorResolver.transformAnonymousTypeIfNeeded
|
||||||
import org.jetbrains.kotlin.resolve.calls.checkers.NewSchemeOfIntegerOperatorResolutionChecker
|
|
||||||
import org.jetbrains.kotlin.resolve.calls.components.InferenceSession
|
import org.jetbrains.kotlin.resolve.calls.components.InferenceSession
|
||||||
import org.jetbrains.kotlin.resolve.calls.smartcasts.DataFlowInfo
|
import org.jetbrains.kotlin.resolve.calls.smartcasts.DataFlowInfo
|
||||||
import org.jetbrains.kotlin.resolve.constants.evaluate.ConstantExpressionEvaluator
|
import org.jetbrains.kotlin.resolve.constants.evaluate.ConstantExpressionEvaluator
|
||||||
@@ -128,12 +127,6 @@ class VariableTypeAndInitializerResolver(
|
|||||||
val initializer = variable.initializer
|
val initializer = variable.initializer
|
||||||
val initializerType =
|
val initializerType =
|
||||||
expressionTypingServices.safeGetType(scope, initializer!!, variableType, dataFlowInfo, inferenceSession, trace)
|
expressionTypingServices.safeGetType(scope, initializer!!, variableType, dataFlowInfo, inferenceSession, trace)
|
||||||
NewSchemeOfIntegerOperatorResolutionChecker.checkArgument(
|
|
||||||
variableType,
|
|
||||||
initializer,
|
|
||||||
trace,
|
|
||||||
constantExpressionEvaluator.module
|
|
||||||
)
|
|
||||||
val constant = constantExpressionEvaluator.evaluateExpression(initializer, trace, initializerType)
|
val constant = constantExpressionEvaluator.evaluateExpression(initializer, trace, initializerType)
|
||||||
?: return@computeInitializer null
|
?: return@computeInitializer null
|
||||||
|
|
||||||
|
|||||||
+8
-4
@@ -36,7 +36,7 @@ object NewSchemeOfIntegerOperatorResolutionChecker : CallChecker {
|
|||||||
} else {
|
} else {
|
||||||
valueParameter.type
|
valueParameter.type
|
||||||
}.unwrap().lowerIfFlexible()
|
}.unwrap().lowerIfFlexible()
|
||||||
if (!expectedType.isPrimitiveNumberOrNullableType()) {
|
if (!needToCheck(expectedType)) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
for (argument in arguments.arguments) {
|
for (argument in arguments.arguments) {
|
||||||
@@ -53,12 +53,16 @@ object NewSchemeOfIntegerOperatorResolutionChecker : CallChecker {
|
|||||||
trace: BindingTrace,
|
trace: BindingTrace,
|
||||||
moduleDescriptor: ModuleDescriptor
|
moduleDescriptor: ModuleDescriptor
|
||||||
) {
|
) {
|
||||||
val type = expectedType.lowerIfFlexible()
|
if (needToCheck(expectedType)) {
|
||||||
if (type.isPrimitiveNumberOrNullableType()) {
|
checkArgumentImpl(expectedType.lowerIfFlexible(), KtPsiUtil.deparenthesize(argument)!!, trace, moduleDescriptor)
|
||||||
checkArgumentImpl(type, KtPsiUtil.deparenthesize(argument)!!, trace, moduleDescriptor)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun needToCheck(expectedType: KotlinType): Boolean {
|
||||||
|
if (TypeUtils.noExpectedType(expectedType)) return false
|
||||||
|
return expectedType.lowerIfFlexible().isPrimitiveNumberOrNullableType()
|
||||||
|
}
|
||||||
|
|
||||||
private fun checkArgumentImpl(
|
private fun checkArgumentImpl(
|
||||||
expectedType: SimpleType,
|
expectedType: SimpleType,
|
||||||
argumentExpression: KtExpression,
|
argumentExpression: KtExpression,
|
||||||
|
|||||||
+6
-1
@@ -19,6 +19,7 @@ import org.jetbrains.kotlin.resolve.*
|
|||||||
import org.jetbrains.kotlin.resolve.calls.ArgumentTypeResolver
|
import org.jetbrains.kotlin.resolve.calls.ArgumentTypeResolver
|
||||||
import org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator
|
import org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator
|
||||||
import org.jetbrains.kotlin.resolve.calls.checkers.CallCheckerContext
|
import org.jetbrains.kotlin.resolve.calls.checkers.CallCheckerContext
|
||||||
|
import org.jetbrains.kotlin.resolve.calls.checkers.NewSchemeOfIntegerOperatorResolutionChecker
|
||||||
import org.jetbrains.kotlin.resolve.calls.commonSuperType
|
import org.jetbrains.kotlin.resolve.calls.commonSuperType
|
||||||
import org.jetbrains.kotlin.resolve.calls.components.*
|
import org.jetbrains.kotlin.resolve.calls.components.*
|
||||||
import org.jetbrains.kotlin.resolve.calls.components.candidate.CallableReferenceResolutionCandidate
|
import org.jetbrains.kotlin.resolve.calls.components.candidate.CallableReferenceResolutionCandidate
|
||||||
@@ -365,13 +366,17 @@ class ResolvedAtomCompleter(
|
|||||||
.replaceBindingTrace(topLevelTrace)
|
.replaceBindingTrace(topLevelTrace)
|
||||||
val argumentExpression = resultValueArgument.valueArgument.getArgumentExpression() ?: continue
|
val argumentExpression = resultValueArgument.valueArgument.getArgumentExpression() ?: continue
|
||||||
|
|
||||||
kotlinToResolvedCallTransformer.updateRecordedType(
|
val updatedType = kotlinToResolvedCallTransformer.updateRecordedType(
|
||||||
argumentExpression,
|
argumentExpression,
|
||||||
parameter = null,
|
parameter = null,
|
||||||
context = newContext,
|
context = newContext,
|
||||||
reportErrorForTypeMismatch = true,
|
reportErrorForTypeMismatch = true,
|
||||||
convertedArgumentType = null
|
convertedArgumentType = null
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if (updatedType != null) {
|
||||||
|
NewSchemeOfIntegerOperatorResolutionChecker.checkArgument(updatedType, argumentExpression, topLevelTrace, moduleDescriptor)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -34,6 +34,7 @@ import org.jetbrains.kotlin.resolve.BindingContext;
|
|||||||
import org.jetbrains.kotlin.resolve.BindingTrace;
|
import org.jetbrains.kotlin.resolve.BindingTrace;
|
||||||
import org.jetbrains.kotlin.resolve.DescriptorUtils;
|
import org.jetbrains.kotlin.resolve.DescriptorUtils;
|
||||||
import org.jetbrains.kotlin.resolve.calls.checkers.AdditionalTypeChecker;
|
import org.jetbrains.kotlin.resolve.calls.checkers.AdditionalTypeChecker;
|
||||||
|
import org.jetbrains.kotlin.resolve.calls.checkers.NewSchemeOfIntegerOperatorResolutionChecker;
|
||||||
import org.jetbrains.kotlin.resolve.calls.context.ResolutionContext;
|
import org.jetbrains.kotlin.resolve.calls.context.ResolutionContext;
|
||||||
import org.jetbrains.kotlin.resolve.calls.inference.BuilderInferenceSession;
|
import org.jetbrains.kotlin.resolve.calls.inference.BuilderInferenceSession;
|
||||||
import org.jetbrains.kotlin.resolve.calls.smartcasts.*;
|
import org.jetbrains.kotlin.resolve.calls.smartcasts.*;
|
||||||
@@ -447,6 +448,8 @@ public class DataFlowAnalyzer {
|
|||||||
expressionType = ((TypedCompileTimeConstant<?>) value).getType();
|
expressionType = ((TypedCompileTimeConstant<?>) value).getType();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NewSchemeOfIntegerOperatorResolutionChecker.checkArgument(context.expectedType, expression, context.trace, module);
|
||||||
|
|
||||||
return createCheckedTypeInfo(expressionType, context, expression);
|
return createCheckedTypeInfo(expressionType, context, expression);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+16
@@ -0,0 +1,16 @@
|
|||||||
|
// FIR_IDENTICAL
|
||||||
|
// WITH_STDLIB
|
||||||
|
abstract class Parser {
|
||||||
|
open fun parseString(x: String): List<Int> = null!!
|
||||||
|
|
||||||
|
fun parse(name: String): Int = null!!
|
||||||
|
fun parse(name: String, content: String): Int = null!!
|
||||||
|
}
|
||||||
|
|
||||||
|
class Some(strings: List<String>) {
|
||||||
|
val parser = object : Parser() {
|
||||||
|
override fun parseString(x: String) = listOfInt
|
||||||
|
}
|
||||||
|
private val listOfString = strings
|
||||||
|
private val listOfInt: List<Int> = listOfString.map(parser::parse)
|
||||||
|
}
|
||||||
+22
@@ -0,0 +1,22 @@
|
|||||||
|
package
|
||||||
|
|
||||||
|
public abstract class Parser {
|
||||||
|
public constructor Parser()
|
||||||
|
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 parse(/*0*/ name: kotlin.String): kotlin.Int
|
||||||
|
public final fun parse(/*0*/ name: kotlin.String, /*1*/ content: kotlin.String): kotlin.Int
|
||||||
|
public open fun parseString(/*0*/ x: kotlin.String): kotlin.collections.List<kotlin.Int>
|
||||||
|
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||||
|
}
|
||||||
|
|
||||||
|
public final class Some {
|
||||||
|
public constructor Some(/*0*/ strings: kotlin.collections.List<kotlin.String>)
|
||||||
|
private final val listOfInt: kotlin.collections.List<kotlin.Int>
|
||||||
|
private final val listOfString: kotlin.collections.List<kotlin.String>
|
||||||
|
public final val parser: Parser
|
||||||
|
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
|
||||||
|
}
|
||||||
|
|
||||||
@@ -15,7 +15,7 @@ val a10 = <!DIVISION_BY_ZERO!>1 / 0.0f<!>
|
|||||||
val a11 = <!DIVISION_BY_ZERO!>1 / 0.0<!>
|
val a11 = <!DIVISION_BY_ZERO!>1 / 0.0<!>
|
||||||
val a12 = <!DIVISION_BY_ZERO!>1L / 0<!>
|
val a12 = <!DIVISION_BY_ZERO!>1L / 0<!>
|
||||||
|
|
||||||
val b1: Byte = <!DIVISION_BY_ZERO, INTEGER_OPERATOR_RESOLVE_WILL_CHANGE, TYPE_MISMATCH!>1 / 0<!>
|
val b1: Byte = <!DIVISION_BY_ZERO, TYPE_MISMATCH!>1 / 0<!>
|
||||||
@Ann(<!ANNOTATION_ARGUMENT_MUST_BE_CONST, DIVISION_BY_ZERO!>1 / 0<!>) val b2 = 1
|
@Ann(<!ANNOTATION_ARGUMENT_MUST_BE_CONST, DIVISION_BY_ZERO!>1 / 0<!>) val b2 = 1
|
||||||
|
|
||||||
annotation class Ann(val i : Int)
|
annotation class Ann(val i : Int)
|
||||||
|
|||||||
+19
@@ -0,0 +1,19 @@
|
|||||||
|
// ISSUE: KT-55358
|
||||||
|
|
||||||
|
fun test_0() = 1 + 2
|
||||||
|
|
||||||
|
fun test_1(): Byte = <!RETURN_TYPE_MISMATCH!>1 + 2<!>
|
||||||
|
|
||||||
|
fun test_2(b: Boolean): Byte {
|
||||||
|
if (b) return <!RETURN_TYPE_MISMATCH!>1 + 2<!>
|
||||||
|
return <!RETURN_TYPE_MISMATCH!>3 + 4<!>
|
||||||
|
}
|
||||||
|
|
||||||
|
fun test_4(): Byte = run { <!ARGUMENT_TYPE_MISMATCH!>1 + 2<!> }
|
||||||
|
|
||||||
|
fun test_5() = run<Byte> { <!ARGUMENT_TYPE_MISMATCH!>1 + 2<!> }
|
||||||
|
|
||||||
|
fun test_6() = runWithByte { <!ARGUMENT_TYPE_MISMATCH, TYPE_MISMATCH!>1 + 2<!> }
|
||||||
|
|
||||||
|
fun <R> run(block: () -> R): R = block()
|
||||||
|
fun runWithByte(block: () -> Byte): Byte = block()
|
||||||
+19
@@ -0,0 +1,19 @@
|
|||||||
|
// ISSUE: KT-55358
|
||||||
|
|
||||||
|
fun test_0() = 1 + 2
|
||||||
|
|
||||||
|
fun test_1(): Byte = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
|
|
||||||
|
fun test_2(b: Boolean): Byte {
|
||||||
|
if (b) return <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
|
return <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>3 + 4<!>
|
||||||
|
}
|
||||||
|
|
||||||
|
fun test_4(): Byte = run { <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!> }
|
||||||
|
|
||||||
|
fun test_5() = run<Byte> { <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!> }
|
||||||
|
|
||||||
|
fun test_6() = runWithByte { <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE, TYPE_MISMATCH!>1 + 2<!> }
|
||||||
|
|
||||||
|
fun <R> run(block: () -> R): R = block()
|
||||||
|
fun runWithByte(block: () -> Byte): Byte = block()
|
||||||
+11
@@ -0,0 +1,11 @@
|
|||||||
|
package
|
||||||
|
|
||||||
|
public fun </*0*/ R> run(/*0*/ block: () -> R): R
|
||||||
|
public fun runWithByte(/*0*/ block: () -> kotlin.Byte): kotlin.Byte
|
||||||
|
public fun test_0(): kotlin.Int
|
||||||
|
public fun test_1(): kotlin.Byte
|
||||||
|
public fun test_2(/*0*/ b: kotlin.Boolean): kotlin.Byte
|
||||||
|
public fun test_4(): kotlin.Byte
|
||||||
|
public fun test_5(): kotlin.Byte
|
||||||
|
public fun test_6(): kotlin.Byte
|
||||||
|
|
||||||
+8
-8
@@ -10,9 +10,9 @@ val d_1: Long = 1
|
|||||||
var d_2: Long = 1
|
var d_2: Long = 1
|
||||||
|
|
||||||
val e_1: Byte = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
val e_1: Byte = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
var e_2: Byte = 1 + 2
|
var e_2: Byte = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
val f_1: Short = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
val f_1: Short = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
var f_2: Short = 1 + 2
|
var f_2: Short = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
val g_1: Int = 1 + 2
|
val g_1: Int = 1 + 2
|
||||||
var g_2: Int = 1 + 2
|
var g_2: Int = 1 + 2
|
||||||
val h_1: Long = 1 + 2
|
val h_1: Long = 1 + 2
|
||||||
@@ -28,10 +28,10 @@ fun local() {
|
|||||||
val d_1: Long = 1
|
val d_1: Long = 1
|
||||||
var d_2: Long = 1
|
var d_2: Long = 1
|
||||||
|
|
||||||
val e_1: Byte = 1 + 2
|
val e_1: Byte = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
var e_2: Byte = 1 + 2
|
var e_2: Byte = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
val f_1: Short = 1 + 2
|
val f_1: Short = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
var f_2: Short = 1 + 2
|
var f_2: Short = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
val g_1: Int = 1 + 2
|
val g_1: Int = 1 + 2
|
||||||
var g_2: Int = 1 + 2
|
var g_2: Int = 1 + 2
|
||||||
val h_1: Long = 1 + 2
|
val h_1: Long = 1 + 2
|
||||||
@@ -49,9 +49,9 @@ class Member {
|
|||||||
var d_2: Long = 1
|
var d_2: Long = 1
|
||||||
|
|
||||||
val e_1: Byte = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
val e_1: Byte = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
var e_2: Byte = 1 + 2
|
var e_2: Byte = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
val f_1: Short = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
val f_1: Short = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
var f_2: Short = 1 + 2
|
var f_2: Short = <!INTEGER_OPERATOR_RESOLVE_WILL_CHANGE!>1 + 2<!>
|
||||||
val g_1: Int = 1 + 2
|
val g_1: Int = 1 + 2
|
||||||
var g_2: Int = 1 + 2
|
var g_2: Int = 1 + 2
|
||||||
val h_1: Long = 1 + 2
|
val h_1: Long = 1 + 2
|
||||||
|
|||||||
Generated
+12
@@ -2994,6 +2994,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest {
|
|||||||
runTest("compiler/testData/diagnostics/tests/callableReference/referenceAdaptationCompatibility.kt");
|
runTest("compiler/testData/diagnostics/tests/callableReference/referenceAdaptationCompatibility.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@TestMetadata("referenceInCycleInProperties.kt")
|
||||||
|
public void testReferenceInCycleInProperties() throws Exception {
|
||||||
|
runTest("compiler/testData/diagnostics/tests/callableReference/referenceInCycleInProperties.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@TestMetadata("referenceToCompanionObjectMemberViaClassName.kt")
|
@TestMetadata("referenceToCompanionObjectMemberViaClassName.kt")
|
||||||
public void testReferenceToCompanionObjectMemberViaClassName() throws Exception {
|
public void testReferenceToCompanionObjectMemberViaClassName() throws Exception {
|
||||||
@@ -22266,6 +22272,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest {
|
|||||||
runTest("compiler/testData/diagnostics/tests/numbers/intValuesOutOfRange.kt");
|
runTest("compiler/testData/diagnostics/tests/numbers/intValuesOutOfRange.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@TestMetadata("integerLiteralWillChangeResolveInFunctionReturnPosition.kt")
|
||||||
|
public void testIntegerLiteralWillChangeResolveInFunctionReturnPosition() throws Exception {
|
||||||
|
runTest("compiler/testData/diagnostics/tests/numbers/integerLiteralWillChangeResolveInFunctionReturnPosition.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@TestMetadata("kt41679.kt")
|
@TestMetadata("kt41679.kt")
|
||||||
public void testKt41679() throws Exception {
|
public void testKt41679() throws Exception {
|
||||||
|
|||||||
Reference in New Issue
Block a user