Commit Graph

326 Commits

Author SHA1 Message Date
Roman Golyshev 3485d65213 [K2] Ignore failing tests for isUsedAsExpression
Those tests do not pass at the moment because of KTIJ-23143
2022-10-05 15:06:52 +00:00
Kristoffer Andersen f765457e51 [K2] isUsedAsExpression analysis 2022-10-05 15:06:52 +00:00
Ilya Kirillov 49f2f85927 [Low Level FIR] fix exception when creating symbol by invalid code 2022-10-04 12:56:07 +00:00
Ilya Kirillov 81c52e6886 [Analysis API FIR] fix call resolution on error elements 2022-10-03 16:02:23 +02:00
Ilya Kirillov ab3f916f3f [Analysis API FIR] fix call resolution of non-resolvable elements 2022-10-03 16:02:23 +02:00
Jinseong Jeon 2fdedf8251 AA FIR: unwrap fake override constructor 2022-10-02 13:39:49 +02:00
Ilya Kirillov 4ae1cb74dd [Analysis API FIR] fix constant evaluation for incomplete call when compiler produces IntegerLiteralType
^KTIJ-21531 fixed
2022-09-30 12:19:51 +02:00
Jinseong Jeon dd7fc7f4ae AA FIR: avoid unsafe argument retrieval during const evaluation 2022-09-18 17:22:02 +02:00
Jinseong Jeon efb867b46c AA: do not create symbol pointers for (intersection|substitution) overridden members 2022-09-17 16:43:12 +02:00
Jinseong Jeon e50da634bc AA: add tests for resolution to built-ins 2022-09-17 16:43:12 +02:00
Dmitriy Novozhilov a88fdd5eb7 [AA LC] Implement default values for methods of annotations 2022-09-15 17:27:21 +03:00
Dmitriy Novozhilov d60f3980b1 [AA LC] Correctly determine override status for accessor methods 2022-09-15 17:27:20 +03:00
Jinseong Jeon 1464f33c5d AA FIR: error annotation value for erroneous argument in class reference 2022-09-15 12:36:31 +02:00
Ilya Kirillov 7d47651353 [Analysis API] rename KtAnnotationsList.containsAnnotation -> hasAnnotation 2022-09-15 12:12:40 +02:00
Ilya Kirillov 1bdde25dc7 [Analysis API] improve getClassOrObjectSymbolByClassId/getTopLevelCallableSymbols
add kdocs, use better names
2022-09-15 12:12:40 +02:00
Jinseong Jeon 836b6dae9f AA FIR: constant evaluation for String 2022-09-14 12:52:08 +02:00
Jinseong Jeon 68519af97a AA: add tests about platform types
...as declaration return type or expression type
2022-09-09 15:02:23 +02:00
Roman Golyshev bb2bee74cf [HL API] Fix FE10 implementation of KtExpressionTypeProvider 2022-09-01 13:57:03 +00:00
Ilya Gorbunov 6aff3c6d07 Update misc test data after introducing rangeUntil member #KT-52933 2022-08-24 22:22:54 +00:00
Nikita Bobko 2a4f3f41aa 2/5 Replace source dependency on kotlin-reflect with binary dependency
Review: https://jetbrains.team/p/kt/reviews/6753

Meaningful semantic change was splitted into 5 commits to simplify the
change review. Sinle commit would be too big.

Why replace source to binary: to get rid of kotlin-reflect in Kotlin
plugin artifact KTIJ-22276

Note: Kotlin Maven artifacts (./gradlew publish) changed their
dependency on kotlin-reflect
2022-08-22 15:43:49 +02:00
Nikita Bobko 0874fb71c6 Replace all kotlin-reflect-api dependencies with kotlin-reflect
Review: https://jetbrains.team/p/kt/reviews/6753

Why: I'm going to replace source dependency on kotlin-reflect with
binary dependency. Normalize reflect dependency before global
processing.
2022-08-22 15:43:11 +02:00
Nikita Bobko 70ed76e0bd Drop unused ':dist' dependency in some tests
Review: https://jetbrains.team/p/kt/reviews/6753

This commit doesn't fix any issue except for "cleanup". If you find a
mistake in this commit feel free to revert part of it/the whole commit

I checked every module where I drop ':dist' dependency. Tests still pass
in those modules
2022-08-22 15:42:34 +02:00
Jinseong Jeon 79686ba242 AA FE1.0: don't return psi for fake overrides 2022-08-20 00:50:10 +02:00
Jinseong Jeon 25f7554a31 AA FIR: constant evaluation for Java field 2022-08-20 00:50:09 +02:00
Jinseong Jeon 2a864b3685 AA: add tests for PsiDeclarationAndKtSymbolEqualityChecker 2022-08-17 19:16:17 +02:00
Jinseong Jeon 846ab7d97b AA: revamp standalone-mode tests 2022-08-17 19:16:17 +02:00
Simon Ogorodnik 513af2dfbc FIR. Refactor smart-cast representation in FIR tree
Make smart-casts non-transparent expression without delegation
to underlying FirQualifiedAccessExpression, as children delegation in
fir tree has unclear semantics
Remove two different kinds of tree nodes for smart-casts
2022-08-15 21:46:11 +00:00
Dmitry Gridin c9e9ee90a3 [analysis] remove redundant OptIn annotations 2022-08-15 11:04:59 +02:00
Dmitry Gridin 8dbdea39da [analysis] remove redundant diagnostic suppression 2022-08-15 11:04:58 +02:00
Ilya Kirillov f45f1ba3dc [Analysis API] do not create multiple attachments inside exceptions 2022-08-10 22:49:14 +02:00
Ilya Kirillov f39f1da70d [Analysis API FE10] fix suspend function type mapping 2022-08-10 22:49:12 +02:00
Ilya Kirillov 4d5f1dc1bb [FIR] do not fail when Continuation classes not found in classpath 2022-08-10 22:49:12 +02:00
Ilya Kirillov ebc68dc54c [Analysis API] actualize testdata 2022-08-10 20:37:15 +02:00
Jaebaek Seo 50c293f83f 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.
2022-08-10 17:34:49 +02:00
Jinseong Jeon 56a5d883c0 AA FIR: handle (aliased)? annotation w/ vararg parameter 2022-08-10 17:34:48 +02:00
Roman Golyshev bcd6a54ffb [Analysis API FIR] Fix small mistake in KDocReferenceResolver
`owner` is a PSI element, it can never be an instance of
`KtConstructorSymbol`

Also, make `MutableCollection` an extension receiver instead of context
receiver for the consistency
2022-07-29 17:13:52 +02:00
Ilya Kirillov 556add72ff [Analysis API FIR] fix KDoc reference resolve for aliased imports 2022-07-28 01:37:54 +02:00
Ilya Kirillov d9c4fda521 [Analysis API FIR] implement reference resolve inside KDoc
^KTIJ-22324 fixed
2022-07-28 01:37:53 +02:00
Ilya Kirillov 76f1744868 [Analysis API FIR] add more info to some exceptions 2022-07-23 19:54:47 +02:00
Ilya Kirillov 18b6a8b6a1 [Analysis API] make KtFunctionLikeSymbol to be sealed class 2022-07-22 00:59:00 +02:00
Ilya Kirillov b55f36f0fd [Analysis API] introduce some basic API to create KtSymbol by Java PSI
^KT-50240
2022-07-22 00:58:59 +02:00
Ilya Kirillov a0f0fa5a47 [Analysis API FIR] fix candidate collection for delegatedConstructor call
^KTIJ-20446
2022-07-22 00:58:59 +02:00
Ilya Kirillov dd00062559 [analysis] introduce KtBuiltinsModule and remove hacks related to the stdlib module search 2022-07-19 17:17:33 +02:00
Mikhail Glukhikh 76d5d3a2ec Extract separate FirModifierRenderer 2022-07-14 09:38:39 +00:00
Bart van Helvert 21f65b2fe3 KTIJ-22157 Make KtCallError attachment name static 2022-07-07 16:36:04 +00:00
Bart van Helvert 0c50072436 KTIJ-22157 Don't leak user code in unresolved call exception 2022-07-07 16:36:03 +00:00
Ilya Kirillov 3e6de190e7 [Analysis API] update testdata after adding isNoinline/isCrossinline to the KtValueParameterSymbol 2022-07-05 10:34:29 +02:00
Ilya Kirillov 184478858c [Analysis API] add isNoinline/isCrossinline to the KtValueParameterSymbol 2022-07-05 10:34:29 +02:00
Ilya Kirillov 6a145b52aa [Analysis API] update testdata after adding context receivers 2022-07-05 10:34:28 +02:00
Ilya Kirillov 8f89f1b368 [Analysis API] add info about context receivers to the Analysis API 2022-07-05 10:34:28 +02:00