Commit Graph

100396 Commits

Author SHA1 Message Date
Jinseong Jeon 9fe30bfc12 SLC: regression test for final modifier on enum members
^KT-57567
2023-04-19 16:14:23 +02:00
Dmitry Savvinov a3db0f14af [mpp] Minor: fix broken link to docs
^KT-57144 Fixed
2023-04-19 14:02:36 +00:00
Ivan Kylchik 6b75b3bc4a [IR] Drop duplicated meta info from interpreters tests 2023-04-19 13:52:48 +00:00
Ivan Kylchik 3f60c83921 [IR] Add id method in interpreter's tests to avoid optimizations 2023-04-19 13:52:48 +00:00
Ivan Kylchik 621f5a0fb7 [IR] Reorganize test files in involvesIrInterpreter dir 2023-04-19 13:52:48 +00:00
Ivan Kylchik c00c7ffbe0 [K2] Use file name as one of parameters to extract evaluated const
It is not enough to store evaluated constants only by
<startOffset, endOffset> pair. We need to consider case there constant
can be located in different files with the same offset but with
different values.

#KT-57928 Fixed
#KT-57929 Fixed
2023-04-19 13:52:46 +00:00
Ivan Kylchik 8cc8e54a9f [IR] Extract toString interpretation test of float value into new file
We need to distinguish `toString` results for JVM and JS
2023-04-19 13:52:46 +00:00
Ivan Kylchik 45aacae945 [K2] Rewrite the way of extraction const values from IR for FIR
Right now it is much easier to extract constant values from
`EvaluatedConstTracker`

#KT-57928
#KT-57929
2023-04-19 13:52:44 +00:00
Ivan Kylchik 1ddcdcfc39 [IR] Rewrite logic around object interpretation
Basically we want to allow object interpretation only when we try
to access some const val property.

#KT-57810 Fixed
2023-04-19 13:52:44 +00:00
Ivan Kylchik 5956e9b500 [IR] Print evaluated const directly into interpreter's tests 2023-04-19 13:52:44 +00:00
Ivan Kylchik 0b70b7904d [K2] Create and add EvaluatedConstTracker in configuration 2023-04-19 13:52:43 +00:00
Ivan Kylchik 37c3dff0c5 [K2] Add new class to keep track of evaluated const by IrInterpreter 2023-04-19 13:52:42 +00:00
Ivan Kylchik 297b6ae64b [K2] Move ConstantValue from fir-serialization to compiler.common
This is needed to be able to save `ConstantValue` in map of
evaluated constants.
2023-04-19 13:52:42 +00:00
Ivan Kylchik fe989d0ba7 [K2] Add languageVersionSettings to Fir2IrConfiguration class 2023-04-19 13:52:42 +00:00
Ivan Kylchik e16231104e [K2] Add Fir2IrConfiguration class to store configuration parameters
One example of such parameter is `linkViaSignatures`. There is
`Psi2IrConfiguration` as an analog for K1.
2023-04-19 13:52:41 +00:00
Ivan Kylchik 525098dea6 [K2] Unbind fir:fir2ir:jvm-backend from other non jvm modules 2023-04-19 13:52:41 +00:00
Artem Kobzar 33c5068b79 [K/JS] Rework IR deserialization and lowering phases to consume less memory 2023-04-19 13:10:19 +00:00
Pavel Punegov 1ee2d0814c [K/N][test] Exclude test interop0
See ^KT-58099

Merge-request: KT-MR-9672
Merged-by: Pavel Punegov <Pavel.Punegov@jetbrains.com>
2023-04-19 12:49:25 +00:00
Leonid Startsev ef9074e24d Correctly support nullability in type arguments for serializer<T>() intrinsic.
Nullability info should be added to TYPE_OF operation marker.

Fixes https://github.com/Kotlin/kotlinx.serialization/issues/2265
2023-04-19 12:31:19 +00:00
Ilya Chernikov 8cc9f911d5 FIR: temp: make klib symbol provider know parent packages
Current qualified access resolving algo rely (likely incorrectly,
see #KT-58037) on a providers' "knowledge" about parent packages.
This commit adds this "knowledge" to k-lib based provider.
#KT-57353 fixed
2023-04-19 11:42:03 +00:00
Sebastian Sellmair ed2b817409 [Gradle] KotlinNativeCompile: Only add -Xfragment{x} arguments for platform compilations
Shared Native compilations shall only use -Xcommon-sources
w/o setting any of the -Xfragment arguments in K2

^KT-57944 Verification Pending
2023-04-19 11:20:57 +00:00
Sebastian Sellmair 6c271eb24a [Gradle] Implement MppSharedNativeCompileIT for KT-57944
... covering shared native compilation for a simple Gradle project
2023-04-19 11:20:56 +00:00
Sebastian Sellmair 3b96ab195f [Gradle] Implement KotlinNativeCompileArgumentsTest for KT-57944
... covering K2 shared native compilations + sources
... covering K2 platform compilations + sources
2023-04-19 11:20:56 +00:00
Svyatoslav Scherbina 101c229335 Bump Kotlin/Native version to 1.9.0-dev-6050
This is the version where partial linkage is enabled by default
2023-04-19 10:28:29 +00:00
Ilya Gorbunov 36cb94c158 Update Dokka to 1.8.20-dev-213 2023-04-19 10:28:07 +00:00
Leonid Startsev fa8f38c2c8 Don't fail if there is no serializer for type parameters of contextual serializer
Return null instead.
Such behaviour is needed to support cachedChildSerializers logic.
Since this field creator doesn't provide genericGetter (because it's
static),
type param serializer can't be retrieved, and the whole contextual
serializer shouldn't be cached.

#KT-58067 Fixed
2023-04-19 10:09:06 +00:00
Ilya Goncharov bf757d3163 [Gradle, JS] Support custom attributes for public package json configuration
^KT-57985 fixed
^KT-57817 fixed
2023-04-19 09:50:19 +00:00
Vsevolod Tolstopyatov af9252aa96 Mark all Worker-related API as obsolete.
* Explain what obsolete means and why workers are obsolete
* Add some documentation to workers to explain its common pitfalls

^KT-54702


Merge-request: KT-MR-9563
Merged-by: Vsevolod Tolstopyatov <qwwdfsad@gmail.com>
2023-04-19 09:28:23 +00:00
Alexander.Likhachev ec4fab57a7 [Build] Add the kotlin- prefix to the build tools API modules names
KT-57396
2023-04-19 09:09:26 +00:00
Mikhail Glukhikh b6fdc2dbfc DiagnosticReporterByTrackingStrategy: replace TODO() with assertions/errors
#KT-55079 Fixed
2023-04-19 07:24:05 +00:00
Mikhail Glukhikh d4f81cf67f K1: remove unused resolution diagnostic
Related to KT-55079
2023-04-19 07:24:05 +00:00
Pavel Mikhailovskii 3bb66e8432 KT-57714 Fix remapping of signatures with reified type parameters 2023-04-19 07:20:51 +00:00
Vladimir Dolzhenko e10e821cd4 Fix onTheFlyDiagnosticsCallback
KtNamedFunction, KtClass etc are KtAnnotated.
Annotation recursion could happen within onTheFlyDiagnosticsCallback if
KtAnnotated has some annotations.

#KTIJ-25219

Merge-request: KT-MR-9652
Merged-by: Vladimir Dolzhenko <Vladimir.Dolzhenko@jetbrains.com>
2023-04-18 19:44:00 +00:00
Dmitriy Dolovov cd9924dafe [PL] Disable PL for GradleIT that check linkage error messages 2023-04-18 19:11:13 +00:00
Zalim Bashorov 4f76827ea9 [Wasm] Tune Binaryen options and add some notes about 112 2023-04-18 20:40:17 +02:00
Alexander.Likhachev 1e0eccba35 [Gradle] Move KGP configurations name declaration, make them all internal 2023-04-18 18:19:25 +00:00
Alexander.Likhachev 0727ee5a4f [Gradle] Use custom classloader and ServiceLoader to load bt-api implementation
#KT-57397 Fixed
2023-04-18 18:19:25 +00:00
Alexander.Likhachev 5699cf6784 [Gradle] Add ClassLoadersCachingBuildService
#KT-57397 In Progress
2023-04-18 18:19:25 +00:00
Alexander.Likhachev bb635d1bdb [Gradle] Add useCompilerVersion to Kotlin extension
It allows to override default Kotlin compiler version that is used to run compilation via the build tools api
#KT-57397 In Progress
2023-04-18 18:19:24 +00:00
Alexander.Likhachev 22720f62f6 [Build] Add build-tools-api to KGP install dependencies
#KT-57397 In Progress
2023-04-18 18:19:24 +00:00
Alexander.Likhachev 3b69a4c770 [Gradle] Add GradleBuildToolsApiCompilerRunner
It could be enabled via the `kotlin.compiler.runViaBuildToolsApi` Gradle property globally or the `AbstractKotlinCompileTool.runViaBuildToolsApi` task property for a particular task
#KT-57397 In Progress
2023-04-18 18:19:24 +00:00
Alexander.Likhachev 9127919e01 [Build] Enable explicit API mode for build-tools-api
#KT-57396 Fixed
2023-04-18 18:19:23 +00:00
Alexander.Likhachev 7d29d34bf9 [Build] Configure binary-compatibility-validator for build-tools-api
#KT-57396 In Progress
2023-04-18 18:19:23 +00:00
Alexander.Likhachev 3a8d7c0839 [Build] Add build-tools-api and build-tools-impl modules
#KT-57396 In Progress
2023-04-18 18:19:23 +00:00
Nataliya.Valtman 3ab057b5e8 Fix BuildFusStatisticsIT flaky test 2023-04-18 17:55:36 +00:00
Abduqodiri Qurbonzoda f14f88b7ff [K/N] Inline Array constructor
As a part of efforts to stabilize Native stdlib.

Merge-request: KT-MR-9643
Merged-by: Abduqodiri Qurbonzoda <abduqodiri.qurbonzoda@jetbrains.com>
2023-04-18 17:30:53 +00:00
Mikhail Glukhikh 9374202ebc FirCallResolve: disable property resolve optimization in builder inference
#KT-57889 Fixed
2023-04-18 17:05:01 +00:00
Mikhail Glukhikh f9a7a7fda2 K2: reproduce KT-57889 2023-04-18 17:05:00 +00:00
Zalim Bashorov 34f8851ac1 [psi2ir] Ignore private members when creating fake overrides from descriptors
The behavior is unified with the IR deserializer.
See `isOverridableMemberOrAccessor` in IrOverridingUtil.kt

Without this change, if we add a private member to the Any in wasm stdlib,
the compiler starts crashing with a linker error.

It's hard to write a relevant, self-contained box test for that since it requires
adding a private member to Any and affects **only** "virtual" FunctionN interfaces.
2023-04-18 18:44:47 +02:00
Ilya Gorbunov 0c1afcac67 KT-58046 Wrap hrtime array reading into a class
To achieve nice toString and proper equals/hashCode semantics of ValueTimeMark
2023-04-18 15:25:31 +00:00