Commit Graph

109044 Commits

Author SHA1 Message Date
Sergey Bogolepov 8ae6e98295 [Native][Tests] Adapt CExport tests to generator changes 2024-02-20 15:23:22 +00:00
Sergey Bogolepov 4f9c1860b1 [Native][Tests] Add tests for -Xbinary=cInterfaceMode=none 2024-02-20 15:23:22 +00:00
Sergey Bogolepov dd25130464 [Native][Tests] Move existing CExport tests under the InterfaceV1 dir
To avoid collisions with the future InterfaceNone tests
2024-02-20 15:23:22 +00:00
Sergey Bogolepov 06c0977408 [Native][Tests] Refactor CExport tests for future changes
1. Unify BinaryLibraryKind type and move it to TestSettings
2. Pass it via ClassSettings instead of constructor parameters.
3. Update GenerateNativeTests.kt to generate CExport tests as a matrix.
2024-02-20 15:23:22 +00:00
Kirill Rakhman 9606a5a441 [Tests] Add test for vararg callable reference adaption with typealias
#KT-65817 Fixed
2024-02-20 14:11:14 +00:00
Kirill Rakhman 365973f03a [Tests] Convert diagnostics test for #KT-65555 to box test 2024-02-20 14:10:37 +00:00
Marco Pennekamp fd66e5d5b8 [FIR] Proofread/edit new KDoc for FirResolvePhase 2024-02-20 14:02:48 +00:00
Ivan Kochurkin 55159694df [FIR] Use Operator origin for ITERATOR and HAS_NEXT function calls instead of Regular
It automatically fixes KT-62356 since iterators now are operators

^KT-62356 Fixed
2024-02-20 13:30:47 +00:00
Vladimir Sukharev 313b230333 [K/N][Tests] Ignore KonanDriverTest tests on MinGW/opt.debug/cache.no
^KT-61259
2024-02-20 12:56:58 +00:00
Vladimir Sukharev 223277f106 Revert "[K/N][Tests] Fix passing of -Xbinary options under MinGW"
This reverts commit ba217ad688.
2024-02-20 12:56:58 +00:00
Kirill Rakhman 634f0c2ae7 [FIR2IR] Unwrap named arguments for suspend conversion
#KT-65878 Fixed
2024-02-20 12:52:08 +00:00
Kirill Rakhman b054a4481d [FIR2IR] Fix cast insertion in SAM conversion with suspend conversion
#KT-65878
#KT-62855
2024-02-20 12:52:08 +00:00
Dmitriy Dolovov a2a217799b [KLIB tool] Update KLIB metadata signature dump tests
^KT-62340
2024-02-20 11:52:26 +00:00
Dmitriy Dolovov 795ee9f26d [KLIB tool] "dump-metadata-signatures": exclude fake overrides
There are few reasons why fake overrides should not be printed:

1. Fake overrides are not serialized in metadata. So, if one will run
   "dump-metadata" they won't see there any fake overrides. Neither
   their signatures. It would be inconsistent if
   "dump-metadata-signatures" command would show them.

2. In order to properly build fake overrides the KLIB tool needs
   the dependency library with the super class or interface, which
   is not available unless this is stdlib or one of the built-in
   Kotlin/Native platform libraries. KLIB tool does not support any
   reasonable means for passing dependencies through CLI arguments.
   If such possibility is added in the future, it would be the
   right time to support printing fake overrides (probably under
   a separate CLI option).

^KT-62340
2024-02-20 11:52:26 +00:00
Dmitriy Dolovov f4f609bea7 [KLIB tool] "dump-metadata-signatures": exclude private declarations
Don't print signatures computed for private declarations. This
effectively means that only signatures for `public`, `protected`,
and `internal` declarations will be printed.

Note: This new behavior is intact with `dump-ir-signatures` command.

^KT-62340
2024-02-20 11:52:26 +00:00
Dmitriy Dolovov d18afff12b [KLIB tool] "dump-metadata-signatures" command: use stable sorted order
Print the signatures computed by the metadata always in stable sorted
order.

^KT-62340
2024-02-20 11:52:26 +00:00
Abduqodiri Qurbonzoda f6f04b209f [K/N] Remove deprecated setUnhandledExceptionHook(not-null) overload #KT-65532 2024-02-20 10:35:13 +00:00
Abduqodiri Qurbonzoda dd89efbce2 [K/N] Remove deprecated deinitRuntimeIfNeeded #KT-65532 2024-02-20 10:35:13 +00:00
Dmitriy Novozhilov 3469e3b198 [FIR2IR] Create delegated field for delegation to var property
^KT-65920 Fixed
2024-02-20 09:46:17 +00:00
Kirill Rakhman 26fae9e83a [FIR] Allow declarations to override parts of non-trivial intersection
A class can inherit two declarations that are compatible from the
overridability standpoint and are therefore combined to a non-trivial
intersection.
At the same time, the class can declare a member declaration that
only overrides one of the intersection's members.
In this case, we break up the intersection and only add the overridden
parts to the declared member's direct overridden list.

If the class doesn't override the intersection, it exists as
intersection override, like before.

#KT-65487 Fixed
2024-02-20 09:02:39 +00:00
Kirill Rakhman 889182629e [FIR] Simplify JavaOverridabilityRules.shouldApplyJavaChecker 2024-02-20 09:02:39 +00:00
Kirill Rakhman d10b9c6506 [FIR] Add KDoc for initialSignatureAttr 2024-02-20 09:02:39 +00:00
Anna Kozlova c628382b29 [AA] keep nullability for the recreated type
...when computing receiver type for double colon expression

^KT-65930 fixed
2024-02-20 08:50:04 +00:00
Johan Bay d50b02adaf [K/N] only include bodies inside inlines for headers
Also renames the "header klib serializaion" option to something
that hopefully slightly better reflects its meaning
^KT-65442
2024-02-20 08:03:08 +00:00
Johan Bay ac8aae5da4 [K/N] keep all declarations inside inline functions
^KT-65442
2024-02-20 08:03:08 +00:00
Johan Bay d4abc30096 [K/N] keep coordinates for inline functions
^KT-65442
2024-02-20 08:03:07 +00:00
Johan Bay 446db595ce [K/N] keep internal members in header klibs
This is also the behavior of jvm-abi-gen and desired to support
friend modules.
^KT-65442
2024-02-20 08:03:07 +00:00
Johan Bay a2516548e4 [K/N] avoid overwriting header when output paths are equal
^KT-65442
2024-02-20 08:03:07 +00:00
Ilya Gorbunov 709076acc9 [stdlib] Improve documentation of Char.isWhitespace and test it behaves the same in different targets 2024-02-20 03:48:08 +00:00
Ilya Gorbunov baca742a31 [stdlib] Minor: fix various grammar in docs 2024-02-20 03:48:08 +00:00
Ilya Gorbunov 15375c0fd5 [stdlib] Use more idiomatic and performant implementation of isBlank
Also replace expect-actual with a common function because its implementation is no longer different in different platforms.

KT-65590
2024-02-20 03:48:08 +00:00
Jinseong Jeon 6f6496d78a AA: remove redundant code
computeIfAbsent right below will do the same thing
2024-02-19 21:54:22 +00:00
Jinseong Jeon 7911207734 AA: remove unused jar file system from KotlinStaticDeclarationProviderFactory 2024-02-19 21:54:21 +00:00
Dmitrii Gridin d64fc9b777 [SLC] map kotlin.Unit type typealias into void return type
^KT-65843 Fixed
2024-02-19 21:24:42 +00:00
Dmitrii Gridin 8dd66c0810 [LC] add test on unit type actualization
^KT-65843
2024-02-19 21:24:42 +00:00
Ivan Kylchik b0171dea63 [IR] Move FunctionInlining into separate module
#KT-64806 Fixed
2024-02-19 20:14:16 +00:00
Ivan Kylchik d0b4ca343b [IR] Move some of extensions from FunctionInlining into IrInlineUtils
#KT-64806
2024-02-19 20:14:16 +00:00
Ivan Kylchik 35b13775d8 [IR] Move declaration of origins for IR inliner into LoweredStatementOrigins
#KT-64806
2024-02-19 20:14:16 +00:00
Ivan Kylchik 6dccb60afe [IR] Add new module to keep all IR inline related code
#KT-64806
2024-02-19 20:14:16 +00:00
Ivan Kochurkin 04ead1716a [FIR] Prohibit constructor and supertype on typealias with type projection
Introduce `CONSTRUCTOR_OR_SUPERTYPE_ON_TYPEALIAS_WITH_TYPE_PROJECTION`

^KT-60305 Fixed
2024-02-19 19:27:28 +00:00
Vladimir Sukharev 2b2c685827 [K/N][Tests] Migrate dylib-interop-exe tests
^KT-61259
2024-02-19 18:44:08 +00:00
Dmitriy Novozhilov 83d851dd61 [Build] Update verification-metadata.xml 2024-02-19 18:40:03 +00:00
Dmitriy Novozhilov 876ab2c020 Advance bootstrap to 2.0.0-dev-15455 2024-02-19 18:40:03 +00:00
vladislav.grechko d753a22fc6 [FIR] Handle expect declarations in JVM backend
1. Do not generate bytecode for expect declarations

2. Serialize @OptionalExpectation annotations into .kotlin_module file

^KT-62931: Fixed
2024-02-19 18:17:37 +00:00
vladislav.grechko b74501ee93 Compare module metadata in JVM ABI consistency tests 2024-02-19 18:17:37 +00:00
Vladimir Sukharev ba217ad688 [K/N][Tests] Fix passing of -Xbinary options under MinGW
^KT-61259
2024-02-19 17:42:34 +00:00
Anna Kozlova a0fef89423 [AA] take resolved type of FirThisReceiverExpression
...when computing receiver type for double colon expression

^KT-65914 fixed
2024-02-19 16:25:21 +00:00
Ilya Goncharov 50a0a1ef0a Add binaryen to verification-metadata 2024-02-19 15:28:27 +00:00
Ilya Goncharov d86b26be15 Add binaryen to resolve dependencies 2024-02-19 15:28:27 +00:00
Evgeniy.Zhelenskiy 782e35dc8d [K2, JVM, IR] Add tests for clashing inner classes names
#KT-65586 #KT-65439
2024-02-19 15:20:57 +00:00