1*dcdfe824SRobert Mustacchi /* 2*dcdfe824SRobert Mustacchi * This file and its contents are supplied under the terms of the 3*dcdfe824SRobert Mustacchi * Common Development and Distribution License ("CDDL"), version 1.0. 4*dcdfe824SRobert Mustacchi * You may only use this file in accordance with the terms of version 5*dcdfe824SRobert Mustacchi * 1.0 of the CDDL. 6*dcdfe824SRobert Mustacchi * 7*dcdfe824SRobert Mustacchi * A full copy of the text of the CDDL should have accompanied this 8*dcdfe824SRobert Mustacchi * source. A copy of the CDDL is also available via the Internet at 9*dcdfe824SRobert Mustacchi * http://www.illumos.org/license/CDDL. 10*dcdfe824SRobert Mustacchi */ 11*dcdfe824SRobert Mustacchi 12*dcdfe824SRobert Mustacchi /* 13*dcdfe824SRobert Mustacchi * Copyright 2016 Joyent, Inc. 14*dcdfe824SRobert Mustacchi */ 15*dcdfe824SRobert Mustacchi 16*dcdfe824SRobert Mustacchi /* 17*dcdfe824SRobert Mustacchi * An application should not include this header directly. Instead it 18*dcdfe824SRobert Mustacchi * should be included only through the inclusion of other illumos headers. 19*dcdfe824SRobert Mustacchi * 20*dcdfe824SRobert Mustacchi * The contents of this header is limited to identifiers specified in 21*dcdfe824SRobert Mustacchi * the C11 standard and in conflict with the C++ implementation of the 22*dcdfe824SRobert Mustacchi * standard header. The C++ standard may adopt the C11 standard at 23*dcdfe824SRobert Mustacchi * which point it is expected that the symbols included here will 24*dcdfe824SRobert Mustacchi * become part of the C++ std namespace. 25*dcdfe824SRobert Mustacchi */ 26*dcdfe824SRobert Mustacchi 27*dcdfe824SRobert Mustacchi #ifndef _ISO_STDLIB_C11_H 28*dcdfe824SRobert Mustacchi #define _ISO_STDLIB_C11_H 29*dcdfe824SRobert Mustacchi 30*dcdfe824SRobert Mustacchi #include <sys/feature_tests.h> 31*dcdfe824SRobert Mustacchi 32*dcdfe824SRobert Mustacchi #ifdef __cplusplus 33*dcdfe824SRobert Mustacchi extern "C" { 34*dcdfe824SRobert Mustacchi #endif 35*dcdfe824SRobert Mustacchi 36*dcdfe824SRobert Mustacchi #if __cplusplus >= 199711L 37*dcdfe824SRobert Mustacchi namespace std { 38*dcdfe824SRobert Mustacchi #endif 39*dcdfe824SRobert Mustacchi 40*dcdfe824SRobert Mustacchi /* 41*dcdfe824SRobert Mustacchi * The following have been added as a result of the ISO/IEC 9899:2011 42*dcdfe824SRobert Mustacchi * standard. For a strictly conforming C application, visibility is 43*dcdfe824SRobert Mustacchi * contingent on the value of __STDC_VERSION__ (see sys/feature_tests.h). 44*dcdfe824SRobert Mustacchi * For non-strictly conforming C applications, there are no restrictions 45*dcdfe824SRobert Mustacchi * on the C namespace. 46*dcdfe824SRobert Mustacchi */ 47*dcdfe824SRobert Mustacchi 48*dcdfe824SRobert Mustacchi /* 49*dcdfe824SRobert Mustacchi * Work around fix-includes and other bad actors with using multiple headers. 50*dcdfe824SRobert Mustacchi */ 51*dcdfe824SRobert Mustacchi #if !defined(_NORETURN_KYWD) 52*dcdfe824SRobert Mustacchi #if __STDC_VERSION__ - 0 >= 201112L 53*dcdfe824SRobert Mustacchi #define _NORETURN_KYWD _Noreturn 54*dcdfe824SRobert Mustacchi #else 55*dcdfe824SRobert Mustacchi #define _NORETURN_KYWD 56*dcdfe824SRobert Mustacchi #endif /* __STDC_VERSION__ - 0 >= 201112L */ 57*dcdfe824SRobert Mustacchi #endif /* !defined(_NORETURN_KYWD) */ 58*dcdfe824SRobert Mustacchi 59*dcdfe824SRobert Mustacchi #if !defined(_STRICT_SYMBOLS) || defined(_STDC_C11) 60*dcdfe824SRobert Mustacchi extern void *aligned_alloc(size_t, size_t); 61*dcdfe824SRobert Mustacchi extern int at_quick_exit(void (*)(void)); 62*dcdfe824SRobert Mustacchi extern _NORETURN_KYWD void quick_exit(int); 63*dcdfe824SRobert Mustacchi #endif /* !_STRICT_SYMBOLS || _STDC_C11 */ 64*dcdfe824SRobert Mustacchi 65*dcdfe824SRobert Mustacchi #if __cplusplus >= 199711L 66*dcdfe824SRobert Mustacchi } 67*dcdfe824SRobert Mustacchi #endif 68*dcdfe824SRobert Mustacchi 69*dcdfe824SRobert Mustacchi #ifdef __cplusplus 70*dcdfe824SRobert Mustacchi } 71*dcdfe824SRobert Mustacchi #endif 72*dcdfe824SRobert Mustacchi 73*dcdfe824SRobert Mustacchi #endif /* _ISO_STDLIB_C11_H */ 74