Alexander Udalov
9c5256434c
Check function name in isGenericToArray/isNonGenericToArray
...
#KT-24427 Fixed
2018-05-25 14:55:26 +02:00
Dmitry Petrov
ab455d6572
IR: IrSimpleFunction.correspondingProperty: IrProperty?
...
Non-null for a property accessor, points to a corresponding property.
2018-05-25 09:40:51 +03:00
Dmitry Petrov
216dbf9637
Drop IrDeclarationKind
2018-05-25 09:40:51 +03:00
Dmitry Petrov
2a0e7eb412
IR: split IrUtils.kt into common and backend-specific part
2018-05-25 09:40:51 +03:00
Roman Artemev
6d29aab5e2
[JS IR BE] Implement vararg in JS BE
2018-05-24 21:36:12 +03:00
Roman Artemev
3ec722eaa1
[JS IR BE] Implement labeled loops
2018-05-24 21:07:09 +03:00
Roman Artemev
6811c87fc7
[JS IR BE] Implement block decomposition lowering
2018-05-24 21:06:49 +03:00
Ilmir Usmanov
6c3d69f74c
Minor: Add KotlinTypeMapper constructor overload
2018-05-24 15:42:53 +03:00
Alexander Udalov
d122406dca
Map Kotlin TYPE target to Java TYPE_USE in bytecode
...
And TYPE_PARAMETER -> TYPE_PARAMETER similarly
#KT-23857 Fixed
2018-05-24 14:41:22 +02:00
Alexander Udalov
bf3419c3bd
Introduce OptionalExpectation for annotations missing on some platforms
...
This commits adds a new annotation OptionalExpectation to the standard
library, which is experimental. To enable its usage, either pass
'-Xuse-experimental=kotlin.ExperimentalMultiplatform' as a compiler
argument, or '-Xuse-experimental=kotlin.Experimental' and also annotate
each usage with `@UseExperimental(ExperimentalMultiplatform::class)`
#KT-18882 Fixed
2018-05-24 13:14:51 +02:00
Alexey Sedunov
efc369dbe4
Misc: KtParsingTestCase fixes for 172/173/AS3.1 bunches
2018-05-24 02:54:00 +03:00
Yan Zhulanow
6e362f6734
Kapt: Remove kapt1 from Kotlin compiler
2018-05-24 01:01:51 +03:00
Yan Zhulanow
662b79780d
Kapt: Remove kapt1 support from Gradle and incremental compilation
2018-05-24 01:01:51 +03:00
Mikhail Glukhikh
51fba03253
Experimental fixes: introduce "Add @UseExperimental" #KT-22760 Fixed
2018-05-23 19:00:51 +03:00
Mikhail Glukhikh
f404d6c97a
Experimental fixes: introduce "add annotation" (KT-22760)
2018-05-23 18:59:22 +03:00
Alexey Sedunov
909ff3a7ec
Misc: Migrate to IDEA 181.3
2018-05-23 16:39:20 +03:00
Roman Artemev
8862b26bbd
Add test case to check delegation of suspend method
2018-05-23 14:59:59 +03:00
Mikhael Bogdanov
f826a253e3
Generate @JvmDefault for property accessors in LIGHT_CLASS MODE
2018-05-23 13:55:38 +02:00
Alexander Udalov
402ceefe60
Regenerate tests
2018-05-23 12:26:10 +02:00
Toshiaki Kameyama
8271e85dbb
ReplaceArrayOfWithLiteralInspection: Remove unnecessary parentheses
...
#KT-21878 Fixed
2018-05-22 17:33:25 +03:00
Dmitry Petrov
8dbfd85d26
psi2ir: Support class literals in annotations
2018-05-22 15:29:01 +03:00
Alexander Udalov
e7f6ac1e50
Fix data class equals codegen for type parameters with interface bounds
...
#KT-24474 Fixed
2018-05-22 13:45:21 +02:00
Mikhail Zarechenskiy
542b2abafa
Fix migration change for new inference about coroutines
...
Now it's possible after 9209222
#KT-23553 Fixed
2018-05-22 10:11:14 +03:00
Dmitry Petrov
c22dfeaf82
KT-24156 Do not optimize for-loops over Strings with custom iterator
...
'fun CharSequence.iterator()' is an extension function, so one can
overload it with custom implementation.
Other "predefined" containers such as arrays and ranges have member
'fun iterator()', so these containers are not affected.
Check that 'iterator' call corresponds to an extension function
'iterator' defined in package 'kotlin.text' with a receiver of type
'kotlin.CharSequence'.
#KT-24156 Fixed
2018-05-22 10:02:52 +03:00
Ilmir Usmanov
f568149863
Implement new assert semantics in back-end
...
Previously, assert was just a regular function and its argument used to
be computed on each call (even if assertions are disabled on JVM).
This change adds support for 3 new behaviours of assert:
* always-enable (independently from -ea on JVM)
* always-disable (independently from -ea JVM)
* runtime/jvm (compile the calls like javac generates assert-operator)
* legacy (leave current eager semantics) - this already existed
Default behaviour is legacy for now.
The behavior is changed based on -Xassertions flag.
#KT-7540: Fixed
2018-05-21 20:43:37 +03:00
Mikhail Zarechenskiy
1b809413d2
[NI] Fix updated type for lambda, use original type for substitution
...
#KT-24367 Fixed
2018-05-21 17:56:11 +03:00
Dmitry Savvinov
68dbeeac7a
Introduce LanguageFeature.Kind
...
Mainly, Kind affects 'forcesPreReleaseBinaries' and
'enabledInProgressiveMode' flags, and allows to cover common
combinations of those flags.
2018-05-18 16:16:23 +03:00
Dmitry Savvinov
c33b7377da
Add support of internal arguments for language feature settings
...
Arguments are passed in form '-XXLanguage:+LanguageFeatureName' for enabling
LanguageFeature.LanguageFeatureName, and '-XXLanguage:-LanguageFeatureName'
for disabling.
Note that they do override other settings, including 'language-version'
or extra ('-X') args.
2018-05-18 16:16:23 +03:00
Dmitry Savvinov
ae119a09eb
Minor: reformat CommonToolArguments
2018-05-18 16:16:23 +03:00
Dmitry Savvinov
9ba450ffc5
Minor: reformat parseCommandLineArguments, apply intentions
2018-05-18 16:16:23 +03:00
Dmitry Savvinov
9876ecd6df
Minor: reformat CommonCompilerArguments
2018-05-18 16:16:23 +03:00
Dmitry Savvinov
e8181c0473
Introduce -Xprogressive
2018-05-18 16:16:23 +03:00
Mikhael Bogdanov
2e9bf49921
Don't skip coercion to nullable Unit in codegen
2018-05-18 12:58:01 +02:00
Mikhael Bogdanov
73bd97a134
Write deprecation flag
2018-05-18 12:58:01 +02:00
Mikhael Bogdanov
61f444f846
Avoid empty clinit generation
2018-05-18 12:58:00 +02:00
Mikhael Bogdanov
aece29a95b
Properly generate annotation classes
2018-05-18 12:57:59 +02:00
Mikhael Bogdanov
893e843648
Code clean
2018-05-18 12:57:59 +02:00
Mikhael Bogdanov
083bcade5f
Minor. Reformat
2018-05-18 12:57:58 +02:00
Alexander Udalov
11653c6800
Move checkTypePosition to VarianceChecker in frontend
...
This is a partial revert of 279ff0b , which is no longer needed because
of the previous commit
2018-05-18 11:56:14 +02:00
Alexey Tsvetkov
ea255ac854
Rebuild when dependency was built non-incrementally
2018-05-17 20:55:27 +03:00
Alexey Tsvetkov
53266300d4
Implement module detection for Gradle IC with Android
...
#KT-22431 fixed
2018-05-17 20:55:26 +03:00
Alexey Tsvetkov
e5cdc64f4f
Track changes for jar files for non-Android Gradle projects
2018-05-17 20:55:26 +03:00
Alexey Tsvetkov
6a45310830
Remove global artifact history cache in Gradle
...
Each Kotlin task now writes build history to separate file.
A map of output directories to history files is used to get changes for
modified files.
#KT-22623 fixed
2018-05-17 20:46:52 +03:00
Alexander Udalov
598e89c03d
Update bunch files for KotlinTestUtils after 9dbeb79340
2018-05-17 12:43:30 +02:00
Alexander Udalov
d7c77e522c
Do not render UnsafeVariance in tests on built-ins
...
This fixes LoadBuiltInsTest which failed because UnsafeVariance was
rendered in the lazy resolve result, but was not in the deserialized
result (because it has SOURCE retention)
2018-05-17 12:38:57 +02:00
Nikolay Krasko
580e2972db
Initial settings for incompatible API inspection
2018-05-17 12:27:30 +03:00
Nikolay Krasko
a95ec598f2
Refactoring: move accessor name generators to companion object for reuse
2018-05-17 12:27:28 +03:00
Alexander Udalov
e1a4bd01f5
Add anonymousObjectOriginName/lambdaClassOriginName to kotlinx-metadata
...
#KT-21320
#KT-23198
2018-05-16 17:16:22 +02:00
Alexander Udalov
1b15619457
Move BinaryVersion to metadata, JVM versions to metadata.jvm
...
To be used in kotlinx-metadata
2018-05-16 17:16:22 +02:00
Alexander Udalov
9dbeb79340
Test kotlinx-metadata and kotlinp on compiler test data
...
#KT-23198
2018-05-16 17:16:21 +02:00