1 #ifndef RBIMPL_ATTR_NORETURN_H
2 #define RBIMPL_ATTR_NORETURN_H
28 #if RBIMPL_HAS_DECLSPEC_ATTRIBUTE(noreturn)
29 # define RBIMPL_ATTR_NORETURN() __declspec(noreturn)
31 #elif RBIMPL_HAS_ATTRIBUTE(noreturn)
32 # define RBIMPL_ATTR_NORETURN() __attribute__((__noreturn__))
34 #elif RBIMPL_HAS_CPP_ATTRIBUTE(noreturn)
35 # define RBIMPL_ATTR_NORETURN() [[noreturn]]
37 #elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112)
38 # define RBIMPL_ATTR_NORETURN() _Noreturn
40 #elif defined(_Noreturn)
42 # define RBIMPL_ATTR_NORETURN() _Noreturn
45 # define RBIMPL_ATTR_NORETURN()
Defines RBIMPL_HAS_ATTRIBUTE.
Defines RBIMPL_HAS_CPP_ATTRIBUTE.
Defines RBIMPL_HAS_DECLSPEC_ATTRIBUTE.