Commit Graph

87184 Commits

Author SHA1 Message Date
Dmitriy Novozhilov 13c893753d Advance bootstrap to 1.6.20-dev-3726 2021-10-12 10:30:12 +03:00
Svyatoslav Kuzmich a6afb7cb41 [JS IR][Wasm] Preload (Suspend)FunctionN needed in lowerings
This reverts commit 15d178d850d15675ee39cbd833d13f4c8aed83ff.
2021-10-12 08:42:01 +03:00
Svyatoslav Kuzmich 3bce0cc055 [Wasm] Support coroutines
- Reuse JS IR Suspend function lowering
  - Fix types
  - Disable reinterpretCast-based optimization for inline
    classes
- Add basic support to Wasm stdlib
- Explicitly transform suspend functions into regular functions
  with continuations
- Clean suspend function handling from JS IR codegen
2021-10-12 08:42:01 +03:00
Svyatoslav Kuzmich e3f826d1b9 [Wasm] Handle IrClass::thisReceiver receiver outside of constructors 2021-10-12 08:42:01 +03:00
Svyatoslav Kuzmich bcab78599f [Wasm] Fix result of statically-know type operators
- Use subclass with erased types to match runtime behavior
- Handle casting to Nothing
2021-10-12 08:42:01 +03:00
Svyatoslav Kuzmich 20cc7196c8 [Wasm][Minor] Remove unused doTestWithCoroutinesPackageReplacement 2021-10-12 08:42:00 +03:00
Svyatoslav Kuzmich 3bd0ea6b07 [Wasm] Support generating browser-compatible directory 2021-10-12 08:42:00 +03:00
Svyatoslav Kuzmich 15acc412ba [Wasm] Update testdata after coroutines support 2021-10-12 08:42:00 +03:00
Svyatoslav Kuzmich b8a5b9bb02 [Native-Wasm][Stdlib] Workaround FE bug
Workaround bug that causes frontend to produce invalid IR (KT-49182)
2021-10-12 08:42:00 +03:00
Roman Artemev 686e5e7f2b [TEST] Fix test data.
Due to JS IR runner doesn't override stdout test fails.
Remove using stdout from test.
2021-10-11 21:19:28 +03:00
Sergej Jaskiewicz 360c0170be fixup! Mute the test on WASM 2021-10-11 15:57:53 +00:00
Sergej Jaskiewicz 9ee8f1e961 [JS IR] Enable StringTrimLowering for JS IR backend 2021-10-11 15:57:53 +00:00
Alexey Subach ca2f37f6eb Add possibility to get location of the script.main.kts file
#KT-48414 fixed
2021-10-11 15:45:57 +02:00
Alexey Subach 7ddf83f32d Add link to ScriptCompilationConfiguration into ScriptEvaluationConfiguration
#KT-48758 fixed
2021-10-11 15:45:57 +02:00
Konstantin Tskhovrebov be0c4da04a Migrate KotlinNativeTasks to KN compiler arg builder. 2021-10-11 16:42:32 +03:00
Konstantin Tskhovrebov 54b3de775d Add K/N compiler args builders. 2021-10-11 16:42:32 +03:00
Viacheslav Kormushkin b00a43802a [Gradle, MPP] address KT-42755 Cocoapods plugin using backslashes on Windows
Co-authored-by: Andreas Mattsson <andreas@andreasmattsson.com>

Merge-request: KT-MR-4719
2021-10-11 13:04:05 +00:00
Pavel Kirpichenkov 5e874bc3c5 [Commonizer] Check errors in code of commonization tests 2021-10-11 13:00:40 +00:00
Viacheslav Kormushkin 57ce178bb3 Build with CocoaPods plugin fails if CONFIGRATION contains spaces
#KT-48771

Merge-request: KT-MR-4724
2021-10-11 12:03:51 +00:00
Pavel Kunyavskiy 0bd4dbc0c1 [K/N] Disable debug info in runtime by default
Bundle grows 200mb if debug info is enabled, it's too much.
But probably, this can be useful for debug, so we need gradle option.
2021-10-11 11:45:24 +00:00
Mikhail Glukhikh 9a5058849e Delay ExtensionPropertyTypeParameterInDelegate forbiddance to 1.7
Related to KT-24643
2021-10-11 13:04:39 +03:00
Ilmir Usmanov 5a47eaf215 Fix @JvmInline value class tests for JS BE 2021-10-11 12:09:52 +03:00
zhelenskiy 1da46586bd Replaced deprecated inline classes with JvmInline value classes in tests 2021-10-11 12:09:51 +03:00
Ilya Goncharov b0aefd543a [JS IR] Fix offsets and add new test
[JS IR] Use TypeSubstitutor for full substitution of types

- adding new tests

[JS IR] Commonize context and use in wasm

[JS IR] Add test with receiver with callable reference

[JS IR] Add prerequisites around inlining and callable references

[JS IR] Review fixes

- Add test with bounded type parameter
- Remove redundant casts
- Use offsets for synth function
- Correct traversing

[JS IR] Not use origin for not inlined function reference

[JS IR] Move util into common place

[JS IR] Fix offsets

[JS IR] Add type parameter argument and using value in test

[JS IR] Wrap inlined callable references with reified parameters

[JS IR] Add test on callable reference inlined fun

Merge-request: KT-MR-4722
2021-10-11 09:02:08 +00:00
Artem Kobzar c9510af2c7 test(KT-47806): add tests for the uncovered behavior for generic companion function extensions. 2021-10-11 08:56:52 +00:00
Georgy Bronnikov a9ce25cf33 JVM_IR: only serialize inline functions themselves with -Xserialize-ir=inline 2021-10-11 11:53:30 +03:00
Georgy Bronnikov 4caa71538d JVM_IR: introduce modes for IR serialization
Instead of a Boolean flag -Xserialize-ir, use modes: none,inline,all.
In "inline" mode, only information needed to deserialize bodies of inline
functions is serialized.
In the "all" mode, all declarations are serialized completely.
2021-10-11 11:53:29 +03:00
Ilmir Usmanov f760cd6736 Make CHECKCAST Object not break tail-call optimization
Since CHECKCAST Object does nothing for return value of suspend
function - the function returns references only, this is safe.
 #KT-49157 Fixed
2021-10-11 06:40:26 +00:00
Andrey Uskov 4a99f04b41 Add simple test of KAPT working under JDK 16 2021-10-10 16:40:35 +03:00
Andrey Uskov 52e45062cf KAPT does not fail with default settings on JDK 16+
If KAPT process is executed on latest JDKs and module
'jdk.compiler' does not export required packages, KAPT will
configure this module to export required packages.

#KT-45545 Fixed
2021-10-10 16:40:34 +03:00
Dmitry Petrov 31d7d341d4 JVM_IR KT-41214 minor: update testData 2021-10-09 17:07:37 +03:00
Dmitriy Novozhilov 8fd2474b9e [Test] Generated FIR codegen tests on modern jdk 2021-10-09 17:07:37 +03:00
Dmitriy Novozhilov 63d841247c [FIR2IR] Properly setup IrClass.sealedSubclasses 2021-10-09 17:07:36 +03:00
Dmitry Petrov 146f0f4904 JVM_IR KT-41214 emit PermittedSubclasses on JDK17+ 2021-10-09 17:07:35 +03:00
Artem Kobzar dca4a8e722 fix(KT-45056, KT-47516): use enum as an IR class instead of enum entity class. 2021-10-08 16:21:49 +00:00
Ivan Kochurkin 3dd8ad3599 [FIR] Fix resolving of local class reference chain ^KT-47135 Fixed 2021-10-08 18:52:21 +03:00
Ivan Kochurkin cbfe0ac073 [FIR] Coerce first parameter to extension receiver ^KT-46371 Fixed
Fix typos
2021-10-08 18:52:20 +03:00
Ivan Kochurkin cc4dac5bec [FIR] Fix false positive TYPE_VARIANCE_CONFLICT in nested class ^KT-49078 Fixed 2021-10-08 18:52:19 +03:00
Ivan Kochurkin 6c7c1a7a0d [FIR] Convert REDUNDANT_MODIFIER, DEPRECATED_MODIFIER_PAIR to warnings ^KT-49073 Fixed 2021-10-08 18:52:18 +03:00
Roman Artemev 876a0d9b7b [IR] Add test about default arguments in expect declaration for HMMP
KT-45542
2021-10-08 16:07:10 +03:00
Roman Artemev 5a64f64ba3 [KLIB] Propagate default arguments in expect-actual resolution
- refactor code a bit
 - fix KT-45542
2021-10-08 16:07:04 +03:00
Pavel Kunyavskiy 5a4a78f2c6 [K/N] Throw exception on abstract class instantiation in ObjC 2021-10-08 11:39:43 +00:00
Pavel Kunyavskiy 68445deae8 [K/N] Forbid calling sealed class constructor from objc 2021-10-08 11:39:42 +00:00
Ilya Goncharov 669965d56c [JS IR] Generate main method call only for main module 2021-10-08 10:08:57 +00:00
Dmitry Petrov 27860ef008 JVM_IR KT-49136 don't optimize null checks on fields and calls 2021-10-08 08:55:24 +03:00
Svyatoslav Kuzmich 9ef899ef10 [Wasm] Reuse Callable reference and SAM lowerings from JS 2021-10-08 07:24:41 +03:00
Svyatoslav Kuzmich fbbd436e54 [Wasm] Log interfaces implementations ids in type info logging 2021-10-08 07:24:41 +03:00
Svyatoslav Kuzmich 1ed2748334 [Wasm] Generate [K][Suspend]FunctionN on demand and support big arity 2021-10-08 07:24:41 +03:00
Simon Ogorodnik 64a30cd95e KT-44765: Fix classloader leak in CoreJrtFileSystem 2021-10-08 04:09:56 +03:00
Svyatoslav Kuzmich aa5f98f919 [JS] Remove KJS_WITH_FULL_RUNTIME for tests that already have WITH_RUNTIME 2021-10-07 22:36:18 +03:00