Commit Graph

48261 Commits

Author SHA1 Message Date
Toshiaki Kameyama c6db26ba91 "Replace 'if' with elvis operator": Don't suggest on nullable type check #KT-25886 Fixed 2018-08-27 13:33:46 +03:00
Toshiaki Kameyama 1a31ce769c Fix false negative in not reduceable binary expression #KT-26179 Fixed 2018-08-27 13:32:49 +03:00
Toshiaki Kameyama 8f80851b9a if then to elvis: support calling extension function in class #KT-26343 Fixed 2018-08-27 13:31:04 +03:00
Toshiaki Kameyama b34f32d4f3 "Remove redundant backticks": Fix false positive for yield #KT-25968 Fixed 2018-08-27 13:10:57 +03:00
Toshiaki Kameyama 362e6863ac "Replace if with when": Do not remove block braces if block has single lambda expression #KT-26187 Fixed 2018-08-27 12:54:45 +03:00
kenji tomita e59427edab Fix false positive for if-else 2018-08-27 12:53:35 +03:00
Toshiaki Kameyama 0099b7b3b1 "Remove explicit type specification" intention: Add type argument to initializer if need #KT-13343 Fixed 2018-08-27 12:35:32 +03:00
Alexander Podkhalyuzin 54922362e3 Added Kotlin svg icon to the distribution
#KT-26393 Fixed
2018-08-25 17:21:50 +03:00
Alexander Podkhalyuzin c0e92ba350 Added resolve scope enlarger to module infos in Kotlin
From now it's possible to enlarge resolve scope for analysis in IDE,
the only difference is that it's based on module file.

#KT-26313 Fixed
2018-08-25 11:22:50 +03:00
Alexander Udalov a9a8925409 Revert "Report error on .class files produced by Kotlin 1.3-M1"
This reverts commit ba111d58ae.

The reverted commit only makes sense after a bootstrap step after
advancing the metadata version, which has not yet happened in master,
but did happen in 1.3-M2, where this commit was supposed to end up
2018-08-24 22:38:59 +02:00
Vyacheslav Gerasimov 0dd410a5bb Make CommandAdapter.beforeCommandFinished override compatible with 183 platform 2018-08-24 22:19:28 +03:00
Juan Chen 1a562d477a Add sync after Kotlin configured in Android Studio projects. 2018-08-24 22:07:36 +03:00
Mikhael Bogdanov f21dd9f801 Minor. Review fixes 2018-08-24 20:22:33 +02:00
Mikhael Bogdanov 367ab5470c Minor. Code clean 2018-08-24 20:22:32 +02:00
Mikhael Bogdanov 4687381179 Convert AbstractLineNumberTest.java to Kotlin 2018-08-24 20:17:25 +02:00
Mikhael Bogdanov c28b9f75e3 Rename .java to .kt 2018-08-24 20:17:24 +02:00
Mikhael Bogdanov de02e97f39 Print generated bytecode on AbstractCheckLocalVariablesTableTest fail 2018-08-24 20:17:23 +02:00
Mikhael Bogdanov 9a1b2daa12 Minor. Code clean 2018-08-24 20:17:21 +02:00
Mikhael Bogdanov f06b6ed47e Convert AbstractCheckLocalVariablesTableTest.java to Kotlin 2018-08-24 20:17:20 +02:00
Mikhael Bogdanov 614fad016f Rename .java to .kt 2018-08-24 20:17:19 +02:00
Mikhael Bogdanov 232170b72a Migrate AbstractIrCheckLocalVariablesTableTest to CodegenTestCase stuff 2018-08-24 20:17:18 +02:00
Alexander Udalov ba111d58ae Report error on .class files produced by Kotlin 1.3-M1
Advance incremental cache version to force rebuild after switching from
1.3-M1 to 1.3-M2
2018-08-24 18:49:55 +02:00
Cuihtlauac ALVARADO 813d7ff84a Remove useless parameter
It seems a candidate is added either when requiresExtensionReceiver is true and
receiver is not null or when requiresExtensionReceiver is false and receiver is null.
Consequently, f appears useless.
2018-08-24 18:48:03 +03:00
Cuihtlauac ALVARADO eb7d77ebd9 Accept renaming and formating requests
* Rename "resolve" into "resolveCandidates"
* Use multi-line formatting for formal parameters
* Move ")" down one line at call sites
2018-08-24 18:48:03 +03:00
Cuihtlauac ALVARADO bf08755969 Factor duplicated code.
Move SimpleScopeTowerProcessor from TowerResolver into ScopeTowerProcessors.

Lift code duplicated in functions:

  * ExplicitReceiverScopeTowerProcessor.simpleProcess()
  * QualifierScopeTowerProcessor.simpleProcess()
  * NoExplicitReceiverScopeTowerProcessor.simpleProcess()

into AbstractSimpleScopeTowerProcessor. Turn it into a function and call it
in the various context. Incidentally, now useless functions resolveAsMember()
and resolveAsExtension() are  removed.
2018-08-24 18:48:03 +03:00
Alexey Sedunov 7ae740dd91 MPP: Add tests for new MPP model import 2018-08-24 18:00:57 +03:00
Mikhail Glukhikh ded652382b "Deferred result not used": report all Deferred results by default
#KT-26181 Fixed
2018-08-24 18:00:56 +03:00
Mikhail Glukhikh 564ea629d1 Add annotations to primary constructor together with 'constructor'
This fixes incorrect behaviour if primary constructor has no explicit
'constructor' keywork
#KT-25548 Fixed
2018-08-24 18:00:54 +03:00
Mikhail Glukhikh c12f29ae30 Enhance inspection about SuccessOrFailure (related to KT-25621)
Increase performance by searching first SuccessOrFailure/runCatching/etc
in text of functions without return type.
Remove stdlib false positives, like success() & failure().
For catching extension, check also non-catching members.
Add "rename to *Catching" fix.
2018-08-24 18:00:46 +03:00
Mikhail Glukhikh 7a2d0a3bb2 Add inspection "Redundant runCatching {}" (related to KT-25621) 2018-08-24 18:00:44 +03:00
Mikhail Glukhikh 2084e94099 Add quick-fix "add .getOrThrow()" for SuccessOrFailure inspection
#KT-25621 Fixed
2018-08-24 18:00:42 +03:00
Mikhail Glukhikh 87d750aa1c Add inspection to detect functions with SuccessOrFailure return type
Partial implementation of KT-25621 (no quick-fixes yet)
2018-08-24 18:00:41 +03:00
Ivan Gavrilovic 48784fd95e Use new API for getting the raw Android resources
A new method has been added in the Android Gradle
plugin 3.3.0. This commit switches from ussing the
MergeResources task, and uses getAllRawAndroidResources
API instead.

Test: manually verified
2018-08-24 17:28:40 +03:00
Roman Artemev 5dcb02466a Update test data 2018-08-24 15:49:13 +03:00
Roman Artemev 2e5940e46d [JS IR BE] Fix object instance reference
* set it in primary constructor prior to constructor body
2018-08-24 15:49:13 +03:00
Roman Artemev 85a8af13cf [JS IR BE] Fix constructor parent 2018-08-24 15:49:13 +03:00
Georgy Bronnikov 30a2058f74 Fix JVM_IR backend crashes when compiling for Android
^KT-23963 Fixed
^KT-23968 FIxed
^KT-23972 Fixed
2018-08-24 15:46:44 +03:00
Roman Artemev cc14442be1 Add tests for primitive companion object
Update test data
2018-08-24 14:58:42 +03:00
Roman Artemev 450ed63690 [JS IR BE] Implement primitive companion object 2018-08-24 14:58:42 +03:00
Dmitry Petrov 2a524920a5 Don't remap inline function args requiring inline class boxing/unboxing
Same as for primitives: inline lambda expects to see a boxed value,
so, even if an argument is a local variable, it can't be remapped,
because it contains unboxed representation.
2018-08-24 14:52:29 +03:00
Dmitry Petrov 6e2d05cd94 Fix argument original type order in InlineCodegen
Arguments are put on stack in the direct order, and then stored into
local variables for inlining in the reversed order:

    <arg0>
    <arg1>
    <arg2>
    store <param2>
    store <param1>
    store <param0>

Original value parameter types were taken in direct order, though.
2018-08-24 14:52:29 +03:00
Mikhael Bogdanov 25b32b8e1d Migrate AbstractLineNumberTest to CodegenTestCase stuff 2018-08-24 13:39:22 +02:00
Alexander Udalov 9c68f2be36 Advance metadata versions and JVM bytecode version
JVM versions are increased in order to differentiate pre-1.3-M2 .class
files where signatures mentioning inline classes were not mangled. Other
versions are increased in case something similar will need to be
detected
2018-08-24 13:01:53 +02:00
Georgy Bronnikov 50e8f7efc7 Track fake overrides for IrField 2018-08-24 13:41:52 +03:00
Yan Zhulanow 01d5e227f0 Pill: Fix resource roots importing 2018-08-24 15:29:55 +05:00
Yan Zhulanow b7873edf30 Pill: Fix issue with clashing sdk-common.jar and sdk-common-26.1.2.jar
Move sdk-common.jar to the end of the classpath
2018-08-24 15:29:55 +05:00
Yan Zhulanow 267e239e52 Pill: Refactoring, introduce a generic predicate in DependencyMapper 2018-08-24 15:29:55 +05:00
Denis Zharkov 83a431fca3 Introduce redundant enum CoroutineSingletons in experimental.intrinsics 2018-08-24 10:55:12 +03:00
Yan Zhulanow bda14fcbb2 Unresolved reference not reported on data class constructor @get annotation (KT-19628) 2018-08-24 04:28:16 +05:00
Yan Zhulanow 463f8dae6a Pill: Add '-ea' option to the default JUnit configuration if missing 2018-08-24 04:28:15 +05:00