Abduqodiri Qurbonzoda
b65a68ca0d
[K/N and WASM] Internalize NoWhenBranchMatchedException and UninitializedPropertyAccessException
...
As a part of efforts to stabilize Native stdlib.
Merge-request: KT-MR-9531
Merged-by: Abduqodiri Qurbonzoda <abduqodiri.qurbonzoda@jetbrains.com >
2023-04-10 21:10:51 +00:00
Dmitriy Dolovov
850879375a
[PL] Special handling of function references produced by FIR
2023-03-28 08:50:59 +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
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
Dmitriy Dolovov
4f1155b06f
[PL] ABI compatibility tests for reworked partial linkage
2023-03-23 10:24:27 +00:00
Dmitriy Dolovov
9c1de4be9a
[IR][tests] Mute visibility-related tests until KT-54469 is fixed
2022-10-20 10:18:57 +02:00
Dmitriy Dolovov
0d8a6b6fa7
[IR][tests] Include cases when a callable with narrowed visibility is accessed outside the module
...
^KT-53608
2022-10-20 10:18:57 +02:00
Dmitriy Dolovov
500e4f5e24
[IR][tests] Add test to check absence of false positively-detected unimplemented callables
...
^KT-53663
2022-10-20 10:18:56 +02:00
Dmitriy Dolovov
cd007c02df
[IR][tests] Add cases to visibility-related tests where a callable accidentally starts to override newly added open callable in super class
...
^KT-53608
2022-10-20 10:18:56 +02:00
Dmitriy Dolovov
ec4b85b111
[IR][tests] Add cases to visibility-related tests where a visibility of an open callable in super class is narrowed
...
^KT-53608
2022-10-20 10:18:56 +02:00
Dmitriy Dolovov
15cf2bab98
[IR][tests] Replace returned values in visibility-related tests
...
^KT-53608
2022-10-20 10:18:55 +02:00
Dmitriy Dolovov
64867a1627
[IR][tests] Rename top-level declarations in visibility-related tests to distinguish them from nested declarations
2022-10-20 10:18:55 +02:00
Dmitriy Dolovov
296c1cbd0f
[Native][tests] Add partial linkage tests (muted) for replacement-of-return-type case
...
^KT-51707
2022-10-20 10:18:54 +02:00
Dmitriy Dolovov
24d8ac97cd
[IR][tests] Make ABI compatibility tests less verbose, part 2
2022-10-20 10:18:54 +02:00
Dmitriy Dolovov
db1c8cc7a7
[IR][tests] Make ABI compatibility tests less verbose, part 1
2022-10-20 10:18:53 +02:00
Dmitriy Dolovov
3569ec7666
[IR][tests] New test: change of visibility for callables
2022-10-20 10:18:53 +02:00
Dmitriy Dolovov
8374b2da85
[IR][tests] New test: non-abstract callable member in abstract class becomes abstract
...
^KT-53663
2022-10-20 10:18:53 +02:00
Dmitriy Dolovov
4d056b211e
[IR][tests] Update tests to reflect changes in partial linkage error messages
2022-10-20 10:18:52 +02:00
Dmitriy Dolovov
ce04a24b26
[IR][tests] Removal of class used as variable type and constructor call
2022-07-18 17:29:50 +02:00
Dmitriy Dolovov
d5ded97ccb
[IR][tests] Removal of inlined class case
...
^KT-52478
2022-07-18 17:29:50 +02:00
Dmitriy Dolovov
7b5e33b6ca
[IR][tests] Add tests for removal-of-typealias case
2022-07-18 17:29:49 +02:00
Dmitriy Dolovov
89a188d199
[IR][tests] Add tests for remove-inlined-callable member case
2022-07-18 17:29:49 +02:00
Dmitriy Dolovov
9c1c712057
[IR][tests] Add tests for removal-of-overridden open callable case
2022-07-18 17:29:49 +02:00
Dmitriy Dolovov
2476d1bbb6
[IR][tests] Extend test for IR linkage issues related to functions
2022-05-24 07:48:09 +00: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
Roman Artemev
23d7f94dca
[JS IR] Generate JS Klib ABI tests
...
- add first test
2021-12-08 20:18:15 +03:00