Alexander Korepanov
9d352694af
[JS IR Tests] FIR invalidation tests re-generation
2023-03-08 19:08:42 +01:00
Alexander Korepanov
f82d3e63a2
[JS IR] Use a backing field initializer for js() code folding
...
During a translation of the code from js() call to statement list,
the compiler folds the code string. For that it uses property bodies.
However the bodies can not be loaded in an incremental rebuild.
The patch uses the backing field initializers of constant properties.
The initializers are always loaded.
^KT-57002 Fixed
2023-03-08 16:56:05 +00:00
Yan Zhulanow
c91ef606f7
[LL API] Treat built-ins as a part of the standard library
...
Normally, compiled declaration searcher should look up declarations
only inside the session declarations. However, built-ins are treated
as a separate dependency, so '...WithoutDependencies()' functions
return only a part of declarations for the Kotlin standard library.
This commit effectively reverts changes in the previous change
(07fdbeca19 ).
This commit fixes the rest of failing compiletion tests:
- HighLevelJvmBasicCompletionTestGenerated
- HighLevelMultiFileJvmBasicCompletionTestGenerated
2023-03-08 16:28:13 +00:00
Kirill Rakhman
81f858a3c4
[FIR] Require not-null source in buildImplicitTypeRef
...
KT-56906
2023-03-08 16:20:26 +00:00
Kirill Rakhman
04d57eb2f9
[FIR] Use cached instance of FirImplicitTypeRefImpl
...
^KT-56906 Fixed
2023-03-08 16:20:25 +00:00
Alexander Udalov
f91e1fa7fd
Psi2Ir: make most declarations internal, remove unused
...
The main motivation is to avoid pollution in autocompletion in IDE, and
avoid clashes for some common names.
A lot of stuff was declared public seemingly by accident. It is only
used, and can only be meaningfully used, from within the psi2ir module.
2023-03-08 14:38:39 +00:00
Alexander Korepanov
bd3eb81aee
[JS FIR] Use FIR in JS IR invalidation tests
...
Related to KT-56740
2023-03-08 13:18:15 +00:00
vladislav.grechko
17e6099b53
Initialize 'source' property of FirCatch objects properly
...
^KT-56923: Fixed
^KT-56755: Fixed
2023-03-08 12:03:35 +00:00
Kirill Rakhman
83845fbab5
[FIR] Only add non-subsumed to overridden of intersection override
...
If an intersection override overrides members A.x, B.x and C.x and
B <: A, then A.x is subsumed by B.x, and we don't add it to the list of
overridden members. This fixes a false-positive MANY_IMPL_MEMBER_NOT_
IMPLEMENTED where an implementation is subsumed by an abstract override.
^KT-57092 Fixed
2023-03-08 11:01:56 +00:00
Kirill Rakhman
6afb1b7363
[FIR] Fix grammar in MANY_IMPL_MEMBER_NOT_IMPLEMENTED message
2023-03-08 11:01:56 +00:00
Ilya Chernikov
54218eb77d
FIR LT: fix column calculation with crlf line endings
...
#KT-57117 fixed
also:
- refactor the position finder (mostly for testability)
- add testing of position finder to the testLightTreeReadLineEndings
- refactor the test for readability
- add mixed line ending scenario
2023-03-08 10:18:05 +00:00
Ilya Chernikov
feca40071d
K2, MPP: Fix parent lookup in mangler in MPP scenario
...
fixes compilation of the ListTest.kt in stdlib tests
#KT-57131 fixed
(bootstrap required to see the effect!)
2023-03-08 09:38:48 +00:00
Ilya Chernikov
1d72681e4e
K2: Fix stdlib test use of assertEquals
...
fixes test compilation according to the workaround
described in #KT-56717
2023-03-08 09:38:48 +00:00
Ilya Chernikov
8a8b204e11
K2, stdlib tests: make unsigned conversions explicit
...
Allow using K2 to compile stdlib tests
related to #KT-56379
2023-03-08 09:38:47 +00:00
Ilya Chernikov
edcde79c02
Build: use K2 for stdlib tests when enabled
...
enables testing of #KT-56379
2023-03-08 09:38:47 +00:00
Kirill Rakhman
c4255cdb0f
[FIR2IR] Fix adapted callable reference to nested class constructor
...
^KT-56829 Fixed
2023-03-08 08:36:52 +00:00
Kirill Rakhman
e0baeb53db
[FIR] Fix substituted synthetic property with overridden getter only
...
When building the original for a substitution override for a synthetic
property, use the initial setter as fallback when unsubstituting it
returns null. This can happen when a generic class overrides the getter
of a synthetic property of a non-generic class. Then the setter is never
substituted, therefore there is nothing to unsubstitute.
^KT-57168 Fixed
2023-03-08 08:35:02 +00:00
Ilya Chernikov
b3d0a0a1c8
FIR LT: support labelled destructured declarations
...
add missing conversion in the LT to FIR converter
#KT-56759 fixed
2023-03-08 07:28:35 +00:00
Igor Chevdar
7f0a4ad737
[K/N][IR] Reworked saving inline function bodies for cross-file inlining
...
#KT-57053 Fixed
#KT-57029 Fixed
2023-03-08 06:48:52 +00:00
Igor Chevdar
315d9089b0
[box-tests] Another version of reproducer for KT-56965
2023-03-08 06:48:52 +00:00
Igor Chevdar
99ec3215d9
[box-tests] Added a reproducer for KT-57053
2023-03-08 06:48:51 +00:00
Evgeniy.Zhelenskiy
88f293d4a9
[IR] Support reflection for MFVC
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2023-03-07 21:44:43 +00:00
Evgeniy.Zhelenskiy
1ff4906880
[IR] Fix NVargs Function lowering when working with MFVC
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2023-03-07 21:44:42 +00:00
Evgeniy.Zhelenskiy
394cd944b6
[IR] Add MFVC representation during serialization of FIR to IR
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2023-03-07 21:44:41 +00:00
Evgeniy.Zhelenskiy
5b868becf4
[IR] Hide regular class constructor with MFVC parameters
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2023-03-07 21:44:41 +00:00
Evgeniy.Zhelenskiy
d358e63b0a
[IR] Rename InlineClassAwareCaller.kt to ValueClassAwareCaller.kt
...
Signed-off-by: Evgeniy.Zhelenskiy <Evgeniy.Zhelenskiy@jetbrains.com >
#KT-1179
2023-03-07 21:44:40 +00:00
Nikolay Lunyak
07fa86f6bc
[FIR] KT-57085: Ignore the diagnostic case in @Suppress()
...
^KT-57085 Fixed
2023-03-07 20:28:02 +00:00
Ilya Gorbunov
3b97bfb426
Extract kotlinLanguageVersion to gradle.properties
...
Read it when building docs in order to keep
docs version filter/language analyzer version in sync with
the language version used to compile libraries.
2023-03-07 17:55:23 +00:00
Ilya Gorbunov
28ae0c1649
docs build: allow to specify custom dokka repository
...
- centralize repository management in settings.gradle.kts
- allow to specify dokka repository with a gradle property
- automatically add mavenLocal for -local dokka versions
- specify kotlin version for building plugins in one place
2023-03-07 17:55:23 +00:00
Ilya Gorbunov
93650dcada
docs build: move parameter initialization to the parent project
...
in order to avoid evaluationDependsOn dependency
2023-03-07 17:55:23 +00:00
Ilya Gorbunov
e627356aea
docs: cleanup remaining previous version specializations
2023-03-07 17:55:22 +00:00
Pavel Mikhailovskii
9db5ea66a6
KT-57103 Don't inline references to generic synthetic Java properties in K1
2023-03-07 17:35:04 +00:00
Yahor Berdnikau
5ddd60a015
Add '-progressive' option into Gradle compiler options DSL
...
^KT-53923 Fixed
2023-03-07 17:32:20 +00:00
Alexander.Likhachev
8bb0c5135b
[IC] Add unit tests for InMemoryStorageWrapper
...
#KT-56052 Fixed
2023-03-07 16:19:25 +00:00
Alexander.Likhachev
4aedf77431
[IC] Avoid many collection allocations in InMemoryStorageWrapper
...
#KT-56052 In Progress
2023-03-07 16:19:25 +00:00
Alexander.Likhachev
cc16ca2bf8
[IC] Add synchronization to all the DefaultInMemoryStorageWrapper public methods
...
#KT-56052 In Progress
2023-03-07 16:19:25 +00:00
Alexander.Likhachev
99830d7f28
[IC] Segregate LazyStorage into LazyStorage and AppendableLazyStorage
...
#KT-56052 In Progress
2023-03-07 16:19:24 +00:00
Alexander.Likhachev
cef557c407
[IC] Notify user about enabled IC backup optimizations
...
KT-52625, KT-55995, KT-56052 Related
2023-03-07 16:19:24 +00:00
Alexander.Likhachev
4d080c1a82
[IC] Register last-build.bin file in a transaction
...
KT-55995 Related
2023-03-07 16:19:24 +00:00
Alexander.Likhachev
ae75736864
[Gradle] Enable in-memory wrappers for the precise outputs backup tests
...
#KT-56052 In Progress
2023-03-07 16:19:23 +00:00
Alexander.Likhachev
ca8d0bd100
[IC] Add unit tests for resetting in-memory caches wrappers in a transaction
...
#KT-56052 In Progress
2023-03-07 16:19:23 +00:00
Alexander.Likhachev
04a5c7761c
[IC] Add unit tests for CachesManager closing in transaction
...
#KT-56052 In Progress
2023-03-07 16:19:23 +00:00
Alexander.Likhachev
2bff38dd27
[IC] Fix transaction wasn't marked as unsuccessful on execution exception
...
#KT-56052 In Progress
2023-03-07 16:19:22 +00:00
Alexander.Likhachev
8825cf7bf6
[IC] Fix RecoverableCompilationTransaction wasn't throwing an exception properly
...
#KT-56052 In Progress
2023-03-07 16:19:22 +00:00
Alexander.Likhachev
83ea1ca3cf
[IC] Let CompilationTransaction to reset in-memory changes in IC caches
...
#KT-56052 In Progress
2023-03-07 16:19:22 +00:00
Alexander.Likhachev
493da2a8b4
[IC] Rename DummyCompilationTransaction -> NonRecoverableCompilationTransaction
2023-03-07 16:19:21 +00:00
Alexander.Likhachev
25a3dcf3d1
[IC] Make CompilationTransaction to be able to close CachesManager
2023-03-07 16:19:21 +00:00
Alexander.Likhachev
3ed651a7a6
[Gradle] Add a property to control if the IC caches in-memory wrapper is enabled
...
#KT-56052 In Progress
2023-03-07 16:19:20 +00:00
Alexander.Likhachev
e7e5a3488b
[IC] Introduce a wrapper for IC caches storage to keep changes in-memory
...
#KT-56052 In Progress
2023-03-07 16:19:20 +00:00
Vladimir Sukharev
8dc6ae41f6
Exclude 3 KonanDriverTest testcases from K2 testing due to KT-56855
...
Merge-request: KT-MR-9114
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2023-03-07 14:05:12 +00:00