zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

stdbool.h (1172B) - Raw


      1 /*===---- stdbool.h - Standard header for booleans -------------------------===
      2  *
      3  * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
      4  * See https://llvm.org/LICENSE.txt for license information.
      5  * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
      6  *
      7  *===-----------------------------------------------------------------------===
      8  */
      9 
     10 #ifndef __STDBOOL_H
     11 #define __STDBOOL_H
     12 
     13 #define __bool_true_false_are_defined 1
     14 
     15 #if defined(__MVS__) && __has_include_next(<stdbool.h>)
     16 #include_next <stdbool.h>
     17 #else
     18 
     19 #if defined(__STDC_VERSION__) && __STDC_VERSION__ > 201710L
     20 /* FIXME: We should be issuing a deprecation warning here, but cannot yet due
     21  * to system headers which include this header file unconditionally.
     22  */
     23 #elif !defined(__cplusplus)
     24 #define bool _Bool
     25 #define true 1
     26 #define false 0
     27 #elif defined(__GNUC__) && !defined(__STRICT_ANSI__)
     28 /* Define _Bool as a GNU extension. */
     29 #define _Bool bool
     30 #if defined(__cplusplus) && __cplusplus < 201103L
     31 /* For C++98, define bool, false, true as a GNU extension. */
     32 #define bool bool
     33 #define false false
     34 #define true true
     35 #endif
     36 #endif
     37 
     38 #endif /* __MVS__ */
     39 #endif /* __STDBOOL_H */