Fixed CoroutineScope of withContext block for structured concurrency
* Both withContext and coroutineScope are optimized and are rewritten
as extensions of AbstractCoroutine
* This gives withContext consistent exception handling &
suppression logic from JobSupport
* Support for cancelling state is dropped from AbstractContinuation
and it is now faster, too
(it can be merged with CancellableContinuationImpl in the future)
Fixes #553
Fixes #617
diff --git a/common/kotlinx-coroutines-core-common/src/CoroutineScope.kt b/common/kotlinx-coroutines-core-common/src/CoroutineScope.kt
index 51e7371..59121f4 100644
--- a/common/kotlinx-coroutines-core-common/src/CoroutineScope.kt
+++ b/common/kotlinx-coroutines-core-common/src/CoroutineScope.kt
@@ -16,7 +16,8 @@
*
* Every coroutine builder (like [launch][CoroutineScope.launch], [async][CoroutineScope.async], etc)
* and every scoping function (like [coroutineScope], [withContext], etc) provides _its own_ scope
- * into the inner block of code it runs. By convention, they all wait for all the coroutines inside
+ * with its own [Job] instance into the inner block of code it runs.
+ * By convention, they all wait for all the coroutines inside
* their block to complete before completing themselves, thus enforcing the
* discipline of **structured concurrency**.
*