Anton Bannykh
ead8379c50
JS: add -Xmetadata-only flag for JS common code modules (KT-33142 fixed)
2019-09-27 19:12:03 +03:00
Anton Bannykh
b4917ec816
JS: remove unconditional as SimpleType cast
...
This is a workround for a bug introduced in the typeOf
support
2019-09-27 16:55:10 +03:00
Svyatoslav Kuzmich
7592048437
[JS] Support typeOf
2019-09-25 18:12:55 +03:00
Roman Artemev
0040298eac
Fix master
...
- improve assertion message
- compare correct file paths
- fix C JS BE testData
2019-09-04 14:37:14 +03:00
Roman Artemev
90504c797a
[IR SERIALIZATION] Add tests about klib linkage
2019-09-03 14:21:31 +03:00
Svyatoslav Kuzmich
9594e9b3b1
[JS IR BE] Initial export generation
2019-08-30 13:15:37 +03:00
Svyatoslav Kuzmich
6e6ffa12a6
[WASM] Initial infrastructure
...
- New module ":compiler:backend.wasm"
- Initial compiler infra (driver, phaser, context)
- Subset of Wasm AST
- Skeleton of IR -> Wasm AST
- Wasm AST -> WAT transformer
- Testing infra
- SpiderMonkey jsshell tool
2019-08-22 15:59:54 +03:00
Roman Artemev
46b98a1e98
[JS BE] Make sourceMap generation more precise
...
- Don't produce mapping for closing bracket in case of expressionBody
- Map Kt*Function declaration into corresponding js fun declaration
- Update test data & add new test
2019-07-24 18:56:40 +03:00
Roman Artemev
af45e1c5dc
[JS BE] Do not produce source mapping for fake KtElement
...
Fix [KT-26701], [KT-12935]
2019-07-17 10:21:34 +03:00
Roman Artemev
efafb6585e
[JS IR BE] Refactored js("...") function
...
- support object expression
- do not wrap in function in statement-level position
- support implicit return
- code clean up
2019-07-11 18:00:28 +03:00
Roman Artemev
d4fb76c1da
[JS IR BE] Fix overriding property of Throwable
2019-07-09 10:40:01 +03:00
Roman Artemev
d9c6d38715
[JS IR BE] Fix private members lowering
...
- visit over file instead of class
2019-07-09 10:40:01 +03:00
Roman Artemev
8a569cc698
[JS IR BE] Do not create $default stub for external function and any its fake override
2019-07-04 22:59:12 +03:00
Svyatoslav Kuzmich
a2625c7bc8
[JS IR BE] Don't render null messages in Throwable
...
Set message property to 'undefined' to make Error.prototype.toString
skip it
2019-07-04 18:33:23 +03:00
Svyatoslav Kuzmich
871180cdc0
[JS IR BE] Fix setting names of Throwable subclasses without primary constructor
2019-07-03 20:37:49 +03:00
Anton Bannykh
208c8f9339
JS: fix bootstrap
2019-07-01 20:22:05 +03:00
Svyatoslav Kuzmich
69962cbf8c
[JS IR BE] Add JsExport annotations
2019-07-01 18:55:41 +03:00
Anton Bannykh
fadeac083f
JS: fix reified T::class for primitive T (e.g. Int) (KT-32215 fixed)
2019-06-28 13:49:22 +03:00
Svyatoslav Kuzmich
0b19a4a32b
[JS IR BE] Initial version of member namer
2019-06-21 17:02:01 +03:00
Ilya Gorbunov
aa69933ee0
Update EXPECTED_REACHABLE_NODES
...
DCE doesn't remove DurationUnit and some other kotlin.time stuff in these cases
2019-06-18 04:02:36 +03:00
Roman Artemev
5686de7e09
[JS IR BE] Make kotlinx.io compile
...
- Fix expect/actual default arguments
- Fix dynamic type in inliner
- Fix external varargs
2019-05-31 13:14:43 +03:00
Anton Bannykh
c3170d1908
JS: cache metadata, grouped by package FQN
2019-05-28 23:33:17 +03:00
Anton Bannykh
c1f69ca8d6
JS: prepare to cache package metadata
2019-05-28 23:33:17 +03:00
Anton Bannykh
052ddd60ce
JS: support callable references on suspend functions (KT-30987 fixed)
2019-05-28 19:13:08 +03:00
Dmitry Savvinov
9d0f518d62
Rename PlatformDependentCompilerServices -> PlatformDependentAnalyzerServices
2019-05-28 13:08:09 +03:00
Dmitry Savvinov
f2a0a809f1
[Platform API] Split TargetPlatform into lightweight TargetPlatform and CompilerServices
...
This decouples simple data (TargetPlatform) from other subsystem-specific
logic (like default imports, built-ins, etc.).
Aside from purely aesthetic improvements, it also makes it easier
to move 'TargetPlatform' into core (see next commits)
2019-05-28 13:08:06 +03:00
Svyatoslav Kuzmich
30ada0ccbb
[JS] Fix type in vararg test
2019-05-24 11:50:46 +03:00
Svyatoslav Kuzmich
e9ceee388e
[JS IR BE] Don't transform toString with extension receiver
2019-05-21 19:19:31 +03:00
Svyatoslav Kuzmich
3153a7dd7e
[JS IR BE] Fix boolean and/or generation
2019-05-21 19:19:31 +03:00
Svyatoslav Kuzmich
b8bbcb3f93
[JS IR BE] Copy type metadata for Boolean, Char and Long varargs
2019-05-21 19:19:31 +03:00
Svyatoslav Kuzmich
59617c97b4
[JS IR BE] Fix VarargLowering
...
- Enable empty vararg transformation for all IrFunctionAccessExpression
- Fix empty vararg boxing
- Refactor inline class boxing logic
- Fix types of generated expressions
2019-05-21 19:19:31 +03:00
Roman Artemev
fabd306437
[JS IR BE] Fix varargs for inline arrays
2019-05-16 19:27:41 +03:00
Roman Artemev
cd3fd60dd7
[JS BE] Extract backend specific code from shared stdlib sources
2019-05-16 19:27:41 +03:00
Svyatoslav Kuzmich
23a214710b
[JS IR BE] Add Unit return type to function signature
2019-05-15 14:09:02 +03:00
Roman Artemev
db5396c1c2
[JS IR BE] Fix main function detector
...
- Do not consider extension functions as main candidate
2019-05-13 15:26:09 +03:00
Svyatoslav Kuzmich
824c51e7f0
[JS IR] Add stdlib regression tests
2019-05-06 19:34:25 +03:00
Svyatoslav Kuzmich
0de1242f68
[JS IR BE] Unmute passed tests
2019-05-06 19:34:25 +03:00
Roman Artemev
023306b1b3
[JS IR BE] Add tests for main function
2019-04-26 17:04:28 +03:00
Roman Artemev
5bd3bcd237
[JS IR BE] Support main function
...
* Implement IR-based main function detector
2019-04-26 17:04:28 +03:00
Dmitry Gridin
37c856290f
Fix minor compile warnings
2019-04-25 19:47:39 +07:00
Alexander Udalov
0659d0cba9
JS: do not use getBuiltInsModule to compute module name
...
The intention of this code was to use the name "kotlin" for the builtins
module, in case we're using builtins loaded from the compiler class
loader (whose module is created in
`KotlinBuiltIns.createBuiltInsModule`). However,
`getBuiltIns().getBuiltInsModule()` may refer not necessarily to the
builtins module, but also to any valid module where the builtins are
visible from, therefore its name would be computed incorrectly. Use the
module name instead to determine if it's a synthetic builtins module
created in `createBuiltInsModule`
2019-04-25 14:42:43 +02:00
Svyatoslav Kuzmich
e30bdb8dc9
Fix hanling module names that require escaping
2019-04-25 03:54:17 +03:00
nikita.movshin
65244b4bea
Update copyright.
...
Change the copyright from "JetBrains s.r.o." to
"JetBrains s.r.o. and Kotlin Project contributors"
Update only 2 lines copyright.
2019-04-23 20:09:22 +03:00
Anton Bannykh
c6d177b467
JS: don't remove imports only used for fake overrides (KT-31007 fixed)
2019-04-17 11:41:47 +03:00
Svyatoslav Kuzmich
977d3ef840
[JS IR BE] New name generator
2019-04-13 14:19:36 +03:00
Svyatoslav Kuzmich
e52ae38cf5
[JS IR BE] Minor: Use proper trow in js compiler test runtime
2019-04-13 14:17:59 +03:00
Anton Bannykh
9b5c8bbac9
JS: switch off inlined local declaration deduplication (KT-30877 fixed)
...
(cherry picked from commit 681e8dd9682afdea822af8e0ad76c9242831e639)
2019-04-08 21:22:43 +03:00
Anton Bannykh
b7ffdb9fde
JS IR: support kotlin.test
2019-04-05 12:30:21 +03:00
Anton Bannykh
b61a520da9
[JS IR BE] unmute tests
2019-03-15 14:07:53 +03:00
Svyatoslav Kuzmich
41a45d98e7
[JS IR BE] Regenerate & unmute tests
2019-03-15 13:53:23 +03:00