mirror of
https://github.com/intel/llvm.git
synced 2026-01-25 10:55:58 +08:00
Libc++ tried accomodating systems that need to be able to define various __need_FOO macros before including C library headers, however it does not appear to be needed anymore in most cases. Indeed, glibc used to use that system to conditionally provide definitions, however almost all instances of these macros have been removed from glibc years ago. I think the next step would be to also fix Clang's own builtin headers to stop needing these macros. Differential Revision: https://reviews.llvm.org/D131425
41 lines
861 B
C++
41 lines
861 B
C++
// -*- C++ -*-
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef _LIBCPP_STDBOOL_H
|
|
#define _LIBCPP_STDBOOL_H
|
|
|
|
/*
|
|
stdbool.h synopsis
|
|
|
|
Macros:
|
|
|
|
__bool_true_false_are_defined
|
|
|
|
*/
|
|
|
|
#include <__config>
|
|
|
|
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
|
# pragma GCC system_header
|
|
#endif
|
|
|
|
#if __has_include_next(<stdbool.h>)
|
|
# include_next <stdbool.h>
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
#undef bool
|
|
#undef true
|
|
#undef false
|
|
#undef __bool_true_false_are_defined
|
|
#define __bool_true_false_are_defined 1
|
|
#endif
|
|
|
|
#endif // _LIBCPP_STDBOOL_H
|