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. 27typedef 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