Commit Graph

1642 Commits

Author SHA1 Message Date
Alexey Andreev cb36b61f7f KT-12254 Prevent JsEmptyExpression from getting into initializer JS when compiling code like val x = throw Exception() 2016-05-19 11:41:50 +03:00
Alexey Andreev 4387c31939 KT-8005 Add test to prove the issue is no more reproducible 2016-05-19 11:37:02 +03:00
Alexey Andreev 3cd7dcdb26 KT-8299 Make proper access to private fields in generated methods of data classes 2016-05-19 11:32:22 +03:00
Zalim Bashorov 7b1afd4e6a JS backend: use ResolvedCall when translate super expression and remove some heuristics when translate receivers; generate right receiver when reference to super of outer class; 2016-05-18 17:34:18 +03:00
Alexey Andreev 23a4184e48 Minor style and formatting improvements of CallArgumentsTranslator 2016-05-17 10:33:16 +03:00
Alexey Andreev 2f42f3bdf6 KT-12305 Fix passing single argument to native vararg function 2016-05-17 10:33:15 +03:00
Mikhael Bogdanov 93b342c936 TODO: reuse tests for local delegated properties from JVM backend in JS one 2016-05-13 19:11:22 +03:00
Mikhael Bogdanov e207b56009 Support increment and '+=' on local delegated properties in JS backend 2016-05-13 19:11:21 +03:00
Dotlin 0e071b4748 Delegated Properties: Code generation for local properties (JS) 2016-05-13 19:11:20 +03:00
Mikhail Glukhikh e31806e2b5 Code cleanup: redundant modality (minor) 2016-05-13 17:57:12 +03:00
Mikhail Glukhikh 733f3e8025 Code cleanup: type parameters can have in / out variance 2016-05-13 17:57:02 +03:00
Alexey Andreev 826cee58bd KT-11996 Fix issue with referencing outer class in case of inner class constructors and members/properties. Fix issue with referencing outer classes from secondary constructors. Remove unnecessary tests. 2016-05-10 17:41:21 +03:00
Alexey Andreev 1764000bf4 KT-11823 Generate proper argument for closure constructor for this as a free variable. Give some explanation for function that generates closure arguments as well as a clear name. Give explanation to some code in UsageTracker.isSingletonReceiver, augmented by a test case. 2016-05-10 17:41:21 +03:00
Alexey Andreev 12c9a97587 JS/RTTI: minor refactoring of expandInCalls 2016-05-05 17:24:27 +03:00
Alexey Andreev 7ff658414f JS/RTTI: if it's known that T <: X & Y, where T is non-reified type variable, for each a is T check that a is X && a is Y 2016-05-05 17:24:26 +03:00
Alexey Andreev 6454613b51 JS/RTTI: in expressions like a as T when inferred type for a is S, where S <: T, don't generate type checking 2016-05-05 17:24:25 +03:00
Alexey Andreev 0f6a6a3ba4 JS/RTTI. Fix runtime checking against kotlin.CharSequence 2016-05-05 17:24:25 +03:00
Alexey Andreev f52b836f0e JS/RTTI: fix withInlineTurnedOff test 2016-05-05 17:24:24 +03:00
Alexey Andreev 75015f6bfa JS/RTTI: fix compiler crashing when translating expressions like (continue as T) 2016-05-05 17:24:23 +03:00
Zalim Bashorov 3a87049359 JS/RTTI. Fix build and tests 2016-05-05 17:24:23 +03:00
Alexey Tsvetkov 9bb60b48b2 JS/RTTI. Fix run-time type checking against Comparable 2016-05-05 17:24:22 +03:00
Alexey Tsvetkov fcd941ad49 JS/RTTI: removed Kotlin.orNull(Kotlin.isAny) optimization 2016-05-05 17:24:21 +03:00
Alexey Tsvetkov f7af868d4f JS/RTTI: added another cast to reified test 2016-05-05 17:24:20 +03:00
Alexey Tsvetkov a9d5c74ff7 JS/RTTI: Added cast to Array test 2016-05-05 17:24:19 +03:00
Alexey Tsvetkov c99fd179e1 JS/RTTI: simplify cast to Any test 2016-05-05 17:24:19 +03:00
Alexey Tsvetkov cd60a8d207 JS/RTTI: fixed cast to generic type parameter with upper bound different than Any 2016-05-05 17:24:18 +03:00
Alexey Tsvetkov 57fbab9f7c JS/RTTI: (minor) escape code fragments in comments 2016-05-05 17:24:17 +03:00
Alexey Tsvetkov 87659bd95b JS/RTTI: fix nullability check 2016-05-05 17:24:16 +03:00
Alexey Tsvetkov 7a5b4650ad JS/RTTI: use Array.isArray to check array instance 2016-05-05 17:24:16 +03:00
Alexey Tsvetkov ae9a5523e0 JS/RTTI: use typeof f === 'function' to check function instance 2016-05-05 17:24:15 +03:00
Alexey Tsvetkov 7cfe1433c5 JS/RTTI: cast to generic type parameter as to Any 2016-05-05 17:24:15 +03:00
Alexey Tsvetkov 38b0effe15 JS/RTTI: fix cast to Any 2016-05-05 17:24:14 +03:00
Alexey Tsvetkov 2b3ebc7e9f JS/RTTI: support safe casts 2016-05-05 17:24:13 +03:00
Alexey Tsvetkov 3fd387d4a6 JS/RTTI: support unsafe casts
#KT-2670 fixed
2016-05-05 17:24:13 +03:00
Alexey Tsvetkov 427b95f821 JS/RTTI: test that reified is-check works when inline turned off 2016-05-05 17:24:12 +03:00
Alexey Tsvetkov dce0971c52 JS/RTTI: fixed double testing for null for reified 2016-05-05 17:24:11 +03:00
Alexey Tsvetkov 5fdede74a3 JS/RTTI: avoid possible side-effect for is-check on nullable type
#KT-7038 fixed
2016-05-05 17:24:10 +03:00
Alexey Tsvetkov c6cf6a0df7 JS/RTTI: use generation for rtti test 2016-05-05 17:24:10 +03:00
Alexey Tsvetkov 0b9c041d0a JS/RTTI: fixed is-check on nullable reified parameters
#KT-7016 fixed
    #KT-8012 fixed
2016-05-05 17:24:09 +03:00
Valentin Kipyatkov b551886889 Code cleanup: removed redundant semicolons 2016-04-29 11:26:25 +03:00
Mikhail Glukhikh a4be89e5fd JS: unnecessary 'val' removed from constructor 2016-04-27 18:42:04 +03:00
Zalim Bashorov 3048c293d0 Minor: fix tests 2016-04-26 19:11:05 +03:00
Alexey Andreev 76cfe8cabc KT-11100 Fix generation of name of FakeCallableDescriptorForObject that is presumably used to express invoke operator on (companion) objects 2016-04-26 17:04:09 +03:00
Denis Zharkov 7fe5a9db8d Remove JavaToKotlinClassMap dependency on built-ins instance 2016-04-25 17:41:08 +03:00
Alexey Andreev 0869eb7ef3 KT-6201 KT-6203 KT-6326 KT-6777 Add test cases to prove that issues are no longer reproducible 2016-04-22 10:16:58 +03:00
Alexey Andreev ade5477c33 KT-11030 Initialization order of enum entries in JS now conforms to JVM backend 2016-04-20 18:12:25 +03:00
Alexey Andreev 87ea0bd0cb KT-11030 Minor code improvements 2016-04-20 18:12:25 +03:00
Alexey Andreev 166b985fca KT-11028 Add test for the issue 2016-04-20 18:12:24 +03:00
Alexey Andreev 4ac730e5ed KT-11030 Fix referencing wrong field generated for captured variable when this captured variable referenced both from constructor and non-constructor method. Avoid duplicate generation of call to delegated constructor. 2016-04-20 18:12:24 +03:00
Alexey Andreev a5e0c70988 KT-11611 Prevent duplicate generation of default values of secondary constructor parameters 2016-04-20 18:12:23 +03:00