Annex F (informative) Core undefined behavior [ub]

F.5 [dcl]: Declarations [ub.dcl]

F.5.9[ub:dcl.attr.noreturn.eventually.returns]
Specified in: [dcl.attr.noreturn]

If a function f is called where f was previously declared with the noreturn attribute and f eventually returns, the behavior is undefined.
[Example 1: [[noreturn]] void f(int i) { if (i > 0) throw "positive"; } int main() { f(0); // undefined behavior, returns from a [[noreturn]] function } — end example]