summaryrefslogtreecommitdiffhomepage
path: root/include/stc/coroutine.h
diff options
context:
space:
mode:
authortylov <[email protected]>2023-08-01 15:45:37 +0200
committertylov <[email protected]>2023-08-01 15:45:37 +0200
commitfc0942205fb06591a5784b2878187a4475c6af7b (patch)
tree05f07febd688bce57d26b8beeb18dd3357b8fe61 /include/stc/coroutine.h
parentcd9d0f984e678691855787a2fa855ccd5876425f (diff)
downloadSTC-modified-fc0942205fb06591a5784b2878187a4475c6af7b.tar.gz
STC-modified-fc0942205fb06591a5784b2878187a4475c6af7b.zip
Fixed bug in cco_call_await() test.
Diffstat (limited to 'include/stc/coroutine.h')
-rw-r--r--include/stc/coroutine.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/include/stc/coroutine.h b/include/stc/coroutine.h
index 146f3efb..4a7fd6aa 100644
--- a/include/stc/coroutine.h
+++ b/include/stc/coroutine.h
@@ -94,10 +94,10 @@ typedef enum {
/* cco_call_await(): assumes coroutine returns a cco_result value (int) */
#define cco_call_await(...) c_MACRO_OVERLOAD(cco_call_await, __VA_ARGS__)
#define cco_call_await_1(corocall) cco_call_await_2(corocall, CCO_DONE)
-#define cco_call_await_2(corocall, resultbits) \
+#define cco_call_await_2(corocall, awaitbits) \
do { \
*_state = __LINE__; \
- case __LINE__: { int _r = corocall; if (!(_r & ~(resultbits))) {return _r; goto _resume;} } \
+ case __LINE__: { int _r = corocall; if (_r & ~(awaitbits)) {return _r; goto _resume;} } \
} while (0)
/* cco_call_blocking(): assumes coroutine returns a cco_result value (int) */
@@ -170,10 +170,10 @@ typedef struct cco_runtime {
#define cco_task_await(...) c_MACRO_OVERLOAD(cco_task_await, __VA_ARGS__)
#define cco_task_await_2(task, rt) cco_task_await_3(task, rt, CCO_DONE)
-#define cco_task_await_3(task, rt, resultbits) \
+#define cco_task_await_3(task, rt, awaitbits) \
do { \
cco_runtime* _rt = rt; \
- (_rt->stack[++_rt->top] = cco_cast_task(task))->cco_expect = (resultbits); \
+ (_rt->stack[++_rt->top] = cco_cast_task(task))->cco_expect = (awaitbits); \
cco_yield_v(CCO_AWAIT); \
} while (0)