Ivan Kochurkin
e49bb1fe37
[FIR] Support of REDECLARATION for local val/var, ^KT-54405 Fixed
2023-03-21 20:24:57 +00:00
Ivan Kochurkin
879deb90fc
[FIR] Report friendly errors for type aliases from stdlib if -no-jdk option is set
...
^KT-54531 Fixed
2023-03-21 20:24:56 +00:00
Ivan Kylchik
8eeb7e2631
Modify test data to reflect changes with IntrinsicConstEvaluation
2023-03-21 20:02:44 +00:00
Ivan Kylchik
6bce668cac
Introduce language version 2.1
2023-03-21 20:02:42 +00:00
Ivan Kylchik
eb86aabb50
[FIR LT] Unmute some stepping and local variable tests
...
Corresponding tests were fixed together with #KT-56982, #KT-56913,
#KT-56926
2023-03-21 16:33:00 +00:00
Ivan Kylchik
2b387e7a10
[FIR LT] Get correct startOffset value for declarations with comments
...
#KT-56913 Fixed
#KT-56926 Fixed
2023-03-21 16:33:00 +00:00
Ivan Kylchik
e4591d7af9
[FIR LT] Add proper source for when with subject
...
#KT-56982 Fixed
2023-03-21 16:33:00 +00:00
Mikhail Glukhikh
45e78455b2
K2: repeat K1 behavior around multiple inheritance by delegation
...
#KT-56720 Fixed
2023-03-21 16:16:20 +00:00
Mikhail Glukhikh
ab883d91c8
FE: add tests to reproduce KT-56720
2023-03-21 16:16:19 +00:00
Denis.Zharkov
38138bf079
K2: Fix bounds erasure for raw types
...
Basically, this commit reworks eraseToUpperBound* stuff
Instead of a bunch of vague flags, we introduce two modes
(rawTypes/intersection emptiness checker) which defined those flags.
Also, it makes choosing `eraseArgumentsDeeply` option always because
that how it works in K1 and also use invariant projection inside
`eraseArgumentsDeeply` for raw types for the same reason.
^KT-57198 Fixed
2023-03-21 12:38:22 +00:00
Nikita Bobko
48ed6c4cc7
2/2 Implement deprecation for use-site '@get:' target
...
^KT-15470 Fixed
Review: https://jetbrains.team/p/kt/reviews/9250
2023-03-21 13:29:10 +01:00
Nikita Bobko
8cf5216555
1/2 Refactoring: split GetterAnnotations & PropertyAnnotations tests for K1 and K2
...
These tests won't be FIR_IDENTICAL after the next commit. That's why I
split them prematurely. This allows me to have a nicer diff in `2/2`
commit.
In scope of KT-15470
Review: https://jetbrains.team/p/kt/reviews/9250
2023-03-21 13:28:55 +01:00
Kirill Rakhman
45d2424ad8
[FIR] Let prefix inc/dec call getter twice for compatibility with K1
...
#KT-57179 Fixed
2023-03-21 08:48:38 +00:00
Pavel Kunyavskiy
3afdce3168
[K/N] Fix volatile intrinsics tests on K2
...
^KT-55904
2023-03-21 06:28:51 +00:00
Ivan Kylchik
7cf70e7b15
[JVM IR] Fix performance issue caused by support of IR Inliner
2023-03-20 23:36:33 +00:00
Svyatoslav Kuzmich
1b7c63bd49
[Wasm] Fix js interop closure signature
...
Before we used IrType.render() which is not unique.
This changes adds a proper serialization of adapter signature to string.
2023-03-20 15:16:00 +00:00
Ilya Chernikov
0e77b67170
K2: implement correct check for ctors mapped from java
...
so the check is functionally the same as in K1.
#KT-57064 fixed
#KT-57065 fixed
One of the tests introduced here (javaMappedCtors) revealed an
additional issue, filed as KT-57368
2023-03-20 11:33:34 +00:00
Mikhail Glukhikh
a43a16b25b
Delay ForbidInferringPostponedTypeVariableIntoDeclaredUpperBound to 2.0
...
#KT-57395 Fixed
Related to KT-47986
2023-03-20 11:11:41 +00:00
Dmitriy Novozhilov
16872f7a74
[FIR] Create this reference for getValue calls in delegates with proper type
...
^KT-57288 Fixed
2023-03-17 18:51:47 +00:00
Denis.Zharkov
823c60a7dc
K2: Fix false-positive UNSAFE_CALL on safe call with flexible type alias
...
The idea of the fix is just unwrapping flexible version of type alias,
before creating a not-nullable version for safe-call subject.
Otherwise, it was remained to be JsExpressionResult after applying
makeConeTypeDefinitelyNotNullOrNotNull (and the type is still nullable)
^KT-57190 Fixed
2023-03-17 16:27:29 +00:00
Mikhail Glukhikh
e8232a7572
FE: add one more test related to KT-56511 with the relevant feature ON
2023-03-17 14:57:41 +00:00
Mikhail Glukhikh
41c868445c
K1: introduce smartcast deprecation for a public API property in invisible class
...
#KT-56511 Fixed
Related to KT-57290
2023-03-17 14:57:40 +00:00
Mikhail Glukhikh
0b31e5ad63
K2: reproduce & add test for KT-56511
2023-03-17 14:57:40 +00:00
Kirill Rakhman
9b89759755
[FIR] Explicitly resolve synthetic property return type if necessary
...
During implicit body resolve phase, we can encounter a reference to a
not yet resolved Kotlin class that inherits a synthetic property from a
Java class. In that case, resolve the return type in
FirSyntheticPropertiesScope.
#KT-57166 Fixed
2023-03-17 13:31:45 +00:00
Kirill Rakhman
7a6a3a0b1d
[FIR2IR] Fix generation of val initialization after smart-cast, again
...
#KT-57284
2023-03-17 13:29:48 +00:00
Artem Kobzar
4da81b2b6e
[K/JS] Remove an internal system property and replace it with the new compiler flag
2023-03-17 12:38:34 +00:00
Dmitriy Novozhilov
ca2492e1f8
[FIR2IR] Unwrap substitution overrides during generation of delegated members
...
^KT-55828 Fixed
2023-03-17 12:37:33 +00:00
Mikhail Glukhikh
2fb79bf0b1
K1: don't report InferredIntoDeclaredUpperBound on non-physical element
...
#KT-56169 Fixed
2023-03-17 12:08:37 +00:00
Mikhail Glukhikh
980ab41ef1
FE: split one more test "buildList type argument is inferred into upper bound"
...
Related to KT-48445, KT-56169
2023-03-17 12:08:37 +00:00
Mikhail Glukhikh
97bec59bc9
K1: add forgotten INFERRED_INTO_DECLARED_UPPER_BOUNDS for incorporation case
...
#KT-56169 Fixed
2023-03-17 12:08:36 +00:00
Mikhail Glukhikh
ba2d896c01
FE: split test "buildList type argument is inferred into upper bound"
...
Related to KT-50520, KT-56169
2023-03-17 12:08:35 +00:00
Ilya Chernikov
0387ce0365
tmp: implement a hack to fix LA test
...
due to a missing mechanism to handle a case when LA succeeds while
codegen fails. See detailed comment in the source.
Fixes implicit conversion test introduced in the previous commit.
2023-03-17 08:57:52 +00:00
Ilya Chernikov
be2a85be71
K2: support implicit integer to unsigned conversions...
...
with dedicated opt-in language feature and special
annotation or module capability.
Not intended for a general use, solves specific K/N
scenario with interop libs.
#KT-55902 fixed
2023-03-17 08:57:51 +00:00
Denis.Zharkov
3e2f8b834c
K2: Replicate K1 enhancement behavior for warning-mode top-level types
...
^KT-56657 Fixed
^KT-57307 Related
2023-03-17 08:52:31 +00:00
Mads Ager
683220a32c
[K1] Remove compiler version requirements for context receivers in metadata.
2023-03-17 07:15:13 +00:00
Pavel Kunyavskiy
e655e0a809
[K/N] Fix default argument lambda in suspend function code generation
2023-03-16 21:14:41 +00:00
Mikhail Glukhikh
0ecfcf4380
FIR2IR: make anonymous object constructor public to match K1 behavior
2023-03-16 18:07:36 +00:00
Mikhail Glukhikh
e1c2dc06f1
FIR2IR: make handling of FirRegularClass & FirAnonymousObject more consistent
...
#KT-57221 Fixed
2023-03-16 18:07:36 +00:00
Mikhail Glukhikh
43a0e7ecbd
FIR2IR: add test for KT-57221
2023-03-16 18:07:35 +00:00
Denis.Zharkov
644391a8e0
K2: Fix Java enhancement when jsr305.jar is not in classpath
...
In that case, when loading Java, we just remember the name of `@Nonnull`
argument (javax.annotation.meta.When), and then use it during enhancement
^KT-56656 Fixed
2023-03-16 14:43:05 +00:00
Denis.Zharkov
157c260fda
Add test data with current behavior for KT-56656
2023-03-16 14:43:05 +00:00
Denis.Zharkov
bcbe26287a
Adjust CLI tests for JSR305 annotations being extracted
...
See the previous commits
2023-03-16 14:43:04 +00:00
Dmitrii Gridin
71299f1d13
[SLC] cover case with invalid java identifier as annotation argument
...
^KT-56868 Fixed
^KT-57328
2023-03-16 11:42:21 +00:00
Svyatoslav Kuzmich
3c0048bfd8
[Wasm] Add typealias diagnostic test cases
2023-03-16 09:12:08 +00:00
Svyatoslav Kuzmich
1208a26fc4
[Wasm] Use JsAny, JsHandle and other Js* types in stdlib and kotlin-test
2023-03-16 09:12:07 +00:00
Svyatoslav Kuzmich
1e91fe155b
[Wasm] Restrict types allowed in JS interop
...
- Prohibit Any, Array and other unsupported non-external types in JS
interop context
- Add K1 diagnostic
- Update BE testdata
^KT-57136 Fixed
2023-03-16 09:12:07 +00:00
Nikolay Lunyak
967ddb8bb0
[FIR] KT-57211: Generate FirArrayOfCall for unsigned types
...
^KT-57211 Fixed
Merge-request: KT-MR-9216
Merged-by: Nikolay Lunyak <Nikolay.Lunyak@jetbrains.com >
2023-03-15 17:05:09 +00:00
Nikolay Lunyak
d639215084
[FIR] KT-57095: Allow X? -> * assignments in unification
...
^KT-57095 Fixed
Merge-request: KT-MR-9180
Merged-by: Nikolay Lunyak <Nikolay.Lunyak@jetbrains.com >
2023-03-15 13:56:51 +00:00
Pavel Kunyavskiy
62fb3df7f0
[K/N] Disable scope initialization on constant access
...
^KT-57098
2023-03-15 09:03:19 +00:00
Vladimir Sukharev
5bd0a1a0ba
Disable some tests due to open issues and incompatibility with K1/MPP
...
Merge-request: KT-MR-9206
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2023-03-15 06:55:27 +00:00