Print this page
9553 C11 functions quick_exit and at_quick_exit should be visible in C++11.


  41  * The following have been added as a result of the ISO/IEC 9899:2011
  42  * standard. For a strictly conforming C application, visibility is
  43  * contingent on the value of __STDC_VERSION__ (see sys/feature_tests.h).
  44  * For non-strictly conforming C applications, there are no restrictions
  45  * on the C namespace.
  46  */
  47 
  48 /*
  49  * Work around fix-includes and other bad actors with using multiple headers.
  50  */
  51 #if !defined(_NORETURN_KYWD)
  52 #if __STDC_VERSION__ - 0 >= 201112L
  53 #define _NORETURN_KYWD  _Noreturn
  54 #else
  55 #define _NORETURN_KYWD
  56 #endif  /* __STDC_VERSION__ - 0 >= 201112L */
  57 #endif  /* !defined(_NORETURN_KYWD) */
  58 
  59 #if !defined(_STRICT_SYMBOLS) || defined(_STDC_C11)
  60 extern void *aligned_alloc(size_t, size_t);



  61 extern int at_quick_exit(void (*)(void));
  62 extern _NORETURN_KYWD void quick_exit(int);
  63 #endif /* !_STRICT_SYMBOLS || _STDC_C11 */
  64 
  65 #if __cplusplus >= 199711L
  66 }
  67 #endif
  68 
  69 #ifdef __cplusplus
  70 }
  71 #endif
  72 
  73 #endif /* _ISO_STDLIB_C11_H */


  41  * The following have been added as a result of the ISO/IEC 9899:2011
  42  * standard. For a strictly conforming C application, visibility is
  43  * contingent on the value of __STDC_VERSION__ (see sys/feature_tests.h).
  44  * For non-strictly conforming C applications, there are no restrictions
  45  * on the C namespace.
  46  */
  47 
  48 /*
  49  * Work around fix-includes and other bad actors with using multiple headers.
  50  */
  51 #if !defined(_NORETURN_KYWD)
  52 #if __STDC_VERSION__ - 0 >= 201112L
  53 #define _NORETURN_KYWD  _Noreturn
  54 #else
  55 #define _NORETURN_KYWD
  56 #endif  /* __STDC_VERSION__ - 0 >= 201112L */
  57 #endif  /* !defined(_NORETURN_KYWD) */
  58 
  59 #if !defined(_STRICT_SYMBOLS) || defined(_STDC_C11)
  60 extern void *aligned_alloc(size_t, size_t);
  61 #endif /* !_STRICT_SYMBOLS || _STDC_C11 */
  62 
  63 #if !defined(_STRICT_SYMBOLS) || defined(_STDC_C11) || __cplusplus >= 201103L
  64 extern int at_quick_exit(void (*)(void));
  65 extern _NORETURN_KYWD void quick_exit(int);
  66 #endif /* !_STRICT_SYMBOLS || _STDC_C11 || __cplusplus >= 201103L */
  67 
  68 #if __cplusplus >= 199711L
  69 }
  70 #endif
  71 
  72 #ifdef __cplusplus
  73 }
  74 #endif
  75 
  76 #endif /* _ISO_STDLIB_C11_H */