History log of /netbsd-src/include/stdnoreturn.h (Results 1 – 2 of 2)
Revision Date Author Comments
# 4549ddae 08-Sep-2024 rillig <rillig@NetBSD.org>

include: C11 has been released


# 7798b8a7 02-Oct-2016 kamil <kamil@NetBSD.org>

Import <stdnoreturn.h>

This header conforms to the C11 standard
Reference: ISO/IEC 9899:201x 7.23 _Noreturn <stdnoreturn.h>

According to ISO/IEC 9899:201x (draft) <stdnoreturn.> defines the
noretur

Import <stdnoreturn.h>

This header conforms to the C11 standard
Reference: ISO/IEC 9899:201x 7.23 _Noreturn <stdnoreturn.h>

According to ISO/IEC 9899:201x (draft) <stdnoreturn.> defines the
noreturn macro which expands to _Noreturn.

The _Noreturn keyword appears in a function declaration and specifies
that the function does not return by reaching the end of the function
body.

Design choices:
- don't implicitly break C++ code including this header with #error
C++11 offers [[noreturn]] which conflicts with C11 _Noreturn

- don't check for __STDC_VERSION__, everybody is free to reuse it with
a nonstandard compiler not conforming to C11 but supporting _Noreturn

gcc(1) and clang(1) support _Noreturn in -std=c99 and older standards

this follows <stdbool.h> choice for not checking for C99

- follow <stdbool.h> and declare the __noreturn_is_defined guard

- use a standard header guard (_STDNORETURN_H_), similar to <stdbool.h>

Reviewed by <pgoyette> and <joerg>

show more ...