Natalia Selezneva
adfa7a2418
Create new module with dependency on IDEA Git plugin
2018-06-14 21:33:10 +03:00
Roman Artemev
dbb360555c
[JS IR BE] Fix logic boolean operations
2018-06-14 19:54:35 +03:00
Roman Artemev
6ac4fd2e5f
[JS IR BE] Update test data
2018-06-14 19:54:30 +03:00
Roman Artemev
17d71f1e46
[JS IR BE] Implement type check
...
* IrTypeOperator lowering
* runtime support
* refactoring
2018-06-14 18:40:06 +03:00
Alexander Udalov
50eda3b8a0
Make metadata writers' properties protected
...
These properties are only supposed to be used from Writer classes in
KotlinClassMetadata
2018-06-14 17:19:08 +02:00
Alexander Udalov
fec2c14ea5
Support local delegated properties in kotlinx-metadata-jvm
2018-06-14 17:19:08 +02:00
Alexander Udalov
b00f765255
Pass whole ReadContext/WriteContext to kotlinx-metadata extensions
2018-06-14 17:19:08 +02:00
Anton Bannykh
05123c13f8
[JS IR BE] mute ranges' tests
2018-06-14 18:17:43 +03:00
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