Commit Graph

50273 Commits

Author SHA1 Message Date
Alexey Tsvetkov ff81a46233 Pass arguments to GradleKotlinCompilerWork in GradleKotlinCompilerWorkArguments
It's less error prone to add/remove/reorder arguments this way,
because named arguments can be used and the compiler actually
checks that all arguments are passed to GradleKotlinCompilerWorkArguments's
constructor.
2018-11-14 11:41:43 +03:00
Alexey Tsvetkov 349386960e Minor: remove unnecessary return 2018-11-14 11:41:43 +03:00
Alexey Tsvetkov 4fc05f74c3 Wrap null values into serializable optional
Otherwise worker executor fails with NPE
2018-11-14 11:41:43 +03:00
Alexey Tsvetkov a41c2d759a Avoid catching exceptions from workers in GradleKotlinCompilerRunner
Exceptions were catched in `KotlinCompilerRunner.runCompiler`.
When the method from superclass is not used in
`GradleKotlinCompilerRunner`, the superclass does not make much sense
anymore, so I turned it into util object.
2018-11-14 11:41:43 +03:00
Alexey Tsvetkov 37dfe2b608 Use Workers API for NMPP tasks
This change enables parallel execution of compile tasks in NMPP projects
within a subproject.

    #KT-28155 In Progress
2018-11-14 11:41:43 +03:00
Alexey Tsvetkov ba5795519b Minor: move compile iteration result to daemon common
The class is used on both server and client, but it was defined in
server module.
Gradle plugin worked, because all classes are present in kotlin compiler
embeddable, but the code was red in IDE (which is correct because
Gradle plugin does not depend on daemon server module).
2018-11-14 11:41:43 +03:00
Alexey Tsvetkov 80597b6206 Update dokka to 0.9.17 2018-11-14 11:40:13 +03:00
Mikhail Zarechenskiy 35fb3ba096 Fix CCE when unboxed inline class receiver is passed to inline function
Initial problem is started in `capturedBoundReferenceReceiver` method
 where we assume that bound receiver is captured for usual call.

 Note that if method is inline then we don't pass actual name reference
 receiver, but pass special CAPTURED_RECEIVER_FIELD, which is then
 is used to find special instructions during inline and fold several
 instructions in `foldFieldAccessChainIfNeeded`.

 As a result, we got unboxed reference receiver for inline call, which
 caused CCE and to fix it we should box receiver one more time during
 inline

 #KT-28188 Fixed
2018-11-14 11:21:04 +03:00
Dmitry Petrov 99d8f2eb0c Support 'call' for primary value of an inline class
Getter of a primary value of an inline class belongs to the box class.
Its arguments should not be unboxed when the method is called.
However, its result might require boxing if it's an inline class value.

When we have an internal primary value, there's no getter method.
In fact, we can use box/unbox methods for inline class directly
(don't forget to box the result, it may be an inline class type value).

 #KT-26748
2018-11-14 09:57:51 +03:00
Alexey Tsvetkov 78ee48e1cd Minor: add missing import 2018-11-13 22:11:18 +03:00
Alexey Tsvetkov 22192e7008 Stop using experimental coroutines in kotlin-scripting-jvm-host tests 2018-11-13 21:54:36 +03:00
Alexey Tsvetkov f2ae857780 Include tests from kotlin-scripting-jvm-host in compiler tests
Previously these tests were not executed during CI test run
2018-11-13 21:54:36 +03:00
Alexander Udalov 3bfe138dbe Support KClassValue in JavaActualAnnotationArgumentExtractor
#KT-22704 Fixed
2018-11-13 19:05:14 +01:00
Alexander Udalov 49d6a7a7cb Refactor and improve code obtaining actual Java annotation parameter values
Extract Java-specific code into module 'frontend.java' and use already
existing JavaAnnotationArgument facilities to determine the default
parameter value in an actual Java annotation class.

Annotation arguments are not yet supported because to create an instance
of AnnotationValue, we need a descriptor, which is not available at this
point.

 #KT-22704 In Progress
 #KT-28077 Open
2018-11-13 19:05:14 +01:00
Ricardo Meneghin Filho c08540175b Allow expect annotations with actual typealias to Java have default arguments 2018-11-13 19:05:14 +01:00
Andrey Uskov 53414aca87 Cache module dependencies on project import
#KT-27832 Fixed
2018-11-13 20:46:42 +03:00
Nikolay Krasko daa54978d1 Do not fail in diagnostic code 2018-11-13 19:38:03 +03:00
Nikolay Krasko eb45848beb Update to AS 3.3 16 2018-11-13 19:38:03 +03:00
Vyacheslav Gerasimov dee2449ee1 Build: Fix idea sources import broken during upgrade to gradle 4.10
#KT-28030 Fixed
2018-11-13 18:36:05 +03:00
Vyacheslav Gerasimov 022691384a Build: Minor refactoring intellij-sdk build.gradle.kts 2018-11-13 18:36:02 +03:00
Mikhail Zarechenskiy 45541296ad Stop building separate jar with unsigned types
Now this is not needed as unsigned types were merged into stdlib
2018-11-13 15:47:06 +03:00
Fedor Korotkov 797784ff34 [idea-gradle] improved transitive resolution
Fixed BFS. We need to either mark dependency nodes as visited after adding them to the queue or double check if a node has been already processed.
2018-11-13 14:27:30 +03:00
Mikhail Zarechenskiy d28488eaed Remove WITH_UNSIGNED directive from tests
#KT-25226 Fixed
2018-11-13 11:48:32 +03:00
Toshiaki Kameyama cbaa8e5be2 Remove single lambda parameter declaration: fix false positive on property with implicit type #KT-23134 2018-11-13 10:42:16 +03:00
Aleksei Semin 793cac02e8 Add inspection and quick-fix to remove empty parentheses in annotation entries 2018-11-13 10:38:08 +03:00
Toshiaki Kameyama e903b2f92a Unused symbol: don't report for finalize() method #KT-13311 Fixed 2018-11-13 10:26:06 +03:00
Mikhail Glukhikh 503f061c8c Forbid suggesting "iterate over" on expression with Nothing type
#KT-14555 Fixed
2018-11-13 10:15:49 +03:00
Mikhail Glukhikh 1e0746ebcd Unused symbol: handle internal constructor used in Java #KT-27708 Fixed 2018-11-13 10:15:49 +03:00
Mikhail Glukhikh da39d45cb1 Add more "non properties" for atomic classes #KT-25953 Fixed 2018-11-13 10:15:49 +03:00
Mikhail Glukhikh 92bbf885f7 "Generate member" actions: do not show any dialogs for expect class
Related to KT-27595
2018-11-13 10:15:48 +03:00
Mikhail Glukhikh b15b993b26 Reformat: "Generate member" actions 2018-11-13 10:15:48 +03:00
Mikhail Glukhikh cb28387da4 Fix KNPE in different "Generate members" for expect class
#KT-27595 Fixed
2018-11-13 10:15:48 +03:00
Mikhail Glukhikh 38c3f13b12 Remove unnecessary main arguments from MPP wizard builders 2018-11-13 10:15:48 +03:00
Mikhail Glukhikh a04321478d Fix isEffectivelyActual to work with constructors correctly 2018-11-13 10:15:47 +03:00
Mikhail Glukhikh 589b377ef3 Minor: remove unused parameter in both buildNavigate to markers 2018-11-13 10:15:47 +03:00
Mikhail Glukhikh d7d1b0420d Do not show non-actual members in actual gutter #KT-27951 Fixed 2018-11-13 10:15:47 +03:00
Nicolay Mitropolsky 4a64edd610 KotlinStringLiteralTextEscaper: provides offsets for already decoded (KT-27380) 2018-11-13 10:01:52 +03:00
Nicolay Mitropolsky 6342bc378e KotlinLanguageInjector: removing kotlin.annotation.injection.enabled key 2018-11-13 10:01:51 +03:00
Natalia Selezneva a8b55740a1 Scratch: include all related module dependencies in ScriptModuleInfo
^KT-28094 Fixed
2018-11-13 08:47:19 +03:00
Natalia Selezneva 4661ab9961 Fix loading Kotlin Scripting options from kotlinScripting.xml
^KT-28046 Fixed
2018-11-13 08:47:19 +03:00
Natalia Selezneva da71a35187 Update highlighting in UI thread 2018-11-13 08:47:19 +03:00
Natalia Selezneva 372daa0463 Do not attach script report if they didn't changed 2018-11-13 08:47:19 +03:00
Natalia Selezneva ad43c2dc1c Simplify logic in ScriptDependenciesLoader 2018-11-13 08:47:18 +03:00
Natalia Selezneva 18c9d968f9 Pass ResolveResult to ScriptNotificationPanel 2018-11-13 08:47:18 +03:00
Mikhail Zarechenskiy ed2b9172da Support unsigned integers in kotlinx-metadata-jvm
#KT-25371 Fixed
2018-11-13 01:29:39 +03:00
Andrey Uskov dac4cb5d06 Fix source sets in all bunches except AS 33 in idea-android 2018-11-12 21:23:14 +03:00
Simon Ogorodnik 7f5f6ad76f Update QuickDoc testData due to platform changes 2018-11-12 20:56:26 +03:00
Alexander Udalov a2612c1eae Fix generic signature for KSuspendFunction types in bytecode
#KT-27560 Fixed
2018-11-12 18:53:23 +01:00
Andrey Uskov 7b0c7ec400 Get rid of bunch 191 for build scripts (Continuation of "Replace bunch copies for some of build.gradle.kts files with a DSL") 2018-11-12 17:43:20 +03:00
Sergey Igushkin 308eafe0e1 (test data) Revert removal of coroutines opt-in from a test
This test checks the coroutines opt-in, so it should stay there.

Revert the change made in a64a76d5
2018-11-12 17:26:07 +03:00