Commit Graph

92542 Commits

Author SHA1 Message Date
Ivan Kylchik fac98b7787 Add possibility to dump lowered ir in tests before lowering execution 2022-05-18 21:20:00 +03:00
Ivan Kylchik 592baf134e Change ir const checker to match new rules of IntrinsicConstEvaluation 2022-05-18 21:20:00 +03:00
Ivan Kylchik 1431d4b356 Add jvm diagnostic tests to check report of exceptions from interpreter 2022-05-18 21:20:00 +03:00
Ivan Kylchik 20d8e6607d Add new diagnostic tests to check new rules for const modifier 2022-05-18 21:19:59 +03:00
Ivan Kylchik df7be06558 Add tests to check constant evaluation for intrinsic const declarations 2022-05-18 21:19:58 +03:00
Ivan Kylchik 2dcfe219be Move string concat folding into FlattenStringConcatenationLowering
Originally `FoldConstantLowering` is responsible for this, but it can
be removed in the future.
2022-05-18 21:19:58 +03:00
Ivan Kylchik 23f9e97a5f Create getInnerDeclarations function to extract statements from parent
This function is needed to be able to work with files and scripts
2022-05-18 21:19:58 +03:00
Ivan Kylchik 51ccc32a3f Update test data after introducing IntrinsicConstEvaluation annotation 2022-05-18 21:19:57 +03:00
Ivan Kylchik d0ab01ad24 Add lowering that will evaluate all intrinsic const expressions 2022-05-18 21:19:56 +03:00
Ivan Kylchik 6a0802a1be Allow interpreting code extension property 2022-05-18 21:19:56 +03:00
Ivan Kylchik 7113523e34 Support interpretation of trimMargin and trimIndent 2022-05-18 21:19:56 +03:00
Ivan Kylchik 3bf678a011 Add ONLY_INTRINSIC_CONST evaluation mode 2022-05-18 21:19:55 +03:00
Ivan Kylchik 761424b131 Add IntrinsicConstEvaluation annotation to some ir builtins functions 2022-05-18 21:19:55 +03:00
Ivan Kylchik a993939127 [FIR] Allow constant values for IntrinsicConstEvaluation declarations 2022-05-18 21:19:55 +03:00
Ivan Kylchik 4ddbb89103 [JS] Manually change receiver's type of Char's equals method
Char's equals method in js doesn't work properly because now equals
method is not fake override in Char, but it is actual override and so
when we call equals for some char in js, it will not be boxed. To fix
it we need to get correct receiver's type.
2022-05-18 21:19:54 +03:00
Ivan Kylchik 1564f2c549 Mark all declarations that will be evaluated with ir interpreter 2022-05-18 21:19:54 +03:00
Ivan Kylchik 1ccd5d1a3a Add new internal annotation IntrinsicConstEvaluation to kotlin-native 2022-05-18 21:19:53 +03:00
Iven Krall ba5c85d6f2 KT-35811: Type parameter angle brackets followed by equal sign are parsed incorrectly if whitespace is missing 2022-05-18 17:23:40 +00:00
Dmitriy Dolovov 8de4eb798c [IR] Fix removal-of-abstract-fun IR linkage case
^KT-50771
2022-05-18 18:05:09 +03:00
Dmitriy Dolovov deb9039b0f [IR][tests] Add tests for IR linkage issues related to properties 2022-05-18 18:05:05 +03:00
Dmitriy Dolovov 8e8ecc48ad [IR][tests] Add tests for removal-of-abstract-fun IR linkage case
^KT-50771
2022-05-18 18:04:26 +03:00
Dmitriy Dolovov df909abaf5 [IR][tests] More precise IrLinkageError checks 2022-05-18 18:03:53 +03:00
Alexander Shabalin 49f80b207a [K/N] Disable some tests in GC aggressive mode 2022-05-18 13:48:52 +00:00
Ilya Matveev 77b9923c38 [K/N] Fix tests failing in GC aggressive mode 2022-05-18 13:48:52 +00:00
Ilya Matveev 8493b955cc [K/N][runtime] Add a lock on finalizer thread creation
The finalizer thread can be created from the GC thread or from
any application thread during runtime shutdown. This may cause
a rare race when the GC starts the finalizer thread during runtime
shutdown. In this case two finalizer threads may be created and
the app will crash on attempt to assign the finalizerThread_ field
in FinalizerProcessor.
2022-05-18 13:48:50 +00:00
Ilya Matveev 78d179e9ab [K/N][runtime] Track safepoints in aggressive GC
Issue #KT-49188 Fixed
2022-05-18 13:48:49 +00:00
Dmitriy Dolovov ec155653f0 [Native][tests] Log memory usage in Gradle build 2022-05-18 09:44:28 +00:00
Pavel Punegov 7bd7c09c4a Revert "[K/N] Add build-tools as a module for IDEA"
This reverts commit c545fd5ef8.
2022-05-18 10:58:47 +03:00
Pavel Punegov 3f10ab919f Revert "[K/N] Add SAM with receiver plugin"
This reverts commit a58e2459c6.
2022-05-18 10:58:47 +03:00
Ilya Muradyan 00819c421f [REPL] Report script codegen errors in advance 2022-05-18 10:02:58 +03:00
Xin Wang eb1d7110ec FE: Fix null assertion error when left is CollectionLiteral
#KT-49961 fixed
2022-05-18 08:57:16 +02:00
Anton Lakotka bd299ed12c [Test] Rename gcc* to configCache* variable to avoid ambiguity
^KT-51947
2022-05-18 05:48:42 +00:00
Anton Lakotka 1c65ef28f8 [Test] Update warning message for tasks that disables GCC
cherry-picked from 26b4c946e67b25b7206c37ba56a79e5ffeb04dd6

^KT-51947
2022-05-18 05:48:41 +00:00
Anton Lakotka dfd89a45f7 [Test] Disable Configuration Cache for native tasks
cherry-picked from 538cb41a320df93ca85a194b8566ea44457187ca

^KT-43293
2022-05-18 05:48:40 +00:00
Anton Lakotka d2c6489de9 [Gradle] Mark tasks that not compatible with configuration cache
Gradle 7.4 offers new API that allow to exclude task configuration
from being stored in Configuration Cache.

GCC should be supported in further releases.
* KotlinNativeCompile -- KT-43293
* GenerateProjectStructureMetadata
 and TransformKotlinGranularMetadata -- KT-49933

cherry-picked from 7bdde5f4c025f2f55c0038a8d58e0ea78a0ff151

^KT-51946 Verification Pending
2022-05-18 05:48:40 +00:00
Anton Lakotka 399bd750c1 [Gradle] [Test] Add Gradle 7.4.2 to test versions 2022-05-18 05:48:39 +00:00
Iven Krall 514fce427b KT-51714: Parsing fails for context receivers with incomplete label
^KT-51576 In Progress

No test has been added since it would make indexing of Kotlin project failing
Will add it once bootstrap is advanced
2022-05-17 15:27:28 +00:00
Anastasia.Shadrina 292c0c4383 [FE] KT-51234 Check subtyping between context receivers 2022-05-17 15:27:27 +00:00
Anastasia.Shadrina a3fa2dc9bf [Tests] Fix contextualInlineCall.kt to avoid subtyping relation error 2022-05-17 15:27:27 +00:00
Anastasia.Shadrina d857142514 KT-51243 Fix parameterized contextual lambda
^KT-51243 Fixed
2022-05-17 15:27:26 +00:00
Vladimir Dolzhenko efd5beb49b IJ file type optimizations based on extension
#KTIJ-21668

Merge-request: KT-MR-6288
Merged-by: Vladimir Dolzhenko <Vladimir.Dolzhenko@jetbrains.com>
2022-05-17 14:46:00 +00:00
Ilya Gorbunov 4a6466e290 Include kotlin.internal package from core/builtins/src into stdlib-common compilation
It is required because internal annotations from there can be used in
other compiled kotlin-stdlib-common sources.
2022-05-17 14:38:44 +00:00
Ilya Gorbunov eb8e701cb5 Make IntrinsicConstEvaluation annotation internal 2022-05-17 14:38:43 +00:00
Steven Schäfer 90d09dce2c JVM IR: Mangle overridden symbols in non-inline functions (KT-52394) 2022-05-17 12:13:29 +00:00
pyos 0fc676a20c JVM: remove TypedNullValue, hack interpreter instead 2022-05-17 11:58:06 +00:00
pyos 513ef575ce JVM: correctly merge typed null values
1. merge(null of type A, null of type B) = null of unknown type;
2. merge(null of type A, something of type B) = merge(unknown null, B).

^KT-52311 Fixed
2022-05-17 11:58:06 +00:00
nataliya.valtman dcdd1cd14e KT-49780 Do not clean outputs after cache corruption 2022-05-17 08:47:23 +00:00
Victor Petukhov 6c994787b3 [FE 1.0] Don't expand type enhancement
Actually shallow type enhancement is primary, it's more specific

^KT-50734 Fixed
2022-05-17 07:38:26 +00:00
konstantin.tskhovrebov 59b92c02b4 Add OptIn for KotlinNativeArtifactDSL implementation: mute warning. 2022-05-16 13:54:41 +00:00
Dmitriy Dolovov 6cf945f512 [Native][tests] Don't enforce test mode for KLIB ABI tests 2022-05-16 13:42:01 +00:00