Commit Graph

36096 Commits

Author SHA1 Message Date
Ilya Gorbunov f3df648f4a Unify toTypedArray and asList templates between JVM and JS 2016-12-16 04:36:12 +03:00
Ilya Gorbunov 3d7e6e1996 Refactor stdlib generator: introduce platform-specialized properties.
Use Kotlin 1.1-M03 to utilize new language features.
2016-12-16 04:31:07 +03:00
Ilya Gorbunov c097f326fb Generate common headers of stdlib functions. What constitutes the header is yet to be decided. 2016-12-16 04:31:07 +03:00
Ilya Gorbunov 6ea1cde449 Generate additional sources for JS instead of copying them from JVM 2016-12-16 04:31:07 +03:00
Ilya Gorbunov bc2d7dda2c kotlin-stdlib-generator: Allow to generate top-level functions by specifying empty custom receiver. Allow to parametrize primitive specialization bodies with the type of primitive. 2016-12-16 04:31:07 +03:00
Ilya Gorbunov 236333e475 Update public API dump for coroutines rev. 2 2016-12-16 04:28:32 +03:00
Stanislav Erokhin d7566d84d0 Fixed testdata. 2016-12-16 02:01:12 +03:00
Stanislav Erokhin ab53978793 Allowed ast access for some tests. 2016-12-16 00:57:04 +03:00
Alexey Andreev bba5c16653 JS: change how coroutine start intrinsic gets detected 2016-12-16 00:57:02 +03:00
Alexey Tsvetkov 3af0840512 Test coroutines setting in Gradle plugin 2016-12-15 23:58:32 +03:00
Alexey Tsvetkov 3e1edf006f Set coroutines setting for JS in Gradle plugin 2016-12-15 23:58:31 +03:00
Mikhail Zarechenskiy c0a3d3568a Add test on using kotlin.coroutines property in gradle 2016-12-15 23:58:30 +03:00
Mikhail Zarechenskiy 6697c902fc Attempt to add property go kotlin gradle plugin 2016-12-15 23:58:29 +03:00
Stanislav Erokhin 957af61464 Regenerate test generated. 2016-12-15 23:58:28 +03:00
Denis Zharkov f0cda8ac8d Fix indexing of suspend function types 2016-12-15 23:58:27 +03:00
Stanislav Erokhin b527a4d158 Global rename in test data for coroutines
(cherry picked from commit 132f97b)
2016-12-15 23:58:26 +03:00
Stanislav Erokhin 8968bc3dd6 RestrictSuspension -> RestrictsSuspendExtensions
(cherry picked from commit 9e0c733)
2016-12-15 23:58:24 +03:00
Denis Zharkov c73b0d7b76 Move coroutine intrinsics to object (backend's) 2016-12-15 23:58:23 +03:00
Roman Elizarov 7b079bd1f7 Renaming after DM 2016-12-15 23:58:22 +03:00
Denis Zharkov 31081c6702 Minor. Revert some hacks that became unnecessary after interceptResume removal 2016-12-15 23:58:21 +03:00
Alexey Andreev e2d969d8b0 JS: implement new coroutine convention 2016-12-15 23:58:20 +03:00
Dmitry Petrov 9fd1ac72a9 Purge remaining traces of @AllowSuspendExtensions. 2016-12-15 23:58:19 +03:00
Stanislav Erokhin 5a353412e4 Fixed KeywordCompletionTests. 2016-12-15 23:58:18 +03:00
Mikhail Zarechenskiy 2ff04f2bc5 Import kotlin.coroutines property from gradle to facet 2016-12-15 23:58:17 +03:00
Dmitry Petrov f19581dc4d Suspend lambdas can't have value parameters (UNSUPPORTED in M04). 2016-12-15 23:58:16 +03:00
Stanislav Erokhin c5aeaae8e6 Support explicit this receiver (this.foo()) for RestrictSuspension function call. 2016-12-15 23:58:15 +03:00
Dmitry Petrov 8e3fd0efc3 If the last argument of a function is a suspend function,
suggest trailing lambda variant in completion.
2016-12-15 23:58:14 +03:00
Stanislav Erokhin f9d550732e Minor. remove useless call. 2016-12-15 23:58:13 +03:00
Mikhail Zarechenskiy 4b892b1c9c Report corresponding diagnostic on suspend lambda 2016-12-15 23:58:13 +03:00
Stanislav Erokhin b88c8ea2e7 Support checks for annotation RestrictSuspension. 2016-12-15 23:58:12 +03:00
Mikhail Zarechenskiy d1a3c4c48b Fix description of -Xcoroutines key 2016-12-15 23:58:11 +03:00
Mikhail Zarechenskiy feefe8d6ff Propagate coroutine settings support from facet into the language version settings 2016-12-15 23:58:10 +03:00
Mikhail Zarechenskiy 091756b221 Adapt facet, map coroutine settings on three keys 2016-12-15 23:58:09 +03:00
Alexey Sedunov 9460426d26 Kotlin Facet: Add coroutine support setting 2016-12-15 23:58:08 +03:00
Mikhail Zarechenskiy 664485f4bb Introduce keys to control applicability of coroutines
By default now we produce warnings on coroutines
2016-12-15 23:58:07 +03:00
Dmitry Petrov 30710955dc Minor: 'vararg' is a modifier on value parameters of functional types. 2016-12-15 23:58:06 +03:00
Dmitry Petrov 80bd916f5d 'SuspendFunction$n' should not be visible in member scopes (should be unresolved).
'SuspendFunction$n' class descriptors are created on demand by KotlinBuiltIns (and cached).
On serialization, types constructed with 'SuspendFunction$n' are written as 'Function$n' with extra flag (SUSPEND_TYPE).
On deserialization, corresponding 'SuspendFunction$n' classes are used.
2016-12-15 23:58:05 +03:00
Roman Elizarov a70ac0160d fixed runWithCurrentContinuation 2016-12-15 23:58:04 +03:00
Denis Zharkov 85db356611 Minor. Drop test on coroutine applicability 2016-12-15 23:58:03 +03:00
Denis Zharkov 4737b3dd7f Update stubBuilder/deserialization tests on coroutines 2016-12-15 23:58:02 +03:00
Dmitry Petrov a3338b2230 Allow only 'out' modifier for value parameter modifiers in functional type
(comments also mention 'lazy' and 'ref'; these value parameter modifiers are unsupported, anyway).
2016-12-15 23:58:02 +03:00
Dmitry Petrov eec96f1954 Extension functions & inference. 2016-12-15 23:58:01 +03:00
Denis Zharkov 845e116aa9 Update bytecodeText and bytecodeListing tests on coroutines 2016-12-15 23:58:00 +03:00
Denis Zharkov 8387d04425 Revert "Add special tests for interceptRun support"
This reverts commit 01c21e218a.
2016-12-15 23:57:59 +03:00
Denis Zharkov 7ffefb515f Update test data for LightAnalysis/Coroutines 2016-12-15 23:57:58 +03:00
Stanislav Erokhin 6b4cdee887 Fix deserialization for SuspendFunction. 2016-12-15 23:57:57 +03:00
Stanislav Erokhin 42440f50dc Remove soft keyword coroutine & isCoroutine from ValueParameterDescriptor. 2016-12-15 23:57:56 +03:00
Stanislav Erokhin 55983a7808 Support type inference for coroutines. 2016-12-15 23:57:55 +03:00
Stanislav Erokhin 509a504318 Update test data for LookupTracker (removed package kotlin.coroutines from default imports) 2016-12-15 23:57:54 +03:00
Stanislav Erokhin 34a4159a94 Added coroutine import to front-end tests. 2016-12-15 23:57:53 +03:00