Home | History | Annotate | Download | only in dev
      1 /* Copyright (c) 2010 The Chromium Authors. All rights reserved.
      2  * Use of this source code is governed by a BSD-style license that can be
      3  * found in the LICENSE file.
      4  */
      5 #ifndef PPAPI_C_DEV_DEPRECATED_BOOL_H_
      6 #define PPAPI_C_DEV_DEPRECATED_BOOL_H_
      7 
      8 /**
      9  * @file
     10  * Defines the API ...
     11  *
     12  * @addtogroup PP
     13  * @{
     14  */
     15 // TODO(ppapi authors):  Remove ppp_class_deprecated.h and ppb_var_deprecated.h
     16 // and remove this file.  This is only here to ease the transition from
     17 // deprecated interfaces to the new ones.  Add a usable definition of bool for
     18 // C code.
     19 #if !defined(__cplusplus)
     20 # if defined(_MSC_VER) || !defined(__STDC_VERSION__) || \
     21     (__STDC_VERSION__ < 199901L)
     22 // The Visual Studio C compiler and older versions of GCC do not support C99
     23 // and thus have no bool or stdbool.h.  Make a simple definition of bool,
     24 // true, and false to make this deprecated interface compile in C.  Force it
     25 // to 1 byte to have some chance of ABI compatibility between C and C++, in
     26 // case we don't remove this.
     27 typedef char bool;
     28 #  define false 0
     29 #  define true 1
     30 # else
     31 // In C99-compliant compilers, we can include stdbool.h to get a bool
     32 // definition.
     33 #  include <stdbool.h>
     34 # endif
     35 #endif
     36 
     37 /**
     38  * @}
     39  * End addtogroup PP
     40  */
     41 
     42 #endif  /* PPAPI_C_DEV_DEPRECATED_BOOL_H_ */
     43 
     44