Dmitriy Dolovov
850879375a
[PL] Special handling of function references produced by FIR
2023-03-28 08:50:59 +00:00
Pavel Mikhailovskii
85b5a4521e
KT-56843 [SLC] Support unsafe property initializers
2023-03-28 08:17:37 +00:00
Artem Kobzar
6b62499c85
[K/JS] Add previousOffset to InteropCallableReferenceLowering + include SYNTHETIC_OFFSET branch into previousOffset calculation
2023-03-27 21:45:00 +00:00
Vladimir Sukharev
9df5c54db3
[K2/N] KT-55828: Enable fixed tests
...
Merge-request: KT-MR-9246
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2023-03-27 17:25:54 +00:00
Mikhail Glukhikh
8b247982e3
Fix text/description of FirIncompatiblePluginAPI
2023-03-27 14:00:52 +00:00
Dmitriy Dolovov
7382b31fdc
[PL] Native: Remove harmful private visibility guard in deserialization of LazyIr
...
Kotlin/Native codegen needs to deserialize all fields throughout the class hierarchy to build the proper binary class layout. That becomes impossible with the guard condition that prevents loading private top-level classes from another module in LazyIR (see https://github.com/JetBrains/kotlin/blob/2a4d8800374578c1aa9ec9c996b393a98f5a6e3b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanIrlinker.kt#L701 ). The guard suits well for the partial linkage needs, but it causes the codegen to fail with `Unbound public symbol IrClassPublicSymbolImpl: [ File '/file/in/the/library.kt' <- private.top.level/ClassDeclaration|null[0] ]` error.
To prevent this the guard is removed. This does not influence the partial linkage in general except for the different error message being generated: `Function 'foo' can not be called: Private function declared in module <A> can not be accessed in module <B>` instead of `Function 'foo' can not be called: No function found for symbol '<symbol>'`.
#KT-54469
2023-03-27 15:50:13 +02:00
Mikhail Zarechenskiy
681e85eaed
Don't report unused variable warning for delegated variables with provide delegate
...
^KT-38871 Fixed
2023-03-27 13:46:13 +00:00
Bogdan Mukvich
18cfc9fcf1
Add space Safe-Merge feature config
...
KTI-1108
2023-03-27 15:43:47 +02:00
Vladimir Sukharev
b375307aa6
KT-57349: Disable target-wide tests for K1/Native
...
Merge-request: KT-MR-9353
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2023-03-27 13:32:18 +00:00
Vladimir Sukharev
9212464887
Enable tests fixed by KT-56023
...
Merge-request: KT-MR-9350
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2023-03-27 13:21:20 +00:00
Kirill Rakhman
56da3c2ee2
[FIR] Bring conflicting overloads errors closer to K1 behavior
...
#KT-55860 Fixed
2023-03-27 11:56:16 +00:00
Abduqodiri Qurbonzoda
9dd778bc89
[K/N] Deprecate initRuntimeIfNeeded() with WARNING
...
As a part of stabilizing Native stdlib.
2023-03-27 14:52:26 +03:00
Abduqodiri Qurbonzoda
33053405e0
[K/N] Mark Any?.identityHashCode() as experimental
...
As part of stabilizing Native stdlib.
2023-03-27 14:51:39 +03:00
mcpiroman
25bcd86552
Simplify and optimize BridgeLowering
2023-03-27 13:49:07 +02:00
Abduqodiri Qurbonzoda
0d53e11851
[K/N] Internalize all annotations in kotlin.native.internal package
...
As a part of efforts to stabilize Native stdlib #KT-55765.
2023-03-27 11:47:25 +00:00
Dmitriy Novozhilov
62ad784b73
[FIR] Fix matching annotated predicate for java and binary declarations
...
^KT-57400 Fixed
2023-03-27 10:54:27 +00:00
Dmitriy Novozhilov
1ac7d13c96
[FE] Add regression test for KT-57036
2023-03-27 10:54:27 +00:00
Alexander Udalov
e56e058b7b
JVM IR: replace unoverridden Number.toChar with toInt().toChar()
...
This fixes failing tests for JVM_IR in
`box/primitiveTypes/numberToChar`.
#KT-23447 Fixed
#KT-46465
2023-03-27 10:46:15 +00:00
Alexander Udalov
a962ec4553
Rework tests on Number.toChar with custom Number subclass
...
Simplify them, move to a subfolder, add a couple of new tests.
2023-03-27 10:46:15 +00:00
Dmitriy Novozhilov
a64d8e8a31
[Stdlib] Deprecate and make open Number.toChar()
...
^KT-46465 Fixed
2023-03-27 10:46:13 +00:00
Dmitriy Novozhilov
90ec84d7b7
[Stdlib] Update copyrighting in generated stdlib sources
2023-03-27 10:46:11 +00:00
Dmitriy Novozhilov
336b6ba9f0
[FIR] Extract extension functional type from an annotated functional type during deserialization
...
^KT-57140 Fixed
2023-03-27 10:44:51 +00:00
Dmitriy Novozhilov
8ca7b32577
[FIR] Register type related extensions in libraries sessions
...
^KT-57140
2023-03-27 10:44:50 +00:00
Dmitriy Novozhilov
01fc84ee3a
[FIR] Add tests for plugins compatibility
...
^KT-57140
2023-03-27 10:44:50 +00:00
Dmitriy Novozhilov
a705bfe2cd
[Test] Add regression test for KT-57477
2023-03-27 10:44:50 +00:00
Marco Pennekamp
f9785c1050
[LL FIR] KT-57455 Avoid creating optional annotation class providers
...
- An `OptionalAnnotationClassesProvider` only needs to be created if the
package part provider may even have optional annotation classes.
- In the IDE case, the package part provider never provides optional
annotation classes, so especially in the IDE, we can avoid a lot of
useless symbol providers with this.
2023-03-27 10:38:50 +00:00
Alexander Udalov
d3be38476a
Merge K2 box tests to main box tests
2023-03-27 10:32:19 +00:00
Alexander Udalov
14c2030595
Merge K2 bytecodeListing tests to main bytecodeListing tests
2023-03-27 10:32:17 +00:00
Ilya Goncharov
68dd89c593
[Gradle, JS] Fix binaryen registering tasks
...
^KT-57203 fixed
2023-03-27 09:32:09 +00:00
Vladimir Sukharev
5d3ab8371f
Enabled fixed tests in FirStdlibTest
...
Merge-request: KT-MR-9289
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2023-03-27 08:56:25 +00:00
Kirill Rakhman
60b227c519
[FIR] Sort HMPP dependencies topologically for symbol providers
...
This fixes an issue where an actual class from an intermediate module
has more supertypes than its expect declaration which leads to a
false-positive resolution error because a type reference resolves to the
expect class. The fix is to sort the dependencies topologically from
"most actual" to "most expect" when creating the list of symbol
providers.
#KT-57369 Fixed
2023-03-27 07:41:05 +00:00
Dmitriy Dolovov
6fe0849402
[IR] Unify usages of isArrayOrPrimitiveArray() && isInlineArrayConstructor()
2023-03-24 19:12:17 +01:00
Dmitriy Dolovov
0f17191e0e
[PL] Fix: Allow IrEnumConstructorCall with constructed class with kind=ENUM_ENTRY
2023-03-24 18:09:37 +00:00
Dmitriy Dolovov
66532d714e
[PL] Fix: Respect inlined array constructor lambdas
2023-03-24 18:09:37 +00:00
Alexander.Likhachev
5baeae3bfd
[Gradle] Set the useK2 option in AbstractKotlinCompileConfig
...
It's a common compiler argument and may be applied to any compile task, there's no reason to set it separately for K/JS and K/JVM, and now it sets the compiler argument for metadata compilation tasks as well
2023-03-24 18:08:10 +00:00
Yahor Berdnikau
b5e36a3c1b
Allow to force values in kotlin-compiler-arguments-plugin
...
Added readme how to use with external projects
2023-03-24 16:40:30 +00:00
Alexander.Likhachev
ca59092318
[Gradle] Read the kotlin.useK2 gradle property value for K/N tasks
2023-03-24 16:07:23 +00:00
Ivan Kylchik
f44d82ce6d
Add test to check that name field in Java enum is not constant
2023-03-24 15:55:07 +00:00
Ivan Kylchik
63b340651d
Add possibility to interpret and fold IrStringConcatenation expression
2023-03-24 15:55:06 +00:00
Ivan Kylchik
7cf9dda8dc
[JS] Support evaluation of const intrinsics for K2
...
#KT-56023 Fixed
#KT-51582 Fixed
2023-03-24 15:55:04 +00:00
Ivan Kylchik
e981b1f958
[Native] Support evaluation of const intrinsics for K2
...
#KT-56023
#KT-55469 Fixed
2023-03-24 15:55:03 +00:00
Ivan Kylchik
5d5582d201
Move ignoreConstOptimizationErrors compiler key from jvm to common
...
#KT-56023
2023-03-24 15:55:03 +00:00
Ivan Kylchik
b58de2f8da
Move ConstEvaluationLowering into folder for common lowerings
...
#KT-56023
2023-03-24 15:55:03 +00:00
Ivan Kochurkin
c14dcfce4f
[K2, MPP, JS] Fix a compiler crash on transitive common dependencies
...
^KT-57431 Fixed
2023-03-24 14:48:28 +00:00
Ivan Kochurkin
4e67d82cd3
[K2, MPP] Make MPP tests from k2/basic target-wide
...
^KT-57349
2023-03-24 14:48:27 +00:00
Ivan Kochurkin
ee73e4774b
[K2, MPP] Remove redundant expect declarations from klib metadata
...
^KT-57250 Fixed
Introduce flat Fir2IrActualizedResult
It contains output from Fir2Ir and IrActualizer
2023-03-24 14:48:26 +00:00
Ivan Kochurkin
d91efb212d
[K2, MPP] Rename jvm.kt to platform.kt in JS tests
2023-03-24 14:48:24 +00:00
Ivan Kochurkin
227018624e
[K2, MPP] Add common constructorCache to Fir2IrCommonMemberStorage
...
Use it in Fir2IrDeclarationStorage
^KT-56660 Fixed
2023-03-24 14:48:24 +00:00
Mikhail Glukhikh
930237b60e
K1: report swallowed diagnostic about upper bound violation
...
#KT-55055 Fixed
2023-03-24 14:27:03 +00:00
Denis.Zharkov
b148df15a9
Fix project compilation
...
Compilation was broken becaise of the combination of
706ff6b61f and
9c2c11f7e9
2023-03-24 14:53:14 +01:00