Mikhail Glukhikh
cbcd35e2f5
Implement Kotlin sub-classes tooltip to handle MPP correctly
...
Before this commit, Java tooltip was in use which could not
work correctly with expect / actual classes
So #KT-21011 Fixed
2018-06-14 15:42:37 +03:00
Mikhail Glukhikh
90b6f369e0
Module-specific list cell renderer: wrap into runReadAction
...
This should fix KotlinGoto*ModuleTestGenerated.testExpectClassSuperclass
and related exception in IDEA
Additional fix for KT-23685
2018-06-14 13:55:31 +03:00
Mikhail Glukhikh
3d4b407d0c
MPP wizard: introduce structure: root <- common <- js / jvm
...
This commit also removes deprecated structure with common root
So #KT-20554 Fixed
2018-06-14 13:14:45 +03:00
Ilya Chernikov
cf294b57f0
Update changelog with changes in 1.2.50
2018-06-14 12:02:40 +02:00
Alexander Udalov
5d76e463d3
Fix exception from reflection on local delegated properties
...
The problem was that in JvmSerializerExtension.writeLocalProperties, we
only serialized metadata for local properties, but indices generated in
MemberCodegen.generatePropertyMetadataArrayFieldIfNeeded were among all
delegated properties in the class (not only local). This behaved
incorrectly as long as there was a local and a non-local delegated
property in the same class. For example, if there were 5 non-local
properties and then one local, that local property would get the index 5
and the synthetic signature "<v#5>". But there would only be one
Property entry in the metadata, and so reflection would fail here trying
to load the 5th element of the list which contains only one element.
Now, the index for a local delegated property is computed only as the
number of _local_ delegated properties above it in the class, i.e. the
first local delegated property gets index 0 (and synthetic signature
"<v#0>"), the next one -- index 1, and so on.
#KT-23413 Fixed
2018-06-14 11:07:26 +02:00
Alexander Udalov
b8722ad213
Fail with KotlinReflectionInternalError on non-found local delegated property
...
Instead of IndexOutOfBoundsException from the protobuf internals which
was thrown when loading extension with a non-existing index out of the
list of all extensions (KT-23413)
2018-06-14 11:07:26 +02:00
Pavel V. Talanov
2d7df21b0f
JavaElementFinder: fix classes not being sorted as intended
...
This is tested by `whole project` inspection tests
#KT-24704 Fixed
2018-06-14 10:51:13 +02:00
Vyacheslav Gerasimov
aae0f5123e
Build: Specify metadata source for ivy repositories
...
Otherwise composite build with Kotlin Native fails unable to resolve metadata files
2018-06-13 20:43:16 +03:00
Vyacheslav Gerasimov
992a31af88
Build: introduce javaPluginConvention extension on project
...
`ExtensionAware.the<T>()` introduced in gradle 4.7 made existing calls `the<JavaPluginConvention>()` invalid (on wrong receiver)
2018-06-13 19:43:03 +03:00
Vyacheslav Gerasimov
94c636adc3
Build: Fix usage of jvmArgs which became nullable
2018-06-13 19:43:03 +03:00
Vyacheslav Gerasimov
4b3a989b90
Build: Workaround IndexOutOfBoundsException on configuration with gradle 4.7
...
Using delegated property syntax somehow causes IndexOutOfBoundsException from kotlin-reflect, needs further investigation
Should be reverted after #KT-23413 is resolved
2018-06-13 19:43:03 +03:00
Ilya Gorbunov
0065a74c7e
Update to gradle 4.7, fix nullability issue in buildSrc
...
JavaExec args list is nullable now, so use orEmpty before copying it.
2018-06-13 19:43:03 +03:00
Mikhail Glukhikh
37124e0c0d
Make collectSlowLineMarker handle parents to deal with changes correctly
...
So #KT-20825 Fixed
So #KT-21113 Fixed
Related to IDEA-141330 fix
2018-06-13 19:23:41 +03:00
Mikhail Glukhikh
232d340118
Expect/actual companion object: set gutter on leaf element
...
May fix KT-21113
2018-06-13 19:23:40 +03:00
Mikhail Glukhikh
0a2ed054f1
Add module-specific cell renderers to navigate to actuals correctly
...
So #KT-23685 Fixed
2018-06-13 19:23:39 +03:00
Mikhail Glukhikh
efd6b7a035
KotlinGotoTargetRenderProvider: .java -> .kt
2018-06-13 19:23:38 +03:00
Mikhail Glukhikh
ab32a9a564
Minor enhancement of "actual" gutter
...
This makes hint about Ctrl+Alt+B available
2018-06-13 19:23:37 +03:00
Mikhail Glukhikh
f139847e47
Cleanup: KotlinLineMarkerProvider
2018-06-13 19:23:36 +03:00
Mikhail Glukhikh
cfd1a54463
Do not create expect / actual gutters for primary constructor
...
So #KT-22177 Fixed
So #KT-21063 Obsolete
2018-06-13 19:19:26 +03:00
Mikhail Glukhikh
b235af0656
Can be private: correct detection of calls inside inline accessors
2018-06-13 19:17:50 +03:00
Mikhail Glukhikh
542f0a61d1
Unused receiver: optimization
2018-06-13 18:12:37 +03:00
Mikhail Glukhikh
faa8d92560
Unused receiver: do not report on actual declarations #KT-24562 Fixed
2018-06-13 18:12:36 +03:00
Mikhail Glukhikh
38632c2937
Can be private: correct detection of calls inside inline function
...
So #KT-22180 Fixed
So #KT-22094 Fixed
2018-06-13 18:12:34 +03:00
Mikhail Glukhikh
a8737a1278
Can be private -> could be private (violation of naming convention)
2018-06-13 18:12:33 +03:00
Mikhail Glukhikh
88974ee32b
Can be private: simplification
...
Related to KT-22030
2018-06-13 18:12:31 +03:00
Toshiaki Kameyama
7786896e9b
Can be private: don't report when object or subclass calls the function
...
Questionable
So #KT-22030 Fixed
2018-06-13 18:12:30 +03:00
Mikhail Glukhikh
6c8276b701
Do not report "can be private" on annotated declarations #KT-24422 Fixed
2018-06-13 18:12:28 +03:00
Mikhail Glukhikh
d1155070a7
Do not report "can be private" on expect or actual declarations
...
So #KT-24374 Fixed
So #KT-24537 Fixed
2018-06-13 18:12:27 +03:00
Mikhail Glukhikh
11acea51b7
Reformat: can be private inspection
2018-06-13 18:12:25 +03:00
Mikhail Glukhikh
a09f6e14a5
Do not suggest "convert to object" for sealed sub-classes with state
...
So #KT-24816 Fixed
2018-06-13 18:12:18 +03:00
Alexander Udalov
813d7fcb6a
Fix bytecode for equals/hashCode of data classes once again
...
#KT-24790 Fixed
2018-06-13 16:06:20 +02:00
Alexander Udalov
8749bd901b
Fix MalformedParameterizedTypeException on classes from kotlin-reflect
...
This allows GraalVM's `native-image` to work correctly on
kotlin-reflect.jar. The size of the artifact has increased only by 66
bytes
#KT-23962 Fixed
2018-06-13 16:01:34 +02:00
Alexander Gorshenev
6d7dd58f70
Separated idl2k frontend and backend invocations.
2018-06-13 15:45:54 +03:00
Ilmir Usmanov
6b777356e8
Add test with java reflection
2018-06-13 15:08:32 +03:00
Ilmir Usmanov
de7aa23119
Make private inline suspend functions effectively inline-only
2018-06-13 15:08:26 +03:00
Ilmir Usmanov
8a5ae16947
Generate separate methods for inline and noinline uses of inline suspend functions
...
Previously, inline suspend functions were effectively inline only,
but ordinary inline functions can be used as noinline.
To fix the issue, I generate two functions: one for inline with suffix
$$forInline and without state machine; and the other one without any
suffix and state machine for direct calls.
This change does not affect effectively inline only suspend functions,
i.e. functions with reified generics, annotated with @InlineOnly
annotation and functions with crossinline parameters.
#KT-20219: Fixed
2018-06-13 15:08:19 +03:00
Alexander Udalov
bb4972b00e
Regenerate tests
2018-06-12 14:01:33 +02:00
Alexander Udalov
fab45365c9
Update .idea/misc.xml for IDEA 2018.2
2018-06-12 14:01:33 +02:00
Nicolay Mitropolsky
79487a6a21
KotlinLanguageInjector: injecting into returned literals (#KT-21673)
2018-06-09 22:56:25 +03:00
Anton Bannykh
675d02093d
mute new test + regenerate tests
2018-06-09 19:59:19 +03:00
Anton Bannykh
5fdc304a51
JS_IR: mute coroutine tests
2018-06-09 19:15:38 +03:00
Anton Bannykh
96355e2732
JS IR: mute codegen box tests automatically
2018-06-09 19:15:38 +03:00
Anton Bannykh
7e1713af44
Tests: keep "// !" directives first when auto-muting box tests
2018-06-09 19:15:38 +03:00
Anton Bannykh
1e169b0838
JS_IR: add common codegen box tests (same as for old backend)
2018-06-09 19:15:38 +03:00
Vyacheslav Gerasimov
7fb2452dba
182: Fix toNullability clash in j2k
2018-06-09 16:51:24 +03:00
Vyacheslav Gerasimov
411afb0303
182: Suppress compiler proguard warnings from intellij-core dependencies
2018-06-09 14:45:55 +03:00
Vyacheslav Gerasimov
272f8b832b
182: Set since build to 182.3040
2018-06-09 14:44:50 +03:00
Yan Zhulanow
e57463e5fd
182: Fix compatibility with the Android plugin from AS 3.1
...
(cherry picked from commit 0592121)
2018-06-09 14:44:50 +03:00
Vyacheslav Gerasimov
4dbcb2e50e
182: Switch 182 to SNAPSHOT builds (until next EAP)
...
Android plugin 3.1 is merged to IJ 182, we need to provide compatible plugin
2018-06-09 14:44:50 +03:00
Ростов Сергей
d9c9e6ef0a
jps, mpp: fix GenerateTests.kt.172
2018-06-09 11:18:55 +03:00