From 79d7dc273bb5fd3f8fe16b1d05173afcd679390b Mon Sep 17 00:00:00 2001 From: "A. Jiang" Date: Wed, 16 Feb 2022 09:37:42 +0800 Subject: [PATCH 1/4] [dcl.fct.def.coroutine] An initializer of a non-block variable is also a resumer --- source/declarations.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/declarations.tex b/source/declarations.tex index 5697f1c628..6c684f1bc6 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -6554,8 +6554,8 @@ a resumption member function\iref{coroutine.handle.resumption} of a coroutine handle\iref{coroutine.handle} that refers to the coroutine. -The function that invoked a resumption member function is -called the \defnx{resumer}{coroutine!resumer}. +The function or the initializer of a non-block variable +that invoked a resumption member function is called the \defnx{resumer}{coroutine!resumer}. Invoking a resumption member function for a coroutine that is not suspended results in undefined behavior. From 8e89318521a0b84d5f2f11f42fb32d49e5077e3d Mon Sep 17 00:00:00 2001 From: "A. Jiang" Date: Sat, 19 Feb 2022 00:39:47 +0800 Subject: [PATCH 2/4] [dcl.fct.def.coroutine] Simple present tense for "invoke" --- source/declarations.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/declarations.tex b/source/declarations.tex index 6c684f1bc6..ca92379f7f 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -6555,7 +6555,7 @@ of a coroutine handle\iref{coroutine.handle} that refers to the coroutine. The function or the initializer of a non-block variable -that invoked a resumption member function is called the \defnx{resumer}{coroutine!resumer}. +that invokes a resumption member function is called the \defnx{resumer}{coroutine!resumer}. Invoking a resumption member function for a coroutine that is not suspended results in undefined behavior. From 9324adc0dbbc5d66aa50fc32dbc7109ac1b78d6f Mon Sep 17 00:00:00 2001 From: "A. Jiang" Date: Sun, 20 Feb 2022 01:07:30 +0800 Subject: [PATCH 3/4] [dcl.fct.def.coroutine] xref to [basic.start.dynamic] --- source/declarations.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/declarations.tex b/source/declarations.tex index ca92379f7f..78b9cab94d 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -6554,7 +6554,7 @@ a resumption member function\iref{coroutine.handle.resumption} of a coroutine handle\iref{coroutine.handle} that refers to the coroutine. -The function or the initializer of a non-block variable +The function or the initializer of a non-block variable\iref{basic.start.dynamic} that invokes a resumption member function is called the \defnx{resumer}{coroutine!resumer}. Invoking a resumption member function for a coroutine that is not suspended results in undefined behavior. From 20f6e06eb4293d3b3fd625557833b85a31e99d94 Mon Sep 17 00:00:00 2001 From: "A. Jiang" Date: Sun, 20 Feb 2022 11:17:20 +0800 Subject: [PATCH 4/4] [dcl.fct.def.coroutine] Clarification for storage duration --- source/declarations.tex | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/declarations.tex b/source/declarations.tex index 78b9cab94d..a237156166 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -6554,7 +6554,8 @@ a resumption member function\iref{coroutine.handle.resumption} of a coroutine handle\iref{coroutine.handle} that refers to the coroutine. -The function or the initializer of a non-block variable\iref{basic.start.dynamic} +The function or the initializer of a non-block variable +with static or thread storage duration\iref{basic.start.dynamic} that invokes a resumption member function is called the \defnx{resumer}{coroutine!resumer}. Invoking a resumption member function for a coroutine that is not suspended results in undefined behavior.