From af9317571ff7452dc1f7ffea5dbab6b9f0bcc36f Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Mon, 28 Jul 2003 08:35:37 +0000 Subject: [PATCH] Renamed from stdbool.hin. --- lib/.cvsignore | 1 - lib/stdbool_.h | 51 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 lib/stdbool_.h diff --git a/lib/.cvsignore b/lib/.cvsignore index e57a62d430..3d2ec05a7f 100644 --- a/lib/.cvsignore +++ b/lib/.cvsignore @@ -11,5 +11,4 @@ safe-lstat.h safe-stat.c safe-stat.h stat.c -stdbool_.h unlocked-io.h diff --git a/lib/stdbool_.h b/lib/stdbool_.h new file mode 100644 index 0000000000..d0cb70d54c --- /dev/null +++ b/lib/stdbool_.h @@ -0,0 +1,51 @@ +/* Copyright (C) 2001-2003 Free Software Foundation, Inc. + Written by Bruno Haible , 2001. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifndef _STDBOOL_H +#define _STDBOOL_H + +/* ISO C 99 for platforms that lack it. */ + +/* 7.16. Boolean type and values */ + +/* BeOS already #defines false 0, true 1. We use the same + definitions below, but temporarily we have to #undef them. */ +#ifdef __BEOS__ +# undef false +# undef true +#endif + +/* For the sake of symbolic names in gdb, define true and false as + enum constants. However, do not define _Bool as the enum type, + since the enum type might be compatible with unsigned int, whereas + _Bool must promote to int. */ +#ifndef __cplusplus +# if !@HAVE__BOOL@ +enum { false = 0, true = 1 }; +typedef signed char _Bool; +# endif +#else +typedef bool _Bool; +#endif +#define bool _Bool + +/* The other macros must be usable in preprocessor directives. */ +#define false 0 +#define true 1 +#define __bool_true_false_are_defined 1 + +#endif /* _STDBOOL_H */ -- 2.47.2