jump-statement: break ; continue ; return expr-or-braced-init-list ; coroutine-return-statement goto identifier ;
while (foo) { { // ... } contin: ; }
do { { // ... } contin: ; } while (foo);
for (;;) { { // ... } contin: ; }
std::pair<std::string,int> f(const char* p, int x) { return {p,x}; }— end example
class A { ~A() {} }; A f() { return A(); } // error: destructor of A is private (even though it is never invoked)— end example
coroutine-return-statement: co_return expr-or-braced-init-list ;
{ S; goto final-suspend; }where final-suspend is the exposition-only label defined in [dcl.fct.def.coroutine] and S is defined as follows: