Commit Graph

88203 Commits

Author SHA1 Message Date
Roman Artemev dc1155de24 [JS IR] Erase IrErrorType into IrErrorType 2021-12-08 20:18:16 +03:00
Roman Artemev 002d6723ac [KLIB] Fix partially-linked mode
- don't mark super classes as unlinked if its type argument is
 - check IrCall type as well
2021-12-08 20:18:15 +03:00
Roman Artemev 23d7f94dca [JS IR] Generate JS Klib ABI tests
- add first test
2021-12-08 20:18:15 +03:00
Roman Artemev c3c2bb5884 [TEST] Add Klib ABI test runner logic
- common and js-specific classes
2021-12-08 20:18:14 +03:00
Roman Artemev 4ef316a590 [TEST] Move info file names into common place 2021-12-08 20:18:13 +03:00
Roman Artemev 327b529e08 [TEST] Move TestModel parser into common test part
- fix dependent invalidation test runner
2021-12-08 20:18:10 +03:00
Roman Artemev 699f16ba55 [KLIB] Move klib-related tests into separate package/directory
- regenerate tests
2021-12-08 20:18:08 +03:00
Stanislav Erokhin 255bbbbfa8 Restore binary compatibility with android.nav.safearg plugin
In recent a39fbd3822 commit
contextReceiverParameters was introduced and new parameter to descriptor
methods was added. Luckily, it is low-level methods enough -- i.e.
they related to new descriptor creation, but still, some compatibility
is broken. This commit fixes usages in the android.nav.safearg that I
have found in the IDEA repo, maybe we will find other after some
compatibility testing.
2021-12-08 17:16:21 +00:00
Elena Lepilkina f4830716bc [K/N] Don't land parameters on stack in release mode 2021-12-08 15:19:31 +00:00
Jinseong Jeon b9a56f4888 FIR LC: add static modifier to non-inner nested interfaces 2021-12-08 15:28:33 +01:00
Svyatoslav Scherbina 575c0fabb6 Native: add test for KT-38850
(the bug was fixed long ago, in 1.4-M1).
2021-12-08 13:00:15 +00:00
Mikhael Bogdanov 8c17d5f5a7 JvmDefaultWithCompatibility. Switch retention to source 2021-12-08 12:25:02 +01:00
Mikhael Bogdanov 29afd674d2 JvmDefaultWithoutCompatibility. Add test with Kotlin Java mixed inheritance 2021-12-08 12:25:02 +01:00
Mikhael Bogdanov c599b58eb3 Remove obsolete options 2021-12-08 12:25:02 +01:00
Dmitry Petrov 93713a9ad4 JVM_IR KT-47939 use FunInterfaceConstructorReference as base class 2021-12-08 14:12:41 +03:00
Dmitry Petrov 0ccd7a7e0c KT-47939 fun interface constructor reference should throw NPE for null 2021-12-08 14:12:41 +03:00
Dmitry Petrov e5eee9bab9 KT-47939 KotlinFunInterfaceConstructorReference is experimental 2021-12-08 14:12:40 +03:00
Dmitry Petrov 72f7276f3c PSI2IR KT-47939 more tests 2021-12-08 14:12:40 +03:00
Dmitry Petrov 9eeb8f54fb JVM_IR KT-47939 fixes after review 2021-12-08 14:12:39 +03:00
Dmitry Petrov e179598457 JVM_IR KT-47939 equality for fun interface constructor references 2021-12-08 14:12:38 +03:00
Dmitry Petrov 50b0dae786 KT-47939 fixes after review 2021-12-08 14:12:37 +03:00
Dmitry Petrov 58f1504aaf KT-47939 basic fun interface constructor reference box test 2021-12-08 14:12:37 +03:00
Dmitry Petrov 11daed8b01 FIR2IR KT-47939 callable references to fun interface constructors 2021-12-08 14:12:36 +03:00
Dmitry Petrov f55f880726 Minor: regenerate tests, update testData 2021-12-08 14:12:35 +03:00
Dmitry Petrov 27a144f86f PSI2IR KT-47939 callable references to fun interface constructors 2021-12-08 14:12:34 +03:00
Dmitry Petrov 1fd0dec5e7 FE KT-47939 callable references to functional interface constructors
Allow callable references to Kotlin 'fun interface' constructors.
Prohibit callable references to Java SAM interface constructors.
2021-12-08 14:12:33 +03:00
Dmitry Petrov bfb6e73728 Minor: reformat Errors.java & ErrorsJvm.java 2021-12-08 14:12:32 +03:00
Ilya Goncharov 2a1396bafe [JS IR] Remove JsEagerInitialization after bootstrap update 2021-12-08 10:42:50 +00:00
Ilya Matveev 9e9faa6b14 [K/N][build] Don't use srcRoot in compdb tasks
The CompileToBitcode task has two options to specify sources:
srcDirs and srcRoot. Thus there may be a situation when sources
are specified using srcDirs only and srcRoot doesn't exists (e.g.
compilation of googletest and googlemock, see RuntimeTestingPlugin.kt).

In this case a generated compilation database will contain
a path to a directory which doesn't exist causing error messages
during CLion import. This patch fixes this by getting rid of using
srcRoot in combdb tasks.
2021-12-08 10:12:31 +00:00
Steven Schäfer 16a2aec296 Parcelize: Skip constructor checks when used with custom Parceler
See https://issuetracker.google.com/177850558
2021-12-08 11:07:10 +01:00
Steven Schäfer 58c687e42d Parcelize: Support @IgnoreOnParcel primary constructor parameters...
...with default values.

See https://issuetracker.google.com/177850560
2021-12-08 11:07:10 +01:00
Ilya Goncharov 00289d3514 rra/ilgonmic/exported-bridges-2
[JS IR] Use js name for signature

[JS] bridgeSavingExport only for JS IR

[JS IR] Fix test

[JS IR] Stable and non stable signatures

[JS IR] Consider return type in js signature and erase for JS name signature

[JS IR] Copy signature from wasm to JS and export bridge, not original

Merge-request: KT-MR-5174
2021-12-08 08:30:14 +00:00
Ilya Goncharov 0c74376cc4 rra/ilgonmic/after-test-promise
[JS] Node downloading for js ir integration kotlin test

[JS] Fix API of Promise

[JS IR] Promise symbol as lazy2

[JS] Support legacy compiler aftertest with promises

[JS IR] Generate finally for promised tests

[JS] Setup it tests for JS IR kotlin-test

Merge-request: KT-MR-5168

^KT-49738 fixed
2021-12-08 08:22:53 +00:00
Mikhael Bogdanov bdeae7668e JvmDefault. Support 'JvmDefaultWithCompatibility' annotation in old backend
#KT-48217
2021-12-08 06:27:57 +00:00
Alexander Udalov 1471602c9f JVM IR: do not optimize properties with -Xno-optimized-callable-references
#KT-50019 Fixed
2021-12-08 03:15:49 +01:00
Ilmir Usmanov f47a3a3d1c Minor. Regenerate tests 2021-12-08 00:11:55 +01:00
Ilmir Usmanov f95cba0ec3 Support delegation by interface for inline classes in FIR
#KT-27435 Fixed
2021-12-08 00:11:55 +01:00
Ilmir Usmanov bb53ba4a2e Enable delegation by interface for inline classes in old FE
#KT-27435
2021-12-08 00:11:54 +01:00
sebastian.sellmair 3002829acf [Gradle][KPM] Rename KotlinFragmentNameDisambiguation into KotlinNameDisambiguation 2021-12-07 21:38:59 +00:00
sebastian.sellmair 2a43199287 [Gradle][KPM] Split fragment specific configurations from KotlinDependencyConfigurations 2021-12-07 21:38:59 +00:00
sebastian.sellmair d7df56a390 [Gradle][KPM] Minor: Cleanup imports, remove unused code and add documentation 2021-12-07 21:38:59 +00:00
sebastian.sellmair 444b88e438 [Gradle][KPM] Reference Configurations directly
Configurations are not registered/created lazily which makes
referencing NamedDomainObjectProvider over Configurations unnecessary
for now.
2021-12-07 21:38:58 +00:00
sebastian.sellmair 032981dd83 [Gradle][KPM] Implement KotlinCompilationOutputsJarArtifactConfigurator 2021-12-07 21:38:58 +00:00
sebastian.sellmair e8da9c007c [Gradle][KPM] Make 'locateOrRegister' internal 2021-12-07 21:38:58 +00:00
sebastian.sellmair 6b9c73de5d [Gradle][KPM] Implement KotlinCommonFragmentFactoryTest 2021-12-07 21:38:57 +00:00
sebastian.sellmair 8260616fe4 [Gradle][KPM] Implement KotlinGradleModuleFragmentContainerTest 2021-12-07 21:38:57 +00:00
sebastian.sellmair 60633335ef [Gradle][KPM] Implement *VariantFactoryTests 2021-12-07 21:38:56 +00:00
sebastian.sellmair 1fb723f844 [Gradle][KPM] Split fragment factories into composable entities
This compasability will ensure that external target authors
(AGP) are able to reuse most of KPM code whilst allowing a lot of
customizability.
2021-12-07 21:38:56 +00:00
Mikhail Glukhikh 386e2e0950 FIR2IR: don't create separate delegate fields for constructor properties 2021-12-07 23:17:38 +03:00
Mikhail Glukhikh f8b3eb0801 FIR: introduce helpers to get resolved reference / symbol 2021-12-07 23:17:34 +03:00