Commit Graph

36244 Commits

Author SHA1 Message Date
Mikhael Bogdanov fa77dd62c4 InlineResult convertion to Kotlin 2016-12-22 09:44:25 +01:00
Mikhael Bogdanov 7688237973 InlineResult.java->kt 2016-12-22 09:44:25 +01:00
Mikhael Bogdanov ef825a7559 Fix for KT-14868: CCE in runtime while converting Number to Char
#KT-14868 Fixed
2016-12-22 09:44:24 +01:00
Denis Zharkov ce333b0a58 Minor. Remove exception handling part from CoroutineMethodTransformer
There is no handleException operator anymore
2016-12-22 11:19:08 +03:00
Denis Zharkov 8475869fb3 Support common calls on suspend function typed values
Also support multiple value parameters in suspend function type

 #KT-15379 Fixed
 #KT-15380 Fixed
2016-12-22 11:15:52 +03:00
Denis Zharkov d0ba048342 Refine coroutine/suspend functions ABI
- `invoke` method must always start a suspend functions
- For creation of coroutine that has not been started yet, there are
two special internal interfaces `SuspendFunction0`/`SuspendFunction1`
2016-12-22 11:08:42 +03:00
Denis Zharkov 75174b4fba Fix issue on dumping override of suspend function
The meaning of `setDropOriginalInContainingParts()` call is that
it makes copyBuilder forget the original parts, in particular
the valueParameter.original.containingDeclaration does not reference
original descriptor no more

Otherwise the following exception is happening:
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
	at java.util.ArrayList.RangeCheck(ArrayList.java:547)
	at java.util.ArrayList.get(ArrayList.java:322)
	at org.jetbrains.kotlin.descriptors.impl.ValueParameterDescriptorImpl.getOverriddenDescriptors(ValueParameterDescriptorImpl.kt:119)
	at java.util.ArrayList.RangeCheck(ArrayList.java:547)
	at java.util.ArrayList.get(ArrayList.java:322)
	at org.jetbrains.kotlin.descriptors.impl.ValueParameterDescriptorImpl.getOverriddenDescriptors(ValueParameterDescriptorImpl.kt:119)
	at org.jetbrains.kotlin.resolve.descriptorUtil.DescriptorUtilsKt$hasDefaultValue$1.getNeighbors(DescriptorUtils.kt:192)
	at org.jetbrains.kotlin.resolve.descriptorUtil.DescriptorUtilsKt$hasDefaultValue$1.getNeighbors(DescriptorUtils.kt)
	at org.jetbrains.kotlin.utils.DFS.doDfs(DFS.java:98)
	at org.jetbrains.kotlin.utils.DFS.doDfs(DFS.java:99)
	at org.jetbrains.kotlin.utils.DFS.dfs(DFS.java:27)
	at org.jetbrains.kotlin.utils.DFS.dfs(DFS.java:37)
	at org.jetbrains.kotlin.utils.DFS.ifAny(DFS.java:47)
	at org.jetbrains.kotlin.resolve.descriptorUtil.DescriptorUtilsKt.hasDefaultValue(DescriptorUtils.kt:189)
	at org.jetbrains.kotlin.renderer.DescriptorRendererImpl.renderValueParameter(DescriptorRendererImpl.kt:803)
	at org.jetbrains.kotlin.renderer.DescriptorRendererImpl.renderValueParameters(DescriptorRendererImpl.kt:767)
	at org.jetbrains.kotlin.renderer.DescriptorRendererImpl.renderFunction(DescriptorRendererImpl.kt:683)
	at org.jetbrains.kotlin.renderer.DescriptorRendererImpl.access$renderFunction(DescriptorRendererImpl.kt:42)
	at org.jetbrains.kotlin.renderer.DescriptorRendererImpl$RenderDeclarationDescriptorVisitor.visitFunctionDescriptor(DescriptorRendererImpl.kt:1039)
	at org.jetbrains.kotlin.renderer.DescriptorRendererImpl$RenderDeclarationDescriptorVisitor.visitFunctionDescriptor(DescriptorRendererImpl.kt:1002)
	at org.jetbrains.kotlin.descriptors.impl.FunctionDescriptorImpl.accept(FunctionDescriptorImpl.java:760)
2016-12-22 11:08:42 +03:00
Denis Zharkov 90c8e35331 Minor. Drop unused parts 2016-12-22 11:08:42 +03:00
Ilya Chernikov a9e9f36e1c Put native-platform-uberjar.jar into compiler embeddable and remove dependency from the compiler runner 2016-12-22 05:37:13 +03:00
Alexey Sedunov 12f2c04a0b Misc: Fix argument copying 2016-12-22 02:47:34 +03:00
Alexey Andreev f42a15bc4f Fix test data for light analysis test 2016-12-21 17:31:29 +03:00
Nikolay Krasko 2500dc9bb1 "Go to Type Declaration" is broken for stdlib types (KT-13001)
#KT-13001Fixed
2016-12-21 13:13:10 +03:00
Nikolay Krasko 6ca5ba3615 Don't call getClassDescriptor for local declarations (KT-15259)
#KT-15259 Open
2016-12-21 13:13:10 +03:00
Dmitry Petrov 8fe9de1d35 Generate toArray methods defined in classes inherited from collections as public even if they are declared with different visibility in Kotlin. 2016-12-21 10:50:17 +03:00
Ilya Chernikov c5d03578a3 Update changelog with 1.1-M04 2016-12-20 18:31:20 +01:00
Alexey Tsvetkov 2ba28618ec Remove reference to removed dependency from pom.xml 2016-12-20 20:24:46 +03:00
Ilya Gorbunov 6ee8a23ddd JS: Drop native map get/set intrinsics altogether.
MutableMap.set extension operator is now common among stdlib and stdlib-js.
#KT-2323
2016-12-20 18:00:19 +03:00
Alexander Udalov e8c9e81235 Minor, move and rename test data directory 2016-12-20 17:29:30 +03:00
Alexander Udalov ca886ecb8d Do not report "delegation member hides override" when hidden member is final
This situation is erroneous because OVERRIDING_FINAL_MEMBER_BY_DELEGATION is
already reported, no need to report another error
2016-12-20 17:29:17 +03:00
Alexander Udalov 482b43631c Refactor DelegationChecker and related code
- move getDelegates from CodegenUtil to DelegationResolver, reuse it in
  DelegationChecker
- use getAllOverriddenDescriptors + filterOutOverridden instead of a manual DFS
2016-12-20 17:28:50 +03:00
Denis Zharkov 2dd7d89048 Fix built-ins overridability issue
See the comment for clarification

 #KT-15097 Fixed
2016-12-20 16:35:26 +03:00
Alexey Andreev e02d281ed4 JS: don't use strict comparison (===) for enums when both left-hand side and right-hand side are nullable. See KT-12598 2016-12-20 15:47:39 +03:00
Alexey Andreev c285e5ba3b JS: add tests too prove that operator conventions are correctly inlined. Support inlining of invoke operator. See KT-7588 2016-12-20 15:47:39 +03:00
Alexey Andreev d3d406356c JS: use optimized emulation of int32 multiplication. Add test for emulated int32 multiplication 2016-12-20 15:47:39 +03:00
Alexey Andreev 7d8df5c81c JS: optimize integer overflow emulation when possible 2016-12-20 15:47:38 +03:00
Alexey Andreev eb5c79c70d JS: support int overflow behaviour in augmented assignment 2016-12-20 15:47:38 +03:00
Alexey Andreev c411a8febe JS: update tests 2016-12-20 15:47:37 +03:00
Alexey Andreev c854b81a09 JS: trying to implement integer overflow for increment and decrement 2016-12-20 15:47:37 +03:00
Alexey Andreev 446c4c0a33 JS: provide overflow behaviour for int binary operations (see KT-7733) 2016-12-20 15:47:36 +03:00
Mikhail Zarechenskiy 24d5bdd62c Fix test data after migration to 'rem' 2016-12-20 15:20:47 +03:00
Mikhail Zarechenskiy 1baf719cb4 Update operations map, remove TODO 2016-12-20 15:20:38 +03:00
Nikolay Krasko c076ad5a8d Don't assign type parameters from original proto if type is substituted with Any (KT-15128)
#KT-15128 Fixed
2016-12-20 15:16:23 +03:00
Alexey Tsvetkov e9e1b3fea1 Fix getting daemon connection in JPS 2016-12-20 14:46:23 +03:00
Mikhail Zarechenskiy 35e732a97f Place inference from getters under the language feature 2016-12-20 14:14:19 +03:00
Ilya Gorbunov c6a812b11c Fix some API holes in headers 2016-12-20 14:02:01 +03:00
Ilya Chernikov 4f2410ffe0 Fix TC compilation and kapt3 tests compilation 2016-12-20 10:02:01 +01:00
Mikhael Bogdanov 5222768ba1 Adedd quickfix check if @PublishedApi stub already exists 2016-12-20 09:42:14 +01:00
Mikhael Bogdanov c38b55612b Support properties in @PublishedApi bridge quickfix 2016-12-20 09:42:13 +01:00
Mikhael Bogdanov 6ca1d47207 Published-api checker refactoring, support java package-protected visibility 2016-12-20 09:42:13 +01:00
Dmitry Petrov 0fa2c54ae8 Identity comparison for primitives is deprecated (warning).
Identity comparison for primitive vs non-primitive is a warning (due to implicit boxing).
2016-12-20 11:00:58 +03:00
Alexey Tsvetkov 434f33f9e9 Minor: remove default value of retryOnConnectionError parameter 2016-12-19 22:55:28 +03:00
Alexey Tsvetkov 254d051a1f Minor: replace map().flatten()->flatMap() 2016-12-19 22:55:27 +03:00
Alexey Tsvetkov c89e62c45a Minor: rename enableIC->withIC 2016-12-19 22:55:27 +03:00
Alexey Tsvetkov 54d0a6b8e4 Minor: fix snapshot version used in kapt test kt15001 2016-12-19 22:55:26 +03:00
Alexey Tsvetkov 69d1ee7b11 Run kapt with daemon 2016-12-19 22:55:26 +03:00
Alexey Tsvetkov 865c6d887c Report messages from kapt using MessageCollector
This allows to print messages when daemon is used.
System out is not copied to daemon client,
because multiple compilations can occur in parallel.
2016-12-19 22:55:25 +03:00
Alexey Tsvetkov b39cefe5d1 Optimize searching for compiler jar 2016-12-19 22:55:25 +03:00
Alexey Tsvetkov de2736489b Unify Gradle and Kotlin daemon cache version checking 2016-12-19 22:55:25 +03:00
Alexey Tsvetkov d5e42e3271 Clear jar cache with daemon 2016-12-19 22:55:24 +03:00
Alexey Tsvetkov 69e8cf6a25 Compile multiplatform projects with daemon 2016-12-19 22:55:24 +03:00