Commit Graph

41285 Commits

Author SHA1 Message Date
Mikhail Glukhikh dd1ac5bb6b Add a set of tests for internal callables find usages
Related to KT-19811
2017-09-12 16:51:02 +03:00
Mikhail Glukhikh 97233448d0 Enclosing element: do not handle parameters of for as function ones
So #KT-19626 Fixed
2017-09-12 16:13:56 +03:00
Mikhail Glukhikh 7ae722492f Unused symbol: do not use body of function literal as scope for members
So #KT-10546 Fixed
2017-09-12 16:13:34 +03:00
Mikhail Glukhikh 4b25317ecb Minor: KtPsiUtil: extract isNonLocalCallable 2017-09-12 16:13:15 +03:00
Toshiaki Kameyama 5eb69e0ae4 KT-20010 'Replace safe access expression with 'if' expression' IDEA Kotlin plugin intention may failed (#1288)
* 'Replace safe access expression with 'if' expression' IDEA Kotlin plugin intention may failed #KT-20010 Fixed

* #KT-20010 Fixed
2017-09-12 14:54:50 +02:00
Alexander Udalov 60c735f2fd Do not use deprecated kotlin.reflect API 2017-09-12 15:08:21 +03:00
Alexander Udalov 593d6b7a95 Minor, do not use ".java.kotlin" on KClass instances 2017-09-12 15:02:25 +03:00
Alexander Udalov ac1c7d9a6a Drop Incompatible.NoImpl, fix no "missing impl" on nested class
Header/impl declarations are now considered fully compatible even in the
case when the impl declaration has no "impl" modifier. The error about
no "impl" is now reported separately and only on the impl declaration,
never on the header declaration

 #KT-20087 Fixed
2017-09-12 14:41:11 +03:00
Vyacheslav Gerasimov b6c32edc43 Implement Kotlin Script support in UAST
#KT-18353 Fixed
2017-09-12 13:10:38 +03:00
Vyacheslav Gerasimov 89257e6397 Implement light classes for Kotlin scripts 2017-09-12 13:10:38 +03:00
Vyacheslav Gerasimov 26cbcfa1ac J2K: AbstractCompilerLightClassTest java -> kt 2017-09-12 13:10:38 +03:00
Kirill Rakhman 7fe1e4f83e Fix grammar in inspection description 2017-09-12 12:05:30 +03:00
Dmitry Petrov 38d1d06e6e Update modifier applicability tests for LV 1.2 2017-09-12 11:54:04 +03:00
Dmitry Petrov 6b6d1e80f8 Fix enum entry reference from enum entry initialization context
Enum entries are "special" kind of singletons that should be
referenced as a captured 'this' instance inside during entry
initialization, because corresponding static fields in enum class
are not initialized yet.

 #KT-7257 Fixed
2017-09-12 11:00:24 +03:00
Anton Bannykh 40e2046e76 Updated ChangeLog.md 2017-09-11 21:06:32 +03:00
Anton Bannykh ea9f5a7200 Update ChangeLog.md for version 1.1.50 2017-09-11 21:05:36 +03:00
Dmitry Jemerov b2e27f9172 Add idea-jvm to ultimate classpath 2017-09-11 15:07:51 +02:00
Dmitry Jemerov cd44131f88 Add impl module roots also when gradle-aware make is enabled 2017-09-11 15:07:51 +02:00
Dmitry Jemerov 0caadcd2f1 Put Kotlin runner on the first place 2017-09-11 15:07:51 +02:00
Dmitry Jemerov 9d2b9df3b4 Correctly run multiplatform modules
When a JVM run configuration requests compiling a common module,
compile the corresponding JVM module instead.
2017-09-11 15:07:51 +02:00
Dmitry Jemerov 1d05e83401 Recognize common tests marked with annotations typealiased to @Test 2017-09-11 15:07:51 +02:00
Dmitry Jemerov 6d30123c21 Add test dependencies when creating multiplatform projects 2017-09-11 15:07:51 +02:00
Dmitry Jemerov aed01c8475 Consistent naming: common platform is common, not default 2017-09-11 15:07:51 +02:00
Dmitry Jemerov 62b3059425 Support running main() under JVM in multiplatform projects
#KT-20093 In progress
2017-09-11 15:07:51 +02:00
Dmitry Jemerov 0b143e982f Always delegate build/run actions in MPP projects to Gradle 2017-09-11 15:07:51 +02:00
Alexey Andreev c90c3e4bf5 Add hack to make JS coercion compatible with older versions of stdlib 2017-09-11 14:34:35 +03:00
Alexey Andreev 0acc96c4f3 Translate reference to kotlin.Unit to a shorter JS code 2017-09-11 14:34:35 +03:00
Alexey Andreev 2656a6a513 Eliminate redundant RHS of JS comma expression 2017-09-11 14:34:34 +03:00
Alexey Andreev 37fa45dc34 Add mechanism for type coercion in JS
Use it for char boxing/unboxing and unit materialization.
Possible to use for other purposes, for example, to add type checks
to dynamics.

See KT-18793, KT-17915, KT-19081, KT-18216, KT-12970, KT-17014,
KT-13932, KT-13930
2017-09-11 14:34:34 +03:00
Mikhail Glukhikh ae509d5980 Unused symbol: add test to fix behaviour #KT-16318 Obsolete 2017-09-11 12:12:20 +03:00
Mikhail Glukhikh 37d2386a0b Unused symbol: handle imports from nested objects correctly
So #KT-17437 Fixed
2017-09-11 12:12:18 +03:00
Mikhail Glukhikh 7e3d3bde74 Unused symbol: never use VALUE_ARGUMENT scope for members
So #KT-10546 Fixed
2017-09-11 12:12:17 +03:00
Mikhail Glukhikh 5c4e034171 Unused symbol: do not search for internal member light methods
Use direct references search instead
So #KT-19811 Fixed
2017-09-11 12:12:16 +03:00
Dmitry Petrov 4428798c61 Change diagnostic message and rename to NESTED_CLASS_DEPRECATED 2017-09-11 09:42:18 +03:00
Dmitry Petrov 66ece54b25 Fix initialization of inner class instances in enum entries
In an inner class of the enum entry class, enum entry reference should
be generated as an outer 'this', not as a enum entry access, because
enum entry itself may be not initialized yet.
2017-09-11 09:42:18 +03:00
Dmitry Petrov 26b2f59b86 Check that resolve works properly with inner classes in enum entries 2017-09-11 09:42:18 +03:00
Dmitry Petrov ba2c3136bb Prohibit non-inner classes in enum entries since 1.3 2017-09-11 09:42:18 +03:00
Dmitry Petrov ea91a0794d Allow modifier 'inner' on a class nested in enum entry class 2017-09-11 09:42:18 +03:00
Dmitry Petrov 488a825349 Specialize diagnostic message for nested classes not allowed 2017-09-11 09:42:18 +03:00
Mikhail Zarechenskiy dd9ffd10b6 Preserve order of types in new type intersector 2017-09-10 22:29:07 +03:00
Dmitry Jemerov d8b46406ab Delete unused extension point 2017-09-09 10:01:36 +02:00
Alexey Andreev 24c6f5f0f0 JS: add test to prove that KT-19483 is no more reproducible 2017-09-08 18:27:43 +03:00
Alexey Andreev c65a79bca4 Fix tests for inline cycle diagnostics in JS 2017-09-08 18:27:42 +03:00
Alexey Andreev c66bc0b0e9 Remap source maps in JS DCE. Improve JS DCE error logging
See KT-19821
2017-09-08 18:27:41 +03:00
Alexey Andreev 1350e3c4ac JS: improve optimization of for loop over range literals
See KT-18329, partial fix for KT-8372
2017-09-08 18:27:40 +03:00
Alexey Andreev 502c51ccff Sanitize names for backing fields and private declarations in JS BE
See KT-1816
2017-09-08 18:27:40 +03:00
Alexey Andreev 206369c088 JS: fix capturing of reified type parameters when used as class literals
See KT-19891
2017-09-08 18:27:39 +03:00
Mikhail Glukhikh 03ce6d859f Disable destructure inspection by default
Now (by default) action is accessible as intention only
So #KT-15422 Fixed
So #KT-18666 Fixed
2017-09-08 17:41:44 +03:00
Mikhail Glukhikh c149c37ac7 Do not suggest destructuring for invisible properties #KT-18665 Fixed 2017-09-08 17:41:44 +03:00
Mikhail Glukhikh c4ebfe8e84 Add accessors: determine header properties more correctly
Related to KT-17322
2017-09-08 16:10:55 +03:00