Mercurial > hg > octave-nkf > gnulib-hg
changeset 4493:31f4c3f2d714
(_Bool): Make it signed char instead of an enum type.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Sun, 03 Aug 2003 07:12:50 +0000 |
parents | 8bb0e7e74dc0 |
children | 38c505a6d194 |
files | lib/stdbool_.h |
diffstat | 1 files changed, 7 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/lib/stdbool_.h +++ b/lib/stdbool_.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2002 Free Software Foundation, Inc. +/* Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. Written by Bruno Haible <haible@clisp.cons.org>, 2001. This program is free software; you can redistribute it and/or modify @@ -29,10 +29,14 @@ # undef true #endif -/* For the sake of symbolic names in gdb, define _Bool as an enum type. */ +/* 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@ -typedef enum { false = 0, true = 1 } _Bool; +enum { false = 0, true = 1 }; +typedef signed char _Bool; # endif #else typedef bool _Bool;