Svyatoslav Kuzmich
e32611d2f2
[Wasm] Make Promise methods generic instead of using Dynamic
...
Copy full Promise implementation from Kotlin/JS,
and specify JsAny? upper bounds
2023-03-29 11:08:29 +00:00
Svyatoslav Kuzmich
635671d623
[Wasm] Stop using Dynamic in kotlin-test
2023-03-29 11:08:28 +00:00
Denis.Zharkov
1071669a92
Fix project K2-bootstrapping when KT-57609 breaking change is introduced
2023-03-29 10:45:40 +00:00
Denis.Zharkov
55a58e54fe
K2: Rework scopes for types with projection arguments for Out types
...
The only case when behavior is change is described at
computeNonTrivialTypeArgumentForScopeSubstitutor
The idea is to avoid depending on the presence of @UnsafeVariance
and instead approximate captured types in covariant argument positions
before building substitution scopes
It's correct because for Captured(*) <: Supertype,
Out<Captured(*)> <: Out<Supertype> and when we've got @UnsafeVariance
value parameters at Out, it's ok to allow passing Supertype there.
^KT-57602 Fixed
^KT-54894 Fixed
2023-03-29 10:45:40 +00:00
Ilya Kirillov
1cd040fd6a
[Analysis API FIR] remove redundant lazy resolve in KtFirImportOptimizer for empty imports list
2023-03-29 10:36:28 +00:00
Ilya Kirillov
063666344d
[Analysis API FIR] remove redundant check for validity assertion in KtFirImportOptimizer
...
validity is already checked in KtImportOptimizerMixIn
2023-03-29 10:36:28 +00:00
Ilya Kirillov
15f19f324e
[Analysis API FIR] do not consider unresolved imports as unused in import optimizer
...
Otherwise, the import optimizer breaks incomplete code
^KTIJ-25034 fixed
2023-03-29 10:36:27 +00:00
Denis.Zharkov
d9ca77f716
K2: Fix false-positive RETURN_TYPE_MISMATCH_ON_OVERRIDE
...
The reason was that `substitutorByMap` ignored the difference between
`T` and `T?`
^KT-57001 Fixed
2023-03-29 10:27:49 +00:00
Pavel Kunyavskiy
ac8cbcafb4
[K/N] Do not export all operator component functions in data classes
...
^KT-57507
2023-03-29 10:25:51 +00:00
Kirill Rakhman
3b0c36da3f
[FIR] Fix ClassCastException when rendering ACTUAL_WITHOUT_EXPECT
...
#KT-57320
2023-03-29 10:19:47 +00:00
Jinseong Jeon
3b09313192
SLC: fix inheritance list for subtype of Comparator
...
^KT-57548 Fixed
2023-03-29 11:27:34 +02:00
Jinseong Jeon
1b3b554084
SLC: force boxed return type when needed
...
e.g., when overriding a function whose return type is not primitive
^KT-57579 Fixed
2023-03-29 11:27:34 +02:00
Dmitrii Gridin
19dbe69651
[FIR] move deprecations calculation on TYPES phase
...
can be moved to COMPILER_REQUIRED_ANNOTATIONS phase in the future
^KT-57256 Fixed
2023-03-29 08:52:37 +00:00
Nikolay Lunyak
f644eb7988
[FIR JS] Implement FirJsExportDeclarationChecker
2023-03-29 08:51:48 +03:00
Nikolay Lunyak
624162dc07
[FIR JS] Report NESTED_JS_EXPORT
2023-03-29 08:51:48 +03:00
Nikolay Lunyak
8f94899187
[FIR JS] Fix a typo in the dynamic upper bound check
...
`FirDynamicTypeRef` is the unresolved version, and after resolution it
becomes `FirResolvedTypeRef` with `ConeDynamicType`.
2023-03-29 08:51:48 +03:00
Nikolay Lunyak
2b5d2dc539
[FIR JS] Report rtti-related diagnostics
2023-03-29 08:51:48 +03:00
Vladimir Sukharev
351588f0a7
[K2/N] Enable some fixed MPP tests
...
Merge-request: KT-MR-9364
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2023-03-28 16:49:57 +00:00
Dmitriy Novozhilov
0149ac3dbd
Advance bootstrap to 1.9.0-dev-4392
2023-03-28 19:42:13 +03:00
Kirill Rakhman
32cc28c6cf
[FIR] Skip expect-actual rules check when overriding non-expect member
...
Overriding equals, hashCode, toString and any other member that is not
expect does not require satisfying the rules of expect-actual matching.
#KT-57381 Fixed
2023-03-28 16:21:33 +00:00
Dmitriy Novozhilov
ef51cf9083
[AA] Ignore tests due to KT-57619
2023-03-28 15:35:12 +00:00
Dmitriy Novozhilov
e02194b461
[FIR] Properly prohibit access to enum companion in enum entry initialization section
...
^KT-57456 Fixed
KT-57608
2023-03-28 15:35:12 +00:00
Dmitriy Novozhilov
cbfa155333
[FIR] Make FirClass an inheritor of FirControlFlowGraphOwner
...
Both inheritors of FirClass (FirRegularClass and FirAnonymousObject)
already were CFG owners
2023-03-28 15:35:11 +00:00
Dmitriy Novozhilov
a9c1091140
[Test] Add test for KT-57456
2023-03-28 15:35:11 +00:00
Ilya Goncharov
95d33da10d
[Gradle, JS] Watch options ignore kt file to not trigger webpack
...
[Gradle, JS] Webpack prod dist not in default dist dir
^KT-57629 fixed
^KT-57630 fixed
2023-03-28 14:39:10 +00:00
Ilya Goncharov
4fabe8b29a
[Gradle, JS] Fix composite build to not depend package json task on full aggregated configuration
...
^KT-57604 fixed
2023-03-28 13:37:23 +00:00
Kirill Rakhman
1f0d56e157
[FIR] Make type parameters inaccessible for non-inner nested types
...
#KT-57209
2023-03-28 13:20:53 +00:00
Kirill Rakhman
c39ab956a0
[FIR2IR] Fix redundant let in Fir2IrDeclarationStorage
2023-03-28 12:47:42 +00:00
Kirill Rakhman
ee78c31174
[FIR2IR] Fix generation of Any method call on expect receiver
...
#KT-57583 Fixed
2023-03-28 12:47:42 +00:00
Kirill Rakhman
ed99f8bcdd
[FIR2IR] Remove redundant toMutableList
2023-03-28 12:47:41 +00:00
Artem Kobzar
c6e4858bc9
[K/JS] Remove the ability to run Legacy JS backend from the Gradle Plugin
2023-03-28 12:47:04 +00:00
Simon Ogorodnik
ae32eff543
KT-57154: Fix JRT-FS contents served for wrong JDK home on JDK 9+
...
If the compiler runtime JDK is 9+,
it will already contain JrtFileSystemProvider and won't use provided
classloader
In order to fix KT-57154 we need to provide "java.home" argument to
newFileSystem
In order to reduce the severity of the leak in KT-56789 we cache
instances of FileSystem itself forever
Otherwise, each invocation of newFileSystem on JDK 9+ will leak
classloader, which is created deep inside the JDK code
Add unit test for JRT-FS contents served through CoreJrtFs
Add Gradle Integration test to
test if the daemon correctly reads JDK contents from the specified
toolchain and not from its runtime JDK
^KT-57154
Regression test for ^KT-57077
2023-03-28 10:38:46 +00:00
Mikhail Glukhikh
563781a246
K2: serialize data class equals / hashCode / toString functions
...
#KT-57510 Fixed
2023-03-28 09:30:02 +00:00
Dmitriy Dolovov
0a38b29491
[PL] Drop useless KotlinIrLinkerInternalException
...
It only added a confusion, while in fact has no practical sense.
2023-03-28 08:50:59 +00:00
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