Ilmir Usmanov
16d63cd1d0
JVM_IR: Use attributes to find $$forInline version of crossroutine
...
This way it would not get unlowered version.
2020-01-20 16:00:35 +01:00
Ilmir Usmanov
4d9d62ad12
JVM_IR: Also check attributes for suspendImpls when generating continuation
...
Otherwise, it would not generate continuations for overloads.
2020-01-20 16:00:34 +01:00
Ilmir Usmanov
d17afddaa9
JVM_IR: Fix bridges generation for suspend functions
...
Use view's signature as jvm signature.
2020-01-20 16:00:34 +01:00
Ilmir Usmanov
2507e2b526
JVM_IR: Fix parents of $$forInline companions
2020-01-20 16:00:33 +01:00
Ilmir Usmanov
7167d5f75c
JVM_IR: Generate $$forInline companion for transformed crossroutines
2020-01-20 16:00:33 +01:00
Ilmir Usmanov
33c0bfb4c2
JVM_IR: Generate $$forInline companion for transformed crossroutines
2020-01-20 16:00:33 +01:00
Ilmir Usmanov
64c1446fbe
JVM_IR: Generate $$forInline companion for suspend inline functions
...
Set isInline flag for $$forInline functions. Otherwise, SMAP will not be generated
for inner objects/lambdas, leading to error in inliner.
2020-01-20 16:00:32 +01:00
Ilmir Usmanov
4ef2ecf9a9
JVM_IR: Add returns unit marker if suspend call returns unit
2020-01-20 16:00:32 +01:00
Vladimir Dolzhenko
1911cbb077
Fixed ProgressIndicatorUtils.kt for 201
...
#KT-36008 Fixed
Relates to #KT-33939
2020-01-20 15:01:40 +01:00
Dmitriy Novozhilov
5cb7cf040a
Update some testdata according switching compiler to 1.4
2020-01-20 16:41:46 +03:00
Sergey Igushkin
796d4da9f5
Fix testLanguageSettingsConsistency with default language version 1.4
2020-01-20 16:37:51 +03:00
Mikhail Zarechenskiy
5c5635ce20
Fix codegen & bytecode tests after unifying exceptions in JVM backend
...
See KT-22275 for details
2020-01-20 16:36:03 +03:00
Mads Ager
1ed7e33f42
JVM_IR: Fix default argument bit mask for methods made static.
...
When called by reflection the bit mask will be generated
discounting dispatch/extension receivers. Make sure that the
interpretation of the bit mask is consistent for direct and
reflective calls.
In addition, this also fixes the modifiers on java 8 parameter
metadata for the dispatch and extension receivers for these
inline class methods.
2020-01-20 12:59:25 +01:00
Leonid Startsev
137c500e3a
Support SerializerFactory in Native
...
kotlinx.serialization plugin now adds additional function to companions
of generic classes in order to overcome lack of reflection. This
helps retrieving generic serializers from KType.
2020-01-20 13:16:17 +03:00
Dmitry Gridin
976db65911
TrailingCommaInspection: replace "Redundant trailing comma" message with "Useless trailing comma"
...
#KT-34744
2020-01-20 16:56:06 +07:00
Dmitry Gridin
abb82f791e
TrailingCommaInspection: add option for missing comma
...
#KT-34744
2020-01-20 16:56:06 +07:00
Mads Ager
33a24bfd27
JVM_IR: Avoid using parent name in name of captures.
...
If parent is an anonymous object that could lead to the use
of names such as `$this$no name provided` which is invalid
in dex files.
2020-01-20 10:49:46 +01:00
Yan Zhulanow
9782f6808d
Minor: Fix deprecation notice in KotlinIndicesHelperExtension
2020-01-20 17:42:00 +09:00
Yan Zhulanow
520f9a6da5
Kapt: Support all kinds of constant types (KT-35536)
2020-01-20 17:39:22 +09:00
Yan Zhulanow
532e879d5c
Pill: Fix gradle-api artifacts attaching after migration to compileClasspath/runtimeClasspath
2020-01-20 17:39:22 +09:00
Yan Zhulanow
ea957872eb
Pill: Support Kotlin JUnit configurations
2020-01-20 17:39:22 +09:00
Yan Zhulanow
66cd78fbc0
Pill: Remove robolectric classpath passing
2020-01-20 17:39:22 +09:00
Pavel Kirpichenkov
cb0b44273d
[NI] Check stub types in result type
...
An uninferred parameter stub may leak through calculation of CST(Inv<Uninferred Stub>, Nothing) into a result type.
A stub type in the result type means a type error. So we can afford recalculating
CST with stub-containing types filtered out, since its an error anyway.
This prevents stub types leakages and helps with reporting type error diagnostics.
KT-35914 Fixed
KT-35943 Fixed
2020-01-20 11:11:31 +03:00
Mikhail Zarechenskiy
581db19544
Fix test after advancing bootstrap compiler to 1.4
...
Now test is correct as it was previously, see https://github.com/JetBrains/kotlin/commit/76b3964e96b7a13479e9df95d5927be70eeea712#diff-03626fd0c49fefdea63cff24d50ea9eaL10
2020-01-20 11:01:28 +03:00
Nikolay Krasko
f01b4706d1
Switch to 193 platform
2020-01-19 12:01:53 +03:00
Nikolay Krasko
388797618a
Update 193 to 193.6015.22-EAP-SNAPSHOT
2020-01-19 11:48:43 +03:00
Nikolay Krasko
688ccc4a87
Allow to auto-mute failed tests in RunnerWithIgnoreInDatabase
2020-01-19 11:48:43 +03:00
Dmitriy Novozhilov
689d1fff42
Fix compiler error discovered after switching to 1.4
2020-01-19 10:58:44 +03:00
Dmitriy Novozhilov
a5a75180a8
Change language version in build.gradle.kts to 1.4
2020-01-19 10:58:44 +03:00
Dmitriy Novozhilov
49584ac031
Update bootstrap
2020-01-19 10:58:44 +03:00
nataliya.valtman
578132ef1f
CleanDataTask: use provider for input cleanStore
2020-01-18 11:34:21 +03:00
nataliya.valtman
abd60b97f8
YarnPlugin: configuration should be required only at build phase
2020-01-18 11:34:20 +03:00
Alexander Udalov
55e29363dc
Update test data for kotlinp
...
Inline functions require Kotlin compiler at least 1.3.50 if they were
generated by the compiler with API version >= 1.4. This is because since
API version 1.4, we've changed the generation scheme of parameter
nullability assertions and they now refer to methods from the standard
library which did not exist until 1.4. See
JvmSerializerExtension.writeInlineParameterNullCheckRequirement.
2020-01-17 20:40:35 +01:00
Alexander Udalov
3c4e5d7615
Fix JvmFieldInInterfaceCompanion.kt for language version 1.4
...
Since 1.4, constant value is no longer written to the class file (and
thus cannot be read) for non-const properties. But in sources,
corresponding property descriptors still have the initializer which is
rendered to text. Therefore we disable the source-vs-binary check and
update the test data to check the new behavior.
2020-01-17 20:35:46 +01:00
Zac Sweers
482874fdc1
Embed proguard/R8 rules in kotlin-reflect artifact jar
...
The Android build pipeline can extract embedded proguard configurations
from dependencies and merge them automatically. This adds a conservative
proguard configuration to the kotlin-reflect JVM artifact in support of
that. This focuses mostly on just retaining what's necessary for
kotlin-reflect's own functionality to operate, but could be expanded if
community feedback discovers other good candidate rules.
With this in place - most Android projects using R8 or Proguard should
Just Work™️ with kotlin-reflect.
2020-01-17 20:03:52 +01:00
Alexander Udalov
ae395bda09
Do not depend on proguard directly in :kotlin-reflect:modularJar
...
This is useful if proguard is disabled with
-Pkotlin.build.proguard=false.
2020-01-17 19:58:27 +01:00
Mikhail Zarechenskiy
547865d5c7
Fix tests for completion after fun keyword
...
It's correct from the current implemention but still questionable and
should be discussed
#KT-35990 Open
2020-01-17 19:37:48 +03:00
Mikhail Zarechenskiy
58c235e722
Set up tests for fun interfaces for JVM backend for now
2020-01-17 19:37:48 +03:00
Mikhail Zarechenskiy
39e0f101b1
Add dependency because some SAM related classes moved to core module
2020-01-17 19:37:48 +03:00
Mikhail Zarechenskiy
76a78fe918
FIC: render fun before interfaces in descriptor renderer
2020-01-17 19:37:48 +03:00
Mikhail Zarechenskiy
8350cf7d14
FIC: rename FunctionConversion -> FunctionalConversion
2020-01-17 19:37:47 +03:00
Mikhail Zarechenskiy
27e104187f
FIC: remove isFun from IR proto as conversion should happen in psi2ir
2020-01-17 19:36:12 +03:00
Mikhail Zarechenskiy
8206cadce2
FIC: support fun interfaces in stub builder
2020-01-17 19:36:12 +03:00
Mikhail Zarechenskiy
70094884ca
FIC: support suspend conversions in jvm codegen
2020-01-17 19:36:11 +03:00
Mikhail Zarechenskiy
b98d8bd7c1
Regenerate tests after rebase on master, add FIR tests
2020-01-17 19:36:11 +03:00
Mikhail Zarechenskiy
3849b5e723
FIC: add codegen tests, adapt previously tests for SAMs
2020-01-17 19:36:09 +03:00
Mikhail Zarechenskiy
b7c43fc7db
Refactoring: move test folder out of "inline classes" folder
...
It was added there by mistake
2020-01-17 19:36:08 +03:00
Mikhail Zarechenskiy
0e90d538df
FIC: propagate info about conversions for deserialized classes
2020-01-17 19:36:08 +03:00
Mikhail Zarechenskiy
0fdebdfeba
Refactoring: move SamConversionResolverImpl to core module
2020-01-17 19:36:07 +03:00
Mikhail Zarechenskiy
cd5c1b96bb
Refactoring: move SamConversionResolver to more applicable package
2020-01-17 19:36:07 +03:00