Commit Graph

3257 Commits

Author SHA1 Message Date
Artem Kobzar ee2aa6d67f [K/JS] Fix interfaces inside TypeScript definitions if they have only an external interface parent ^KT-64708 Fixed
Merge-request: KT-MR-14665
Merged-by: Artem Kobzar <Artem.Kobzar@jetbrains.com>
2024-03-01 09:37:00 +00:00
Artem Kobzar 1c2570ed7e [K/JS] Fix Companion object overriding problem inside TypeScript Definitions ^JBAI-680 Fixed 2024-02-29 17:48:24 +00:00
Artem Kobzar 6a2e785abd [K/JS, TEST] Enable TS export tests for FIR ^KT-64421 Fixed 2024-02-28 16:52:27 +00:00
Artem Kobzar 3429cbd321 [K/JS] Support companion objects in external and exported declarations 2024-02-27 16:30:13 +00:00
Artem Kobzar be47632609 [K/JS] Optimize logical operators generating 2024-02-23 15:16:31 +00:00
Alexander Korepanov 4e62400f6f Revert "[FIR2IR] Set proper offsets for generated data class members"
This reverts commit b33798d65a.

Reverted because of KT-58215


Co-authored-by: Aleksandr Korepanov <Alexander.Korepanov@jetbrains.com>


Merge-request: KT-MR-14328
Merged-by: Anton Bannykh <Anton.Bannykh@jetbrains.com>
2024-02-13 09:52:09 +00:00
Igor Yakovlev be6b9e8a9a [Wasm] Support lazy associated object initialisation
Fix #KT-63939
2024-02-08 14:15:17 +00:00
vladislav.grechko f318b5969d Erase non-reified type parameters by-default when inlining.
Substitution of type arguments to non-reified type parameters may lead
to accidental reification, which should not be done (see ^KT-60174 for
examples). So, we should erase them, except the few cases.

^KT-60174: Fixed
^KT-60175: Fixed
2024-01-26 18:31:20 +00:00
Anastasiia Spaseeva 945f602b91 Revert "[Wasm] Support lazy associated object initialisation"
This reverts commit 552ee1ee38.
2024-01-25 14:11:56 +01:00
Igor Yakovlev 552ee1ee38 [Wasm] Support lazy associated object initialisation
Fix #KT-63939
2024-01-24 16:24:44 +00:00
Artem Kobzar 8d1a90c23c [K/JS] Support essential Kotlin collections (List, MutableList, Set, MutableSet, Map, MutableMap) for exporting into JS
^KT-34995 Fixed
^KT-44871 Fixed
2024-01-24 11:14:46 +00:00
Alexander Korepanov 3dd4a0d868 [JS FIR] Add JS_NAME_CLASH tests for constructors
^KT-64867 Related
2024-01-23 10:30:10 +00:00
Alexander Korepanov f5d0c22736 [K2 JS] Unmute and link to issue some JS K2 tests 2024-01-18 15:48:55 +00:00
Sergej Jaskiewicz 61e957fc00 [JS] Mute the EXPORTING_JS_NAME_CLASH_ES diagnostic in TS export tests
This diagnostic started to appear after
51c920af01e3d583c552224a529abe1f6e5fcf16.
2024-01-12 15:59:28 +00:00
Nikolay Lunyak 9a598026c8 [FIR JS] Reproduce KT-64548
Running the FIR tests leads to the
crash.

^KT-64548
2024-01-12 13:42:23 +00:00
Alexander Korepanov 6df0e0c847 [JS FIR] Enable FirJsLineNumberTests for FIR
^KT-64426 Fixed
2024-01-10 19:02:15 +00:00
Alexander.Likhachev 60080e8bb8 [Build] Remove redundant trove4j compileOnly dependencies
^KTI-1135 In Progress
2024-01-10 11:29:25 +00:00
Artem Kobzar 2530cba82a [K/JS] Compile Kotlin coroutines as JS generator ^KT-63038 Fixed 2023-12-18 17:13:07 +00:00
Alexander Korepanov 41ebe498f2 [JS IR] Explicitly cast to a string all types except specific ones
^KT-62763 Fixed
2023-12-12 09:53:19 +00:00
Alexander Korepanov 70d99e1964 [JS IR] Add tests for string template with valueOf
^KT-62763
2023-12-12 09:53:19 +00:00
Artem Kobzar 98186ec283 [K/JS] Add ES6 typescript tests + fix a few bugs for it 2023-11-30 13:37:06 +00:00
Artem Kobzar 6615b77213 [K/JS] Rework symbol hash calculation to make IC works with @JsExport and @JsName changes 2023-11-27 13:49:56 +00:00
Artem Kobzar 33ab1871c7 [K/JS] Fix coroutines but turn back the fix for coroutines intrinsics intercepted and releaseIntercepted 2023-11-22 18:10:08 +00:00
Alexander Korepanov bf54fda8ec [JS Test] Add a test case
Add a test case for a suspend lambda
with a user-defined value class.

^KT-62077 Fixed
2023-11-22 16:29:54 +00:00
Nikolay Lunyak 427c067cd8 [FIR] Forbid typeRef-named labels without +ContextReceivers
^KT-63068 Fixed
2023-11-22 13:22:45 +00:00
Alexander Korepanov 85b2daf41d [JS IR] Add reflection tests 2023-11-22 09:21:44 +00:00
Nikolay Lunyak f12ecb3011 [FIR2IR] Avoid converting arguments of dynamic array set twice
^KT-63593 Fixed


Merge-request: KT-MR-13152
Merged-by: Nikolay Lunyak <Nikolay.Lunyak@jetbrains.com>
2023-11-22 07:39:46 +00:00
Artem Kobzar ff50d40b32 [K/JS] Rework kotlin tests compilation to make it works with per-file granularity ^KT-61525 Fixed 2023-11-16 19:02:04 +00:00
Artem Kobzar 890fbd6b0b [K/JS] Process JS-specific returnable blocks before the state machine building
^KT-60785 Fixed
^KT-63207 Fixed
2023-11-16 13:25:51 +00:00
Artem Kobzar f4d088a886 [K/JS] Don't add nested classes generated by plugins into ExportModel for interfaces ^KT-63184 Fixed 2023-11-15 10:21:22 +00:00
Artem Kobzar 82bca7a04f [K/JS] Rework member-exportability check in a right way ^KT-61957 Fixed 2023-11-15 10:18:05 +00:00
Ilya Goncharov 11b7c35eab All tasks related to typescript generation made configuration avoidance compatible
^KTI-1471 fixed
2023-11-14 16:53:23 +00:00
Artem Kobzar bec434d534 [K/JS] Save nullability from the original type of value parameters ^KT-63013 Fixed 2023-11-14 10:40:07 +00:00
Mikhail Glukhikh 4913c38e98 FIR2IR: insert spread for named argument against primitive vararg
#KT-60312 Fixed
2023-11-13 16:23:26 +00:00
Alexander Korepanov 0d7de87e2e [JS IR test] Add a test for invalidation with a src name chash 2023-10-30 09:14:16 +00:00
Alexander Korepanov 73bf7fa506 [JS IR test] Add a simple multiplatform invalidation test 2023-10-30 09:14:15 +00:00
Alexander Korepanov 91edbeb747 [JS IR] Add tests for checking constant inlining with JS IR IC
^KT-62425
2023-10-26 19:22:14 +00:00
Alexander Korepanov 4ebfed04d3 [JS IR] Add tests for JS code KLIB diagnostics
^KT-62425
2023-10-26 19:22:14 +00:00
Alexander Korepanov 78aa34b3e8 [JS IR] Fix JS box tests
^KT-62425
2023-10-26 19:22:14 +00:00
Alexander Korepanov 188cdf2f98 [JS IR] Allow constant inlining in JS IR
Fixed the incremental compilation issue,
which had prevented enabling const inlining during constant
evaluation and folding a constant expression with JS code.

^KT-62425
2023-10-26 19:22:14 +00:00
Artem Kobzar 6cd42eeb71 [K/JS] Fix reexport with CommonJS and incremental compilation 2023-10-26 09:58:35 +00:00
Ilya Goncharov 573bc34b56 [JS] Invoke processing separately for suspend and non-suspend function
^KT-62771 fixed
2023-10-25 13:28:58 +00:00
Artem Kobzar 4a042dafef [K/JS] Fix nameBindings for ES-modules after the ES-modules external declarations optimization 2023-10-20 14:04:39 +00:00
Mikhail Glukhikh 13ae4abe52 FIR2IR: use elvis temporary variable name closer to PSI2IR
Related to KT-61983
2023-10-13 15:42:57 +00:00
Artem Kobzar eef57f216c [K/JS] Rework main function call to support it in per-file 2023-10-04 12:13:20 +00:00
Artem Kobzar 1062ca9646 [K/JS] Add ingored test for KT-60785 fix until the rr/vgrechko/accidental-reification-2 will be merged 2023-09-28 15:15:04 +02:00
Artem Kobzar 857c07fa25 [K/JS] Fix corutines build for 1.9.20
This reverts commit f0d6471a8bcbdfc52ddc840a6383032ef86976d1.
2023-09-28 15:15:04 +02:00
Artem Kobzar 878452bd2b [K/JS] Implement file merging for clashed file during per-file compilation 2023-09-14 13:14:15 +00:00
Alexander Korepanov f07028959d [FIR JS] Add more tests for JS_NAME_CLASH diagnostic
^KT-61862 Related
2023-09-13 10:54:57 +00:00
Artem Kobzar 7bc521ab92 [K/JS] Reset exceptionState inside coroutines with a finally block ^KT-58685 Fixed 2023-09-12 15:18:16 +00:00