Denis.Zharkov
5690a9f21b
FIR: Fix overridability of Kotlin vararg from Java
2021-10-26 18:45:59 +03:00
Denis.Zharkov
4b1ce6c1a7
FIR: Fix safe call receiver nullability after null check
2021-10-26 18:45:59 +03:00
Denis.Zharkov
0bdea4f20a
FIR: Do not create incorrect synthetic property
2021-10-26 18:45:59 +03:00
Denis.Zharkov
52c2908bb7
FIR: Fix another inconsistency with FE1.0 in synthetic properties resolution
2021-10-26 18:45:59 +03:00
Denis.Zharkov
16e8e0e58b
FIR: Add test on raw type scope
...
^KT-49351 Related
2021-10-26 18:45:58 +03:00
Denis.Zharkov
507422d3d8
FIR: Fix bare type case with flexible supertypes
2021-10-26 18:45:58 +03:00
Denis.Zharkov
94129dce2e
FIR: Add a test with current behavior on upper bounds with raw types
...
^KT-49345 Related
2021-10-26 18:45:58 +03:00
Roman Golyshev
8e911b1e98
[FIR IDE] Add fast path to isImplicitFunctionCall and improve its kdoc
2021-10-26 16:48:00 +03:00
Jinseong Jeon
d8df177b83
FIR LC: fix return type of suspend function
2021-10-26 14:12:29 +02:00
Jinseong Jeon
5ed9cac0cc
FIR LC: populate continuation parameter for suspend function
2021-10-26 14:12:28 +02:00
Mikhail Glukhikh
1fe7a1ebb3
Add FIR test for KT-35565
2021-10-26 13:38:35 +03:00
Tianyu Geng
e195f0426e
FIR IDE: add KtExtensionReceiverSymbol
...
This symbol represents the extension receiver of a callable and
currently is used as the resolution target of `this` in a callable with
extension.
2021-10-26 08:50:38 +00:00
Tianyu Geng
d3c91ee9be
FIR IDE: align resolution behavior of super with FE1.0
...
That is, for a labeled `super`, the keyword should resolve to the super
type and the label should be resolved to the current type.
2021-10-26 08:50:37 +00:00
Tianyu Geng
0d966ec65a
FIR IDE: resolve implicit invoke to callable property
2021-10-26 08:50:37 +00:00
Tianyu Geng
6a59dc7fa5
FIR: add bfs helper and use it
...
It's also used in Kotlin quickfixes in intellij repo
2021-10-26 00:42:09 +02:00
Ilya Kirillov
a11cd74b28
Revert "FIR: add bfs helper and use it"
...
This reverts commit dbb0496d23 .
2021-10-26 00:37:31 +02:00
Tianyu Geng
dbb0496d23
FIR: add bfs helper and use it
...
It's also used in Kotlin quickfixes in intellij repo
2021-10-26 00:06:00 +02:00
Roman Golyshev
3148913e60
Fix test data
...
It is a follow-up commit for 9b3add0130 ,
where `CorrespondingProperty` property was added
2021-10-25 21:15:37 +03:00
Jinseong Jeon
9524825662
FIR LC: approximate local type only if it's necessary and out of scope
2021-10-25 20:24:48 +03:00
Jinseong Jeon
9ed2c9d371
FIR LC: add tests about type approximation in PsiType provider
2021-10-25 20:24:48 +03:00
Tianyu Geng
7fb82232cd
FIR IDE: use correspondingProperty in ref shortener
2021-10-25 18:16:32 +03:00
Tianyu Geng
112f365414
FIR IDE: fix ref shortener on property in primary constructor
...
Currently the shortener ignores the created FirProperty, as a result,
any annotations declared on the getter or setter are ignored. The test
is added in Intellij repo.
2021-10-25 18:16:31 +03:00
Tianyu Geng
363b25504d
FIR checker: report REDUNDANT_LABEL_WARNING
...
Since many labels are not present in the FIR tree, this checker is
implemented as a syntax checker. Comparing with FE1.0, this change
reports some REDUNDANT_LABEL_WARNING that FE1.0 has missed, especially
LHS of assignments.
2021-10-25 13:51:01 +03:00
Ivan Kylchik
225b064470
Implement new 'mix' test mode
...
This mode must be used when one configuration will run several tests
for different JUnit versions.
2021-10-25 00:14:20 +03:00
Tianyu Geng
8bec5cec61
FIR LL: fix KtDeclarationAndFirDeclarationEqualityChecker
...
1. Nullable function type is not rendered correctly.
2. Bounds of type parameters are not considered during comparison, this
would incorrectly treat different declarations as the same, for
example
```
fun <C: List<String>> C.foo() {}
fun <C: Set<String>> C.foo() {}
```
2021-10-23 15:33:32 +02:00
Tianyu Geng
5a1680ca3b
FIR LL: fix resolving proerties in library
...
Property can be overloaded with different extension receiver type.
2021-10-23 15:33:31 +02:00
Mikhail Glukhikh
79b98f9173
FIR: introduce synthetic property symbol hierarchy
2021-10-23 01:19:07 +03:00
Mikhail Glukhikh
c673c4cc91
FIR: refactor/use properly FirAccessorSymbol & FirSyntheticPropertySymbol
2021-10-23 01:19:06 +03:00
Mikhail Glukhikh
7b9ac4c5f7
FIR: create constructors copies with correct containers in JvmMappedScope
...
#KT-49133 Fixed
2021-10-23 01:17:10 +03:00
Dmitriy Novozhilov
a2b8493f47
[FE 1.0] Prohibit using non exhaustive if and when in rhs of elvis expression
...
^KT-44705
^KT-49349 Fixed
2021-10-21 19:39:51 +03:00
Dmitriy Novozhilov
06a26a5a74
[FE 1.0/FIR] Fix message of SEALED_SUPERTYPE_IN_LOCAL_CLASS diagnostic
...
^KT-46285 Fixed
2021-10-21 19:39:49 +03:00
Dmitriy Novozhilov
94664694df
[FIR] Prohibit confusing syntax inside when branches
...
^KT-48385
2021-10-21 19:39:46 +03:00
Dmitriy Novozhilov
1513e739c6
[FE 1.0] Prohibit confusing syntax inside when branches
...
^KT-48385 Fixed
2021-10-21 19:39:36 +03:00
Tianyu Geng
c262f17d75
FIR checker: report violations related to API mode
2021-10-21 00:01:14 +03:00
Denis.Zharkov
4ad5f01324
FIR: Support overrides of generic-typed members with raw-typed ones
...
^KT-49070 Fixed
2021-10-20 22:05:25 +03:00
Denis.Zharkov
a0a57581ec
FIR: Do not add alias for variables with explicit type
2021-10-20 22:05:24 +03:00
Denis.Zharkov
fba44759c0
FIR: Refine visibility check for class members
2021-10-20 22:05:23 +03:00
Denis.Zharkov
f441024fd4
FIR: Derive FirMemberDeclaration from FirAnnotatedDeclaration
...
It's necessary to have the sane logic that FirMemberDeclaration is a subtype of FirDeclaration
The only kind of controversial change here is making FirAnonymousObject
also be FirMemberDeclaration, thus having its own declaration status
2021-10-20 22:05:20 +03:00
Tianyu Geng
603655d63f
FIR IDE: add option to render type without type args
...
This is useful for rendering type annotation for `super`, which does
not require type arguments.
2021-10-20 19:16:49 +02:00
Tianyu Geng
bdc71a3281
FIR IDE: pass candidate super types for AMBIGUOUS_SUPER
...
This way the IDE quickfix do not need to do resolution again to figure
out what super type to offer in the quickfix.
2021-10-20 19:16:48 +02:00
Yan Zhulanow
7c3706dd3f
[FIR IDE] Disable dependent analysis session tests for FE10 implementation
2021-10-20 19:41:30 +03:00
Yan Zhulanow
b7044803d2
[FIR IDE] Move out-of-block modification trigger to FrontendApiTestConfiguratorService
2021-10-20 19:41:29 +03:00
Yan Zhulanow
2894f87541
[FIR IDE] Move test configurators as constructor parameters
2021-10-20 19:41:29 +03:00
Yan Zhulanow
8f39640237
[FIR IDE] Move test file analysis in FE10 Analysis API implementation to FrontendApiTestConfiguratorService
2021-10-20 19:41:28 +03:00
Yan Zhulanow
a1280ed723
[FIR IDE] Move testPrefix to FrontendApiTestConfiguratorService
2021-10-20 19:41:27 +03:00
Yan Zhulanow
e12c7d1292
[FIR IDE] Extract Fe10AnalysisFacade from KtFe10AnalysisSession
2021-10-20 19:41:26 +03:00
Yan Zhulanow
e06a75c197
[FIR IDE] Add separate test data for descriptor-based Analysis API implementation
2021-10-20 19:41:26 +03:00
Yan Zhulanow
1272c6aa33
[FIR IDE] Update Analysis API test data, untie it from the FIR implementation
2021-10-20 19:41:25 +03:00
Yan Zhulanow
516dd825c2
[FIR IDE] Initial descriptor-based implementation of the Analysis API
2021-10-20 19:41:24 +03:00
Yan Zhulanow
e2c9be0932
[FIR IDE] Extract common components of the Analysis API to separate modules
2021-10-20 19:41:23 +03:00