Fix array access expression getKtType() bug
For an array access expression e.g., `foo[3]`, KtFirExpressionTypeProvider first tries `getReturnTypeForArrayStyleAssignmentTarget(..)` method that determines the type of the array access expression when it is in the form of "set" the value. However, the method also returns a non-null result for an array access expression that reads its value i.e., "get". In this case, the result of `getKtType()` becomes wrong. This commit lets the method return a null for the type of "get" array access expression.
This commit is contained in:
committed by
Nikolay Krasko
parent
b173b1fe24
commit
50c293f83f
+6
@@ -258,5 +258,11 @@ public class FirStandaloneNormalAnalysisSourceModuleHLExpressionTypeTestGenerate
|
||||
public void testArrayCompoundAssignementTarget() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/assignment/arrayCompoundAssignementTarget.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("readArrayElement.kt")
|
||||
public void testReadArrayElement() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/expressionTypeProvider/expressionType/assignment/readArrayElement.kt");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user