Commit Graph

80170 Commits

Author SHA1 Message Date
sebastian.sellmair 3d6893e518 [Commonizer] Implement safe SharedCommonizerTarget factory function
Do not try to instantiate SharedCommonizerTarget with no leaves
^KT-45350 Verification Pending
2021-03-09 10:02:00 +00:00
sebastian.sellmair 6527452143 [Commonizer] Add CommonizerIT test for ^KT-45350
Adding a test project containing commonization targets for
ios, linux and windows to test behaviour if at least one commonizer group
is fully not supported.
2021-03-09 10:02:00 +00:00
Mads Ager 7dbb0c7d20 [IR] Make IrGetObjectValue copyable to avoid duplicate IR nodes.
Fixes KT-45170
2021-03-09 09:48:16 +03:00
Ilmir Usmanov e79c9a3618 Extend LVT record of alive variables to end of next suspension point
Otherwise, arguments of suspend call become invisible in async stack
trace
 #KT-44714
2021-03-08 23:56:40 +01:00
Ilmir Usmanov b6bb8a576e Make start label of LVT record the point where variable becomes alive
Otherwise, there will be overlapping LVT records, which leads to
removal of the whole LVT by R8.
 #KT-44714 Fixed
2021-03-08 23:56:39 +01:00
Ilmir Usmanov e17b7f01b6 Do not remove dead variables' LVT records
Also, extend liveness of alive variable to nearest suspension points
 #KT-44714
2021-03-08 23:56:36 +01:00
Alexander Udalov ee11202db5 Add Flag.IS_VALUE for value classes to kotlinx-metadata-jvm
#KT-44783 Fixed
2021-03-08 21:22:40 +01:00
Alexander Udalov 6ddca4a592 Add KClass.isValue to kotlin-reflect
#KT-44782 Fixed
2021-03-08 21:22:40 +01:00
Mikhael Bogdanov 4d51d71699 Fix EXPLICIT_OVERRIDE_REQUIRED_IN_MIXED_MODE message 2021-03-08 17:52:52 +00:00
Mikhael Bogdanov 3568eba1b2 Use actual implementation instead of inherited one in -Xjvm-default diagnostics 2021-03-08 17:52:52 +00:00
Mikhael Bogdanov 71c134e54f Fix checker for -Xjvm-defaults 2021-03-08 17:52:51 +00:00
Alexander Udalov 8b8262096c Fix testKt44814 by adding an IR dump
It's supposedly needed because of the `// DUMP_IR` directive.
2021-03-08 17:32:13 +01:00
Alexander Udalov 9970851684 Restore writing bytecode version to metadata for LV < 1.5
#KT-45323 Fixed
2021-03-08 11:18:54 +01:00
Alexander Udalov a2200b5386 Revert "Do not write bytecode version to class file"
This reverts commit c6f5ce6837.

 #KT-45323
2021-03-08 11:18:54 +01:00
Ilya Kirillov 7c11dde2cf FIR IDE: add support of FirStatement in getKtExpressionType 2021-03-07 19:48:08 +01:00
Ilya Kirillov d311fe21f8 FIR IDE: add additional tests for expression types 2021-03-07 19:48:08 +01:00
Ilya Kirillov 8a28175302 FIR IDE: fix CCE in getKtExpressionType on loops 2021-03-07 19:48:08 +01:00
Ilya Kirillov 0130ecd21d FIR IDE: fix CCE in getKtExpressionType on assignment target 2021-03-07 19:48:08 +01:00
Andrey Uskov b7e13d677d Fixed loading Gradle script templates located on WSL2
#KT-45042 Fixed
2021-03-07 19:40:13 +03:00
Andrey Uskov 63925ee018 Implemented collecting projectId from Gradle
#KT-45337 Fixed
2021-03-07 19:40:08 +03:00
Abduqodiri Qurbonzoda 4401589974 [K/N] Fix @SinceKotlin in Common titlecase and titlecaseChar functions 2021-03-07 07:38:05 +03:00
Abduqodiri Qurbonzoda e7a45bba91 Fix @SinceKotlin in Common titlecase and titlecaseChar functions 2021-03-07 07:38:04 +03:00
Abduqodiri Qurbonzoda aa5874e073 [K/N] Mark with @SinceKotlin("1.5") the Common char category API 2021-03-07 07:37:47 +03:00
Abduqodiri Qurbonzoda 10b0d147af Mark with @SinceKotlin("1.5") the Common char category API 2021-03-07 07:37:46 +03:00
Yahor Berdnikau 5db71209b2 Run Gradle advanced tests against 7.0-milestone-2 Gradle release.
^KT-44949 Fixed
2021-03-06 19:43:50 +01:00
Yahor Berdnikau 58564a7b89 Distinguish outputs of JS IR tasks.
Now JS IR link and sync tasks will output produced artifacts based on
compilation name, binary name and binary mode. This will remove
Gradle 7 error about missing task dependencies, which should not depend
on each other.

^KT-44949 In Progress
2021-03-06 19:43:50 +01:00
Yahor Berdnikau 2e1c1cd154 Fix test expects slightly different variant selection error message.
Error message was slightly changed on Gradle 7.

^KT-44949 In Progress
2021-03-06 19:43:50 +01:00
Yahor Berdnikau c96c50a73c Update AGP tests.
Bump AGP version in some tests and ignore AGP 3.4 tests on Gradle 7.
AGP 3.4 is not compatible with Gradle 7.

^KT-44949 In Progress
2021-03-06 19:43:49 +01:00
Yahor Berdnikau e17aa5efaa Change source jar duplication error to warning.
For now Gradle 7 will print warnings on publishing sources jar containing
duplicate files.

Duplicates are coming from SourceSets SourceSet added to sources jar
task depends on. Such approach should be rethought.

^KT-44949 In Progress
2021-03-06 19:43:49 +01:00
Yahor Berdnikau c072c8200b Fix test was using removed publication plugin.
Replace usage of removed 'maven' plugin with 'maven-publish'.

^KT-44949 In Progress
2021-03-06 19:43:49 +01:00
Yahor Berdnikau 2042508df0 Fix test project uses removed configuration for dependencies.
^KT-44949 In Progress
2021-03-06 19:43:49 +01:00
Yahor Berdnikau d78f579a42 Link task producing jar with sources to dukat tasks.
This required by Gradle 7 task validation.
Though in some cases sourcesJar task should not depend in some cases on Dukat tasks.

^KT-44949 In Progress
2021-03-06 19:43:49 +01:00
Yahor Berdnikau 2a8e2613a2 Split klib and cinterop outputs.
So Gradle 7 will not complain that some tasks using klib or cinterop
should depend on both tasks producing klib and cinterop, while they
don't need both.

^KT-44949 In Progress
2021-03-06 19:43:49 +01:00
Yahor Berdnikau 2ed98ee732 Fix test was using old KMM dependency notation.
^KT-44949 In Progress
2021-03-06 19:43:49 +01:00
Yahor Berdnikau db2d6c7e0a Ensure compilation task depends on friend artifact producer task.
Without it Gradle 7.0 tasks dependency validation will fail.

Fix JS tasks are not cacheable due to friends inputs change.

^KT-44949 In Progress
2021-03-06 19:43:49 +01:00
Cedric Champeau 0340a89045 Fix File as input of an artifact transform
Using `File` as input of an artifact transform was deprecated.
With Gradle 7, this becomes an error. This commit fixes the
problem by using the proper replacement:

   Provider<FileSystemLocation>
2021-03-06 15:46:07 +03:00
scaventz 9a7ef11043 Report a readable diagnostic on empty -J argument in CLI 2021-03-06 03:14:11 -08:00
scaventz 81a495b494 Fix the NullPointerException when pathname does not name a parent. 2021-03-06 01:50:40 -08:00
Abduqodiri Qurbonzoda 1c1492da3d Optimize K/N ArrayList.toArray #KT-42720 2021-03-06 11:15:08 +03:00
Abduqodiri Qurbonzoda 421cb6971d Optimized toArray method for ArrayDeque and ListBuilder #KT-42720 2021-03-06 11:14:50 +03:00
Abduqodiri Qurbonzoda c2f6a2cb96 [K/N] Commonize and generalize JVM-only String.contentEquals #KT-42840 2021-03-06 11:14:32 +03:00
Abduqodiri Qurbonzoda ed57bcb3b1 Commonize and generalize JVM-only String.contentEquals #KT-42840 2021-03-06 11:14:30 +03:00
Mikhail Glukhikh 037505d9f2 FIR IDE: regenerate diagnostics 2021-03-06 09:22:35 +03:00
Mikhail Glukhikh 7eb9b1188f FIR: implement helpers for diagnostic suppression on elements children 2021-03-06 09:22:35 +03:00
Mikhail Glukhikh 15c3269e38 FIR: don't report error on inline nested classes 2021-03-06 09:22:35 +03:00
Mikhail Glukhikh 1e4d7ff690 Fix LightTreePositioningStrategies.DECLARATION_NAME 2021-03-06 09:22:35 +03:00
eugenpolytechnic f6e564ffa6 FIR: introduce inline classes checks 2021-03-06 09:22:34 +03:00
Ilya Gorbunov 9cc8f44390 Support mod and floorDiv extensions in constant evaluator
Ignore evaluation tests for floorDiv and mod with FIR for now.
2021-03-05 23:46:57 +03:00
Ilya Gorbunov 58e6f775bb Rename test of rem operator evaluation 2021-03-05 23:46:57 +03:00
Ilya Gorbunov 3da3f0e653 Advance bootstrap to 1.5.20-dev-2378 2021-03-05 23:46:56 +03:00