Commit Graph

1868 Commits

Author SHA1 Message Date
Alexey Andreev 0a240b2a3a KT-12976: add code to generated JS modules that detects wrong module order and produces human-friendly error message. Fix #KT-12976 2016-11-21 12:57:11 +03:00
Dmitry Petrov d665193c20 Type alias constructors for inner classes in expressions ans supertype lists. 2016-11-21 10:25:51 +03:00
Dmitry Petrov 4c47d77a9f Report error on non-top-level type aliases (unsupported in 1.1).
Get rid of nested type aliases in project.
2016-11-21 10:25:51 +03:00
Ilya Gorbunov ac2c2aa959 Remove collectionsMax once again. 2016-11-18 19:12:05 +03:00
Ilya Gorbunov 0dbaf2a605 Make toTypedArray reified again and thus inline, rewrite copyToArray and copyToArrayImpl in kotlin. 2016-11-18 19:12:05 +03:00
Anton Bannykh 2f0bccfb09 JS: chained reified function calls (KT-12527) fixed 2016-11-18 13:48:16 +03:00
Zalim Bashorov ef11393462 KJS: add multimodule version of inheritFromRenamedNativeClass 2016-11-17 16:22:31 +03:00
Zalim Bashorov 8c630954a8 Minor: fix typo in file name 2016-11-17 16:22:30 +03:00
Zalim Bashorov e1248f8f0b KJS: don't copy members from native interfaces 2016-11-17 16:22:29 +03:00
Zalim Bashorov 01d10a9592 KJS: remove no longer valid test 2016-11-17 16:22:28 +03:00
Zalim Bashorov aa2a4f0794 KJS: implement Throwable in Kotlin instead of use it as alias of JS Error
* Make it an inheritor of JS Error. Otherwise, Chakra engine doesn't fill stack trace of exception; In other engines inheritance has some good effects too.
* Copy all properties from internally created instance of JS Error

 #KT-6985 Fixed
 #KT-2328 Fixed
 #KT-8019 Fixed
 #KT-10911 Fixed
2016-11-17 16:22:27 +03:00
Zalim Bashorov a03e22e774 KJS: fix refering to native nested class 2016-11-17 16:21:16 +03:00
Zalim Bashorov bd90b4e051 KJS: don't overwrite prototype of native classes when inheriting from them 2016-11-17 16:17:44 +03:00
Zalim Bashorov c25dfe997c KJS: fix inheritance from renamed native classes 2016-11-17 16:17:43 +03:00
Anton Bannykh 0dc9121a91 JS property accessors inlining (KT-13456) 2016-11-17 15:25:29 +03:00
Anton Bannykh 5b078fb236 JS: augmented assignments and increments (KT-14810) fixed 2016-11-17 13:21:49 +03:00
Alexey Andreev d2fdc7ffc0 JS: when both clauses of if become empty during optimization, remove if entirely. Make condition and then clause of JsIf non-nullable. Fix #KT-13912 2016-11-17 12:20:37 +03:00
Alexey Andreev e2dc7ba37e JS: coroutines: fixes after code review 2016-11-16 19:29:39 +03:00
Alexey Andreev d41d09ffc4 JS: add metadata for generated continuation classes to properly implement RTTI 2016-11-16 19:29:37 +03:00
Alexey Andreev 4c0eb8fc31 JS: prevent generation of excessive this.$result statements in coroutines 2016-11-16 19:29:36 +03:00
Alexey Andreev 0015f7518e JS: improve dead code elimination to handle switch case bodies 2016-11-16 19:29:35 +03:00
Alexey Andreev 2cc299fb40 JS: refactor coroutines to support inlining of suspend functions 2016-11-16 19:29:34 +03:00
Alexey Andreev e56d735723 JS: refactor how last argument to suspend call is substituted 2016-11-16 19:29:33 +03:00
Alexey Andreev 050a1e782e JS: fix translation of call to suspend function with optional parameters 2016-11-16 19:29:33 +03:00
Alexey Andreev 3e436d42bf JS: allow to call non-suspend controller functions from coroutine lambda 2016-11-16 19:29:32 +03:00
Alexey Andreev 23bddac4fe JS: fix translation of catch blocks so that all references to exception variable are referentially equivalent to each other 2016-11-16 19:29:31 +03:00
Alexey Andreev c5999e8375 JS: prototyping coroutines 2016-11-16 19:29:27 +03:00
Ilya Gorbunov 4769ed5f79 Fix imports in tests: do not use java.util.* stuff 2016-11-16 18:47:42 +03:00
Ilya Gorbunov e1cf89a956 Remove also Long/Char mixing binary operation intrinsics 2016-11-14 20:40:32 +03:00
Ilya Gorbunov 61e83a4db5 Remove obsolete range-related intrinsics from JS translator. 2016-11-14 20:40:32 +03:00
Alexey Andreev 6649e0cb82 JS: remove intrinsics for progressions 2016-11-11 16:26:40 +03:00
Alexey Andreev dcb95eb9f0 JS: refactor range and progression related intrinsics 2016-11-11 16:26:40 +03:00
Alexey Andreev 5ef8879aae JS: fixes after code review 2016-11-11 16:26:39 +03:00
Alexey Andreev a72ea64142 JS: fix translation of lambdas in public inline functions; fix AMD emulation for Ant test 2016-11-11 16:26:39 +03:00
Alexey Andreev 6791ed7bf3 JS: fix obsolete tests 2016-11-11 16:26:38 +03:00
Alexey Andreev a452260da6 JS: simplify merging kotlin.js 2016-11-11 16:26:38 +03:00
Alexey Andreev ac4bfc645e JS: refactor translation of callable references to top-level properties 2016-11-11 16:26:38 +03:00
Alexey Andreev 0252fe57af JS: refactor flat declaration generator. Add more tests on inter-module dependencies 2016-11-11 16:26:37 +03:00
Alexey Andreev cc38bd3146 JS: refactor code that exports local declaration from current module 2016-11-11 16:26:37 +03:00
Alexey Andreev f244bbaae3 JS: change how declarations are exported from modules. Change how parts of kotlin.js merged 2016-11-11 16:26:36 +03:00
Alexey Andreev 3d9beb15da JS: fix translation of !! operation 2016-11-11 16:26:36 +03:00
Alexey Andreev cacd917350 JS: fix translation of extension properties 2016-11-11 16:26:36 +03:00
Alexey Andreev 0f87703c87 JS: rewrite code that copies interface members with implementation to subtypes 2016-11-11 16:26:35 +03:00
Alexey Andreev 8eca8efae5 JS: fix some bugs:
1. Fix translation of FQN in inline lambdas
2. Fix StringBuilder.length
3. Workaround order of declaration of names for imported declarations
2016-11-11 16:26:35 +03:00
Alexey Andreev fd158a6922 JS: refactor Dart AST 2016-11-11 16:26:34 +03:00
Alexey Andreev bec1e526a1 JS: fix generation of bridge methods for non-abstract methods inherited from interfaces 2016-11-11 16:26:34 +03:00
Alexey Andreev bb57eaef96 JS: fix some minor issues in new flat translator 2016-11-11 16:26:34 +03:00
Alexey Andreev 06476402a2 JS: support enums in flat JS structure 2016-11-11 16:26:33 +03:00
Alexey Andreev 38a3f4af80 JS: fix Kotlin.isType for case of traits 2016-11-11 16:26:32 +03:00
Alexey Andreev 20396b0e5f JS: fix inlining in a new flat JS generator 2016-11-11 16:26:32 +03:00