Commit Graph

109072 Commits

Author SHA1 Message Date
Dmitriy Novozhilov da567e54b9 [Test] Reproduce KT-65302 2024-02-21 12:04:11 +00:00
Dmitriy Novozhilov 3c86a4f9df [IR] Consider flexibility of the return type for intersection overrides
^KT-65207 Fixed
2024-02-21 12:04:11 +00:00
Dmitriy Novozhilov 9302c8c14d [Test] Reproduce KT-65207 2024-02-21 12:04:11 +00:00
Sergej Jaskiewicz be1d8e2894 [IR] Delete deprecated IrFactory methods
We no longer care about binary compatibility wrt the Compose IDE plugin,
see the comment in KTIJ-26314.

^KTIJ-26314 Fixed
2024-02-21 12:03:40 +00:00
Artem Daugel-Dauge 7ab691fcef [Gradle] Forbid using embedAndSign together with Pod-dependencies
^KT-64096 Verification Pending
2024-02-21 11:25:31 +00:00
Yahor Berdnikau f5de0f9399 [Gradle] Use BuildFeatures service to get project isolation feature state
^KT-64355 Verification Pending
2024-02-21 10:20:20 +00:00
Yahor Berdnikau e405072419 [Gradle] Use BuildFeatures service to get configuration cache feature state
^KT-64355 In Progress
2024-02-21 10:20:19 +00:00
Yahor Berdnikau 2a195062a8 [Gradle] Add plugin variant for Gradle 8.5
^KT-64355 In Progress
2024-02-21 10:20:19 +00:00
Dmitriy Novozhilov 166c88b87c [Build] Add missing runtime dependency for AA Native tests generator 2024-02-21 10:12:07 +00:00
Alexander Udalov cf425ffded Tests: fix stdlib declarations in IR interpreter test data
Fix some unresolved supertypes. This is necessary to be able to enable
IR fake override builder by default (KT-61514), because it traverses all
supertypes and asserts that they're classes, so that it can build fake
overrides for declarations from there. Without this change, for example
`IrFakeOverrideBuilder.buildFakeOverridesForClass` would crash.
2024-02-21 08:47:01 +00:00
Ilya Chernikov 10dbe73828 K2 Scripting: report error on attempt to use scripts in common roots
#KT-65967 fixed
2024-02-21 07:47:15 +00:00
Ilya Chernikov cdf4b17052 K2 Scripting tests: adding tests on script decls visibility
fixes (makes it stable) behavior of the script top-level declarations
visibility in K2 scripts
2024-02-21 07:47:15 +00:00
Ilya Chernikov e5a6900458 K2 scripting: separate scripts compilation into another session
when scripts are compiled along with other sources.
#KT-65865 fixed
2024-02-21 07:47:15 +00:00
Ilya Chernikov 3ce2172c79 Scripting: refactor script to class lowering
no functional changes, only refactoring to simplify further
modifications
2024-02-21 07:47:15 +00:00
Ilya Chernikov 64cc6d2de0 minor: labels for script implicit receivers similar to context receivers 2024-02-21 07:47:15 +00:00
Ilya Chernikov 75da89824c Scripting: add a test using synthetic properties in scripts
related to #KT-54770
2024-02-21 07:47:15 +00:00
Ilya Chernikov 0d3964f22e Test, scripting: add infra for script tests with customizable def
based on the regular compiler tests infrastructure, but adding
directives that can customize the definition from testdata.
So far only default imports and provided properties are supported, but
the infrastructure is easily extendable to other customizations.
Another limitations that provided properties are not supported for
the black box tests - the constructor parameters computing code
should be adapted to support it.
Note: in order to pick up the customized definition, the script files
should have an extension .test.kts
2024-02-21 07:47:15 +00:00
Nikolay Krasko 031d0359d4 Remove compose compiler-daemon projects registration 2024-02-20 22:24:21 +00:00
Vladimir Sukharev bd7ffc71aa [K/N][Tests] Migrate test kt62262.kt
^KT-61259
2024-02-20 21:10:33 +00:00
Ivan Kochurkin 9a86b83a0c [FIR] Fix crash on assignment expression with incorrect lvalue with LT mode
^KT-65241 Fixed
2024-02-20 20:09:08 +00:00
Ilya Gorbunov c2e28149e6 [stdlib] Enable link-via-signatures to workaround KT-62798 2024-02-20 19:59:16 +00:00
Ilya Gorbunov 98f23c0fba [build] Take artifacts from maven.zip when bootstrapping on a teamcity build 2024-02-20 19:51:09 +00:00
Alexander Shabalin 9fb9d28277 [K/N][tests] Disable atomicfu tests with STATIC_EVERYWHERE ^KT-65977 2024-02-20 19:01:30 +00:00
Vladimir Sukharev 3d70be0c5f [K/N][Tests] Migrate test kt40426
^KT-61259
2024-02-20 18:56:54 +00:00
Dmitrii Gridin 072d191306 [compiler] replace Enum values() with entries
To fix warnings. Also, use of `Enum.entries` may improve the performance

^KT-48872
2024-02-20 17:56:46 +00:00
Tomas Husak ec167d4d42 K2: implement FirForLoopStatementAssignmentChecker
#KT-60006 Fixed
2024-02-20 17:34:49 +00:00
Kirill Rakhman 9eb6646576 [Infrastructure] Use Parallel GC for JPS tests and increase Xmx 2024-02-20 16:51:24 +00:00
Dmitrii Krasnov f525d03e67 [Gradle] Moved downloading konan dependencies from compiler to Gradle
^KT-65823 Fixed
2024-02-20 15:47:58 +00:00
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