Artem Kobzar
790e8843f9
fix(JS_IR): add outer classes resolving inside the function inliner.
2021-10-28 17:34:58 +00:00
Artem Kobzar
7f7aa9a921
feat(Inner Classes): generate typescript type definitions and JS for Inner Classes.
2021-10-28 17:33:41 +00:00
Svyatoslav Kuzmich
f7d3cb269f
[Wasm] Support passing lambdas from Kotlin to JS
2021-10-28 18:47:38 +03:00
Svyatoslav Kuzmich
766377a041
[Wasm] Remove WasmForeign annotation
...
No longer needed since external interfaces are supported
2021-10-28 18:47:38 +03:00
Roman Artemev
d809e260cb
[KLIB] Support DefinitelyNotNull type in KLIB
...
- add proto message
- serialize/deserialize
2021-10-28 18:03:11 +03:00
Roman Artemev
29728efbf7
[PSI2IR] Support DefinitelyNotNull type translation in Psi2Ir
2021-10-28 18:03:11 +03:00
Roman Artemev
101afded69
[IR] Introduce IrDefinitelyNotNullType in IR
...
- support it in render
- support in IR copy
- KEEP-268
2021-10-28 18:03:09 +03:00
Jinseong Jeon
2dc2a90755
Introduce an API to convert TypeConstructorMarker to TypeParameterMarker
2021-10-28 12:54:45 +03:00
Sergej Jaskiewicz
a367b91aa1
[IR] [Refactoring] Add toString and String::plus to IrBuiltins
...
Also use `OperatorNameConventions` constants instead of magic strings
2021-10-28 08:35:11 +00:00
Ilya Chernikov
cb513ee333
IR: fix ACCIDENTAL_OVERRIDE reporting on annotation implementations
2021-10-27 22:17:42 +02:00
Ilya Chernikov
5bdda9c7f8
Implement suppression cache based on IR tree, use it in reporter
2021-10-27 22:17:42 +02:00
Ilya Chernikov
ea1edc2bd9
Add equality to diagnostic context, simplifying deduplication
2021-10-27 22:17:41 +02:00
Ilya Chernikov
fc176e9845
Refactor IR reporting and infrastructure
2021-10-27 22:17:41 +02:00
Ilya Chernikov
5446168770
Add path to FirFile to pass it to the DiagnosticContext
2021-10-27 22:17:40 +02:00
Ilya Chernikov
1e056a7aa8
Report IR errors via new diagnostic infrastructure
2021-10-27 22:17:40 +02:00
Ilmir Usmanov
7ec9d608cc
Use original instead of lowered suspend function
...
as a key to view. Otherwise, SAM conversions will break.
#KT-49294 Fixed
2021-10-26 14:14:12 +00:00
Sergej Jaskiewicz
b27b202c28
[IR] Deduplicate StringConcatenationLowering in K/N
...
The common lowering is updated based on
fac1cf189c
2021-10-26 08:44:52 +00:00
Ivan Kochurkin
c13822a2c5
Optimize containsKey -> get pattern
2021-10-25 21:21:44 +03:00
Ivan Kochurkin
15d23f2a72
[FIR2IR] Fix applying of equals intrinsics
2021-10-25 21:21:39 +03:00
Dmitry Petrov
45a4cea655
IR KT-49372 cache progression loop parameters if their values can change
2021-10-25 19:03:13 +03:00
Roman Artemev
9f52326d14
[JS IR] Fix default arguments in suspend functions
...
Don't forget to remap parameter references in default arg expressions
The issue originally discovered in kotlinx.coroutines tests.
- add test
2021-10-25 12:56:16 +00:00
Roman Artemev
1d58fd159a
[IR] Replace adhoc remappers to common one ValueRemapper
2021-10-25 12:56:16 +00:00
Roman Artemev
9490f9da43
[IR] Add ValueRemapper to avoid reimplementing it each time
2021-10-25 12:56:16 +00:00
Ivan Kylchik
3e1563d46e
[JS TESTS] Rename JS_TESTS module to main
2021-10-25 00:14:19 +03:00
Dmitry Petrov
6e9cbf52b1
JVM_IR make $deserializeLambda$ method synthetic
2021-10-23 11:21:26 +03:00
Dmitry Petrov
1dbbe22c8c
JVM_IR serializable indy method references
2021-10-23 11:21:25 +03:00
Dmitry Petrov
eec16b83c6
Minor: reformat and fix warnings
2021-10-23 11:21:23 +03:00
Svyatoslav Kuzmich
4fc461a2ff
[Wasm] Imporove external interface support
...
* Support boxing/unboxing when casting to Any
* Support ===, equals, hashCode, toString
* Support adapting String in interop boundary
2021-10-23 01:26:12 +03:00
Dmitry Petrov
d5f6674d2d
JVM_IR KT-49335 run RepeatedAnnotationLowering per module
...
Otherwise, we drop annotation constructors in AnnotationLowering,
which breaks RAL in case of annotation container declared in different
file.
2021-10-21 21:22:36 +03:00
Ilya Goncharov
f6ba2a958a
[JS IR] No generate exportness for overridden properties
...
[JS IR] Add check on existence of overridden property in tests
^KT-49326 fixed
[JS IR] Add details to comment with exporting properties
^KT-49326 fixed
[JS IR] No generate exportness for overridden properties,
if only no override val -> var
^KT-49326 fixed
Merge-request: KT-MR-4810
2021-10-21 10:52:48 +00:00
Artem Kobzar
876d358fe6
fix(KT-46961): add support of nested external enums.
2021-10-21 06:40:00 +00:00
Artem Kobzar
3dbf996ec6
fix(KT-49225): remove unnecessery boxing.
2021-10-21 06:38:42 +00:00
Sergej Jaskiewicz
9e5520bba8
[JS IR & WASM] Fix executing init blocks for enums with nested objects
2021-10-18 13:37:16 +00:00
Anton Bannykh
283e37c741
[JS IR] fix warnings
2021-10-15 20:14:54 +03:00
Anton Bannykh
c2f7ed2fff
[JS IR] added a directive to skip IC checks in IR
2021-10-15 20:14:53 +03:00
Anton Bannykh
94ed6a1dbd
[JS IR] bring back old ir2js to work alongside with the new one
...
Should be removed when we're sure the new one is OK
2021-10-15 20:14:53 +03:00
Anton Bannykh
1d42b6cb3f
[JS IR] make InnerClassesLowering.kt work with abscent bodies
2021-10-15 20:14:52 +03:00
Anton Bannykh
546ce501cb
[JS IR] run IC box tests
2021-10-15 20:14:51 +03:00
Anton Bannykh
b1b88a0d11
[JS IR] JS AST serialization
2021-10-15 20:14:50 +03:00
Anton Bannykh
95ab5e1b7e
[JS IR] generate JS separately for each file and link at the end
...
Name clashes are handled as a post-processing step
2021-10-15 20:14:50 +03:00
Anton Bannykh
936383254a
[JS IR] explicitly mark JsName's temporary or not
2021-10-15 20:14:49 +03:00
Anton Bannykh
7e7c84fcfb
[JS IR] move fragment generation closer to the beginning
2021-10-15 20:14:48 +03:00
Anton Bannykh
b1b263615c
[JS IR] handle exports per-file
2021-10-15 20:14:47 +03:00
Anton Bannykh
aec743d7a6
[JS IR] handle tests per-file
2021-10-15 20:14:47 +03:00
Anton Bannykh
9f2762cfa6
[JS IR] handle main function per-file
2021-10-15 20:14:46 +03:00
Anton Bannykh
1af1d13cf3
[JS IR] split resulting code into fragments
2021-10-15 20:14:45 +03:00
Anton Bannykh
d595264cc8
[JS IR] move JsGenerationContext towards it's use
2021-10-15 20:14:43 +03:00
Svyatoslav Kuzmich
0f66f85cf9
[Wasm] Support main function
2021-10-15 13:58:55 +03:00
Dmitry Petrov
af18b10da9
JVM_IR KT-49203 generate stubs for not found classes
2021-10-15 12:15:49 +03:00
Igor Laevsky
50ca86838f
[WASM] Fix build
2021-10-14 17:24:07 +03:00