Vladimir Sukharev
70ea0de2db
[FIR] Fix some disappeared AMBIGUOUS_ANONYMOUS_TYPE_INFERRED
...
^KT-59932
Merge-request: KT-MR-12312
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2023-09-22 07:47:12 +00:00
Dmitriy Dolovov
fa34021a04
[Native][tests] Fix KLIB contents tests
2023-09-22 05:56:22 +00:00
Brian Norman
e6669b51d4
[FIR] Check standalone companion object qualifiers are visible
2023-09-21 22:33:50 +00:00
Mikhail Glukhikh
2603077db9
Move independent pre-release tests to K2 group to avoid duplication
...
Without this commit these tests are run twice without any reason for it.
Related to KT-62058
2023-09-21 20:09:25 +00:00
Mikhail Glukhikh
156097fe17
Restore KotlinCompilerVersion.IS_PRE_RELEASE
...
This commit is a slightly modified revert of 4f29c113 .
IS_PRE_RELEASE allows to make LATEST_STABLE version behave as
experimental when this flag is set to true.
The general goal is to prepare fix of KT-62058; after this commit
one can do it by changing IS_PRE_RELEASE flag to true.
The fix of KT-62058 is planned to be done during bootstrapping.
This preparation and the future fix are parts of umbrella KT-61951.
2023-09-21 20:09:25 +00:00
Dmitrii Gridin
850201a65c
[LL FIR] LLFirContractsLazyResolver: avoid transformation for primary constructors
...
Primary constructors can't have any contracts.
This change also should improve memory consumption because we will
less frequently calculate bodies.
^KT-55750
2023-09-21 20:08:32 +00:00
Dmitrii Gridin
d5047bfa90
[LL FIR] LLFirContractsLazyResolver: process synthetic properties correctly
...
FirContractResolveTransformer under the hood calls
```
if (property is FirSyntheticProperty) {
transformSimpleFunction(property.getter.delegate, data)
}
```,
so this leads to unsafe transformation of the original function
^KT-55750
2023-09-21 20:08:32 +00:00
Dmitrii Gridin
2962482d75
[LL FIR] LLFirContractsLazyResolver: avoid transformation for delegated properties
...
Delegated properties can't have any contracts.
This change also should improve memory consumption because we will
less frequently calculate bodies.
^KT-55750
2023-09-21 20:08:31 +00:00
Dmitrii Gridin
3e9e66493f
[LL FIR] LLFirContractsLazyResolver: avoid transformation for functions with implicit type
...
Legacy (current) contracts can exist only on functions with bodies.
This change also should improve memory consumption because we will
less frequently calculate bodies.
^KT-55750
2023-09-21 20:08:31 +00:00
Dmitrii Gridin
3c865bdddd
[LL FIR] add lazy resolve tests on function with raw contract and implicit type
...
^KT-56551
2023-09-21 20:08:31 +00:00
Dmitrii Gridin
c0b147e31c
[LL FIR] LLFirContractsLazyResolver: drop redundant branch for property accessor
...
FirPropertyAccessor is not supposed to be processed separately from property
^KT-55750
2023-09-21 20:08:31 +00:00
Dmitrii Gridin
a128cbc97a
[LL FIR] skip implicit type resolution for declarations without implicit type
...
This also fixes non-resolved contract calls in the case
of wrong contract description.
And we can avoid body calculation.
^KT-56551
2023-09-21 20:08:31 +00:00
Alexander.Likhachev
7ab8239c6e
[Gradle] Add :compiler:ir.serialization.common to KGPs compiler dependencies
...
This module isn't used by KGP itself, but we will bundle it for some time until kotlinx-benchmark is reworked
#KT-62016 Fixed
2023-09-21 15:23:01 +00:00
Mikhail Glukhikh
488049174c
FP tests: take 'skipPrereleaseCheck' from module configuration
...
Before this commit we skipped this check for every module,
but now we skip it only if we need it
2023-09-21 15:01:21 +00:00
Ilya Goncharov
df95a8ed6e
[Gradle, Wasm] Add run task for wasi
...
^KT-61973 fixed
2023-09-21 14:43:46 +00:00
Hung Nguyen
0d04b8783c
[IC] Handle custom source set located outside project directory
...
To support build cache relocatability, we need to convert absolute paths
into relative paths before storing them in IC caches.
Before this commit, we computed relative paths based on the (root)
project directory and FAIL if some source files are located outside the
project directory.
With this commit, we will NOT FAIL in that case. This means relative
paths may start with "../". It's not "clean", but it can work.
Test: New test in BuildCacheRelocationIT
^KT-61852 Fixed
2023-09-21 14:39:52 +00:00
Kirill Rakhman
ff812197a8
[Test] Update test data after changes to FIR rendering
2023-09-21 14:02:21 +00:00
Vladimir Sukharev
d7adc0ce32
[FIR] Fix K2: Introduced AMBIGUOUS_ANONYMOUS_TYPE_INFERRED
2023-09-21 13:46:00 +00:00
Pavel Kunyavskiy
cd409abfd8
[Fir2IR] Fix dispatch receiver of fake override lazy function
...
After the fix, it's at least consistent with what generated
for other fake overrides.
^KT-61386
2023-09-21 13:09:32 +00:00
Ivan Kochurkin
b5acd1da6a
[FIR] Fix local RETURN_TYPE_MISMATCH with flexible Unit and multiple Unit returns
2023-09-21 12:52:32 +00:00
Ivan Kochurkin
4b9e15dfa8
[FIR] Fix missing RETURN_TYPE_MISMATCH for labeled return statements
...
in lambda functions, ^KT-59907 Fixed
(cherry picked from commit 8e72f60996 )
2023-09-21 12:52:31 +00:00
Dmitriy Novozhilov
e5530147f0
[FE] Make ClassId a data class
2023-09-21 12:40:44 +00:00
Dmitriy Novozhilov
9e5ee3afa0
[FE] Add isLocal name to ClassId constructor calls where it needed
2023-09-21 12:40:44 +00:00
Dmitriy Novozhilov
adaf8ae46a
[FE] Cleanup implementation of ClassId
2023-09-21 12:40:44 +00:00
Dmitriy Novozhilov
a43cb721ba
[FE] Convert ClassId.java to Kotlin
2023-09-21 12:40:43 +00:00
Dmitriy Novozhilov
a3bcac00e4
[FE] Rename ClassId.java to ClassId.kt
2023-09-21 12:40:43 +00:00
Sebastian Sellmair
9031deeacf
[Commonizer] PropertyCommonizer: Support annotation commonization
...
^KT-62028 Verification Pending
2023-09-21 12:39:15 +00:00
Sebastian Sellmair
f5b107d4f0
[Commonizer] ClassCommonizer: Support annotation commonization
...
^KT-62028 Verification Pending
2023-09-21 12:39:15 +00:00
Mikhail Glukhikh
c33a6a665d
Revert "Mute a pair of intrinsic trim tests for old BE in LV 2.0"
...
This reverts commit 876a0768e4 .
Related to KT-59171
2023-09-21 12:38:22 +00:00
Mikhail Glukhikh
37ef18548e
Fix KotlinVersionsTest.testVersionsAreConsistent after TC version increase
...
Related to KT-59171, KT-61951
2023-09-21 12:38:22 +00:00
Mikhail Glukhikh
326d68c1f4
Drop separate K1/K2 implementations of generateMetadataExtraFlags
...
Related to KT-62056
2023-09-21 11:14:09 +00:00
Mikhail Glukhikh
8b8088720b
Rename: DeserializedContainerAbiStability.IR_UNSTABLE -> UNSTABLE
...
Related to KT-62056
2023-09-21 11:14:09 +00:00
Mikhail Glukhikh
a77b758efa
LV 2.0: drop reporting FIR_COMPILED_CLASS and relevant stuff
...
#KT-62056 Fixed
Related to KT-59171, KT-61951
2023-09-21 11:14:09 +00:00
Bogdan Mukvich
d4640cb576
Remove repack_bundles.py script
...
* moved to build infrastructure scripts
2023-09-21 10:24:09 +00:00
Roman Efremov
b232dbf484
[K2] Temporary mute ACTUAL_ANNOTATION_CONFLICTING_DEFAULT_ARGUMENT_VALUE
...
...until tests fixed. Mute on TC is not enough
because user projects compilation are affected.
^KT-62104
2023-09-21 09:05:51 +00:00
Bogdan Mukvich
e705cd3dac
SBOM for kotlin-dom-api-compat
...
^KTI-1243
2023-09-21 08:26:03 +00:00
Alexander.Likhachev
33df94d96e
[Gradle] Fix mpp+kapt tests on Windows
...
Previously expected paths were defined with forward slash, however, on Windows the paths are transformed to use backslash.
2023-09-21 08:05:10 +00:00
Nikolay Lunyak
2801db0e59
[FIR] Unwrap substitution overrides for multiple default values
...
Otherwise, duplicate diagnostics may be reported on
subtypes of the type that actually declares the
problematic override.
2023-09-21 07:48:31 +00:00
Nikolay Lunyak
76fa812949
[FIR] Ensure K2 reports redundant diagnostics for default values
2023-09-21 07:48:31 +00:00
Nikolay Lunyak
8755cf75ac
[FIR] Improve the messages of the multiple defaults diagnostics
...
Mention the base functions where the default
values come from.
2023-09-21 07:48:30 +00:00
Kirill Rakhman
4e1dfcd2a8
[FIR] Improve readability of rendered types in diagnostics
...
#KT-61824 Fixed
#KT-61688 Fixed
2023-09-21 07:18:19 +00:00
Kirill Rakhman
99b852adf8
[FIR] Refactor constructors of ConeTypeRenders
2023-09-21 07:18:19 +00:00
Kirill Rakhman
da0308806a
[FIR] Rename ConeTypeRendererWithJavaFlexibleTypes to ConeTypeRendererForReadability
2023-09-21 07:18:19 +00:00
Kirill Rakhman
e996760e7e
[FIR] Fix rendering of SUSPENSION_POINT_INSIDE_CRITICAL_SECTION
...
#KT-61826 Fixed
2023-09-21 07:18:19 +00:00
Kirill Rakhman
ed4386a962
[FIR] Fix rendering of NO_ACTUAL_CLASS_MEMBER_FOR_EXPECTED_CLASS
2023-09-21 07:18:19 +00:00
Kirill Rakhman
5c38289d60
[.idea] Add scope for testData and set file color to blue for it
2023-09-21 07:11:21 +00:00
Vladimir Sukharev
c4221b0ec7
[MPP] Enable integration test "K2: Check native stdlib is not shadowed by commonMain stdlib metadata"
...
^KT-61645 Fixed
Merge-request: KT-MR-12243
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2023-09-21 06:57:58 +00:00
Yan Zhulanow
834cbaac5a
[LL API] Run fir2ir separately for files in different modules
...
Each module may have its own compiler configuration.
^KTIJ-27061 Fixed
2023-09-21 06:19:15 +00:00
Dmitriy Dolovov
38a67f3d30
[KLIB] Use -Xmetadata-klib to produce metadata KLIBs
...
With this change a new `-Xmetadata-klib` CLI flag becomes the
preferable way to instruct K2MetadataCompiler to produce metadata
KLIBs. The old `-Xexpect-actual-linker` flag still works for
K2MetadataCompiler, but that would last just for a short transition
period until the necessary changes are made in the Gradle plugin.
The K2NativeCompiler does not work anymore with `-Xexpect-actual-linker`
and respects only the `-Xmetadata-klib` flag. This is not an
issue since the Gradle plugin anyway supplies both flags for Native
metadata compilations.
^KT-61136
2023-09-20 22:26:36 +00:00
Dmitriy Dolovov
848c88b1a5
[KLIB] Lift up -Xmetadata-klib CLI key from Native to Common args
...
This is a precondition for obsoleting and finally removing
`-Xexpect-actual-linker` CLI key, which became useless since
the removal of ExpectActualTable.
^KT-61136
2023-09-20 22:26:36 +00:00