Commit Graph

47 Commits

Author SHA1 Message Date
Alexey Andreev 5a984a40e6 Fix JS compiler crash when translating external object fun with vararg
See KT-19793
2017-09-04 15:34:10 +03:00
Anton Bannykh e43a145614 fixup: updated EXPECTED_REACHABLE_NODES 2017-07-19 12:24:09 +03:00
Alexey Andreev 9181140387 Suppress some DCE tests that can't pass 2017-05-26 18:20:21 +03:00
Alexey Andreev e2c2fcf1ff Generate EXPECTED_REACHABLE_NODES directive on JS box tests 2017-05-26 18:20:20 +03:00
Zalim Bashorov 76fa6ad5c2 KJS: switch to using Nashorn instead of Rhino for JS backend tests 2017-04-26 13:07:30 +03:00
Alexey Andreev f82f5d0471 JS: add tests for private external declarations 2017-04-24 18:29:13 +03:00
Alexey Andreev 7077de02e7 Fix passing non-string value to print/println in node.js
See KT-15484
2017-04-11 16:15:25 +03:00
Anton Bannykh 4c6b9b695c JS: mute some tests with extension functions in external declarations 2017-03-03 21:39:40 +03:00
Anton Bannykh 4c808e8691 JS: concat vararg arguments using Kotlin.concat and Kotlin.concatPrimitive functions in order to be binary compatible with (Kotlin PrimitiveArray -> JS TypedArrays) mapping. 2017-02-15 18:58:29 +03:00
Alexey Andreev 0f049a90aa JS: prohibit nested classes, objects and enums in external interface. See KT-16012 2017-02-03 11:09:09 +03:00
Ilya Gorbunov 3be1174824 Replace @native with external in tests 2017-01-27 01:29:15 +03:00
Alexey Andreev 51e5b5aac7 JS: allow to inherit external class from kotlin.Throwable. See KT-15336 2017-01-25 13:51:53 +03:00
Alexey Andreev aedf8bd232 JS: replace noImpl with definedExternally in tests 2017-01-24 20:14:31 +03:00
Alexey Andreev 9aeba1d5cf JS: fix names in stdlib and tests WRT to new mangling algorithm 2017-01-24 20:11:29 +03:00
Anton Bannykh 07bb7ef4d3 JS: extension lambdas translated same as local lambdas (KT-13312 fixed) 2017-01-23 20:09:36 +03:00
Zalim Bashorov d635d7859e KJS: remove obsolete kotlin.modules 2017-01-18 14:40:48 +03:00
Zalim Bashorov 6ea6e4ab98 KJS: move println to kotlin.io; import kotlin.io by default in Default platform 2017-01-18 14:25:36 +03:00
Stanislav Erokhin 0ef1234f2e Added special error for incorrect KClass type in signatures. 2017-01-16 05:44:46 +03:00
Alexey Andreev d2050ace72 JS: refactor generation of functions with optional parameters. Fix #KT-7302, #KT-13888 2017-01-12 18:12:35 +03:00
Alexey Andreev 79ba6a57d6 JS: report errors on different external items:
* data classes
* val/var parameters of primary constructors
* enum entry with body
* anonymous `init {}` block in classes
2016-12-29 16:00:35 +03:00
Alexey Andreev 06e83e895f JS: update backend tests to respect new front-end rules for external declarations 2016-12-29 16:00:31 +03:00
Ilya Gorbunov 6ee8a23ddd JS: Drop native map get/set intrinsics altogether.
MutableMap.set extension operator is now common among stdlib and stdlib-js.
#KT-2323
2016-12-20 18:00:19 +03:00
Alexey Andreev 22ff7c6c45 JS: when translating content of js() function, rename all free references if they point to Kotlin local variable with the same name. See KT-15212 2016-12-17 12:12:36 +03:00
Zalim Bashorov 2277239ab3 KJS: don't export declarations marked as external or annotated by native or library annotations 2016-12-15 14:49:31 +03:00
Alexey Andreev 39de1a7659 JS: generate temporary names for function parameters. Remove tests for js() function that references parameters. Remove such usages of js() function from stdlib 2016-12-12 14:30:45 +03:00
Alexey Andreev fff1af4ff6 JS: allow to inherit external classes with overloaded functions in case we don't override them (see KT-13910). 2016-12-09 15:13:09 +03:00
Alexey Andreev ecb498717a JS: rework diagnostics names. Prohibit external inner classes (see KT-14027) 2016-12-09 15:13:08 +03:00
Alexey Andreev 3882bf7564 JS: prohibit native (external) extension properties and functions. See KT-13896 2016-12-09 15:13:07 +03:00
Alexey Andreev cc819928de JS: prevent Any.equals from mangling 2016-12-09 12:04:31 +03:00
Alexey Andreev d0ffb5bd32 JS: add restrictions to external modifier according to KT-13893 2016-12-08 15:41:42 +03:00
Alexey Andreev 68412ae94f JS: replace all usages of @native annotation with external modifier, in tests, stdlib, etc 2016-12-08 15:41:39 +03:00
Alexey Andreev 46242f4430 JS: when RHS of as cast is non-nullable native interface, check LHS for null 2016-11-25 14:07:30 +03:00
Alexey Andreev 2eb54f234c JS: prohibit passing native interfaces to reified type parameters 2016-11-25 14:07:29 +03:00
Alexey Andreev acf7fcaebf JS: prohibit is checks against native interfaces. Warn about casts to native interfaces. Fix #KT-14037, fix #KT-14038 2016-11-25 14:07:29 +03:00
Alexey Andreev 8b9852edec JS: remove Kotlin.createClass/definePackage/etc functions from stdlib. Reimplement some classes in Kotlin 2016-11-23 12:13:54 +03:00
Alexey Andreev 5ef8879aae JS: fixes after code review 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 f9a392fdec JS: introduce new flat JS declaration structure 2016-11-11 16:26:31 +03:00
Zalim Bashorov 11b2c5fe59 JS: change visibility to internal for library and marker annotations 2016-10-14 19:44:57 +03:00
Alexey Andreev 9c7c82b151 KT-2752: refactor NameSuggestion, change rules for determining name stability and applying mangling 2016-10-08 19:25:50 +03:00
Alexey Andreev aa5d15cff7 KT-2752: minor fixes after code review 2016-10-08 19:25:43 +03:00
Alexey Andreev 725d13b72e KT-2752: fix JsName with explicit use target. Add some tests for JsName with use targets 2016-10-08 19:25:33 +03:00
Alexey Andreev 6e1a0901ac KT-2752: add checkers for inconsistent usage of JsName 2016-10-08 19:25:31 +03:00
Alexey Andreev f70b50b6e2 KT-2752: refactor generation of FQN in JS. Move backend-independent code to generic code in frontend. 2016-10-08 19:25:25 +03:00
Ilya Gorbunov 2aa60adbca Remove 'import java.util' from js tests. 2016-10-03 17:25:26 +03:00
Alexey Andreev 44f7a94380 JS: fix bugs in test environment for mocha.js 2016-09-29 12:00:45 +03:00
Alexey Andreev 9bf124af3f JS: move more test to box tests 2016-09-29 12:00:42 +03:00