Alexander Korepanov
c13cc38758
[JS IR] Remove unused code
2023-11-22 09:21:44 +00:00
Pavel Kunyavskiy
e80d4b1d60
[IR] Move IrDeclaration.isExpect to IrUtils
...
^KT-62292
2023-11-20 08:31:41 +00:00
Pavel Kunyavskiy
faaefbd8e7
[IR] Move .parents and .parentsWithSelf to IR utils
...
^KT-62292
2023-11-20 08:31:41 +00:00
Artem Kobzar
1832f5a3f7
[K/JS] Introduce the ability to consume platform-specific cli arguments inside the main function ^KT-16981 Fixed
2023-11-18 11:01:34 +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
Ivan Kylchik
b3e485c649
[JS_IR] Try to find generated default stub fun before creating a new one
...
This change is required to support a new approach to lowering
execution. There will be no more guarantee that every module
will execute `JsDefaultArgumentStubGenerator` lowering before
moving on.
#KT-63073
2023-11-16 12:03:41 +00:00
Ivan Kylchik
917b9481c1
[JS_IR] Drop old comment from loweringList
...
This comment is not needed anymore after
64158a8a2f
2023-11-16 12:03:41 +00:00
Ivan Kylchik
1db595c676
[JS_IR] Reuse common makeIrModulePhase to create lowerings
...
#KT-63073
2023-11-16 12:03:41 +00:00
Ivan Kylchik
0a6f711a41
[JS_IR] Use IrModuleFragment as input to lowering instead of iterable
...
This way we will be able to reuse existing utils
to create a lowering.
#KT-63073
2023-11-16 12:03:41 +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
Iaroslav Postovalov
a3b55cf758
[IR] Drastically simplify the hierarchy of IR origins
...
IrStatementOriginImpl and IrDeclarationOriginImpl were made final
classes to simplify the creation of them (a delegate provider was
added) and to optimize performance when comparing the origins by type
and name
2023-11-13 17:56:09 +00:00
Sergej Jaskiewicz
5a86147e9c
[JS IR] Remove dead code
2023-11-10 12:31:40 +00:00
Alexander Korepanov
ec71fe20e2
[JS IR] Fix file name clashes during JS BE invalidation
2023-10-30 09:14:16 +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
Artem Kobzar
4101d01744
Revert "[K/JS] Fix ES6-classes compilation for objects without constructor generated by plugins"
2023-10-26 09:06:19 +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
Dmitriy Novozhilov
fb8bf19091
[IR] Rename IrSymbolInternals to UnsafeDuringIrConstructionAPI
...
The new name more precisely describes the meaning of this opt-int
2023-10-25 11:32:46 +00:00
Ivan Kochurkin
1827df82c4
Removed useless as casts from compiler code
...
It allows compiling code with K2 and enabled `-Werror`
2023-10-24 20:59:56 +00:00
Alexander Udalov
b5ba9ee671
IR: refactor resolveFakeOverride call sites
...
Split it to 4 functions for clarity: resolveFakeOverride,
resolveFakeOverrideOrFail, resolveFakeOverrideMaybeAbstract,
resolveFakeOverrideMaybeAbstractOrFail. Remove/inline duplicated
utilities and remove unused parameters.
2023-10-23 23:38:47 +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
Artem Kobzar
df14f044cd
[K/JS] Remove unconditional cast to IrClass in KClass expression
2023-10-19 17:34:00 +00:00
Artem Kobzar
d625d9a988
[K/JS] Fix ES6-classes compilation for objects without constructor generated by plugins
2023-10-18 13:29:15 +00:00
Dmitriy Novozhilov
704e2ef5c5
Suppress K2 specific warnings in the codebase
...
^KT-62472
2023-10-18 07:59:27 +00:00
Ivan Kylchik
350ee4be1d
[Native] Replace consequence line and column calls with a single one
2023-10-13 08:50:47 +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
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
Sergej Jaskiewicz
56cb0bf071
[utils] Move atMostOne to core/util.runtime
...
There is nothing backend-specific about this helper function.
2023-09-13 14:25:08 +00:00
Artem Kobzar
2578bfefd5
[K/JS] Add useEsClasses to list of compiler arguments that invalidate IC cache ^KT-61795 Fixed
2023-09-13 09:50:24 +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
Artem Kobzar
bff433f4e9
[K/JS] Support eager initialization for per-file granularity
2023-09-06 09:27:28 +00:00
Dmitriy Novozhilov
697d0d5638
[IR] Mark IrSymbol.owner with OptIn annotation
...
^KT-60923 Fixed
2023-08-16 17:47:29 +00:00
Svyatoslav Kuzmich
432c9fe592
[Wasm] Fix SuspendFunctionKind.DELEGATING bug (KT-60700)
...
When detecting function delegation at the last statement position we
need to make sure that delegating call has unit return type, otherwise
we would try to return non-Unit value from a parent function returning
Unit
^KT-60700 Fixed
2023-08-16 12:47:22 +00:00
Artem Kobzar
4dc0d68288
[K/JS] Fix autoboxing for inlined function ^KT-60785 Fixed
2023-08-11 09:19:51 +00:00
Alexander Korepanov
7a31167e0b
[Common IR] Do not add internal methods to overrides
...
[JS IR] Use a module name in JsFunctionSignature for internal methods
^KT-60635 Fixed
2023-08-09 16:35:59 +00:00
Artem Kobzar
2c4569568b
[K/JS] Fix importing behavior for external interfaces in case of implementing them
2023-08-03 13:10:03 +00:00
Artem Kobzar
cd840997b1
[K/Wasm] Rework Wasm enumEntriesIntrinsic declaration to fix stdlib compilation
2023-08-01 11:53:14 +00:00
Artem Kobzar
12715c062d
[K/JS] Reexport exported declarations in a proxy module file with per-file compilation
2023-08-01 09:42:33 +00:00
Artem Kobzar
08bd0d6ce1
[K/JS] Generate tests for K2 + ES-classes compilation
2023-08-01 09:16:20 +00:00
Artem Kobzar
85ee2d71d2
[K/JS] Remove FILE target from JsName annotation and use the new experimental JsFileName annotation instead
2023-07-27 09:44:28 +00:00
Artem Kobzar
029c71ebb1
[K/JS, K/Wasm] Implement enumEntries top-level function ^KT-59712 Fixed
2023-07-27 09:43:01 +00:00
Artem Kobzar
044c0adae7
[K/JS] Implement an incremental compilation for the per-file granularity
2023-07-19 15:57:56 +00:00
Ivan Kylchik
ca8db7d0b8
[IR] Move toIrConst method into common IrUtils file
...
This method is used not only in IR interpreter, so it makes sense to
move it.
2023-07-19 15:12:54 +00:00
Artem Kobzar
e4bdd3560c
[K/JS] Change order of exported properties definition for non ES-classes compilation ^KT-60131 Fixed
2023-07-19 14:33:19 +00:00
Artem Kobzar
b1884456b8
[K/JS] Fix initialization issue for objects which annotated with @JsExport and contain nested classes
...
Merge-request: KT-MR-11146
Merged-by: Artem Kobzar <Artem.Kobzar@jetbrains.com >
2023-07-19 10:41:25 +00:00
Artem Kobzar
41f27d19b5
[K/JS, K/Wasm] Generate star imports for external objects with the @JsModule annotation for ES modules
2023-07-18 15:36:19 +00:00
Dmitriy Novozhilov
8ad202eb8b
[IR] Remove descriptor-related methods from SymbolTable
...
Replace them with calls to SymbolTableExtension
2023-07-17 21:02:39 +00:00