Commit Graph

104936 Commits

Author SHA1 Message Date
Yan Zhulanow 9ef58f2bdb [LL API] Collect syntax errors in 'KtFirCompilerFacility'
^KTIJ-27167 Fixed
2023-09-22 11:39:49 +00:00
Ilya Chernikov 141333bdcd K2: Update extension receiver after checking in CheckExtensionReceiver
fixes receiver selection when the candidate has more that one possible
extension receiver
#KT-62129 fixed
2023-09-22 11:33:46 +00:00
Vladimir Sukharev 56eedfebee [FIR] K2: Fix disappeared diagnostic UNDERSCORE_USAGE_WITHOUT_BACKTICKS on types
^KT-59985 Fixed

Merge-request: KT-MR-12282
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2023-09-22 11:18:19 +00:00
Ilya Kirillov 80f86a3527 [FIR] Render flexible types as A..B instead of cryptic ft<A, B>` in diagnostic messages
^KT-62032 fixed
2023-09-22 10:48:31 +00:00
Ilya Kirillov 252c59a8a3 [FIR] Render k2-specific flexible types in a more compact way in diagnostic messages
^KT-62031 fixed
2023-09-22 10:48:31 +00:00
Ilya Kirillov e2252f5e6b [FIR] add testcase for KT-62031 2023-09-22 10:48:31 +00:00
Ilya Kirillov d98da87278 [FIR] Render dot-separated FQNs instead of slash-separated ones in diagnostics
^KT-62030 fixed
2023-09-22 10:48:31 +00:00
Gavriil Maksyutenko b119b4de02 [Wasm] Return SpiderMonkey in box tests
^KT-61958 fixed
2023-09-22 10:16:31 +00:00
Gavriil Maksyutenko c9ba080383 [Gradle, Wasm] Update jsshell 2023-09-22 10:16:30 +00:00
Vladimir Sukharev 42af684ab7 [FIR] Fix disappeared ILLEGAL_ESCAPE
^KT-59950 Fixed
2023-09-22 08:38:50 +00:00
Nataliya.Valtman e4fc375900 Fix unstable TryK2IT.smokeTestForNativeTasks test
fix test fails with unexpected task execution order


Merge-request: KT-MR-12327
Merged-by: Nataliya Valtman <Nataliya.Valtman@jetbrains.com>
2023-09-22 08:09:32 +00:00
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