X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/d7045ec67202b33b02242ecee50e96e2ee456514..b165c324a3149114250c796852dd2b33d79db67d:/lib/obstack.h diff --git a/lib/obstack.h b/lib/obstack.h index bb92232e..c0fc9ac6 100644 --- a/lib/obstack.h +++ b/lib/obstack.h @@ -1,23 +1,26 @@ /* obstack.h - object stack macros - Copyright (C) 1988,89,90,91,92,93,94,96,97,98,99 Free Software Foundation, Inc. + Copyright (C) 1988,89,90,91,92,93,94,96,97,98,99,2003 Free Software Foundation, Inc. This file is part of the GNU C Library. Its master source is NOT part of the C library, however. The master source lives in /gd/gnu/lib. - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public License as - published by the Free Software Foundation; either version 2 of the - License, or (at your option) any later version. + NOTE: The canonical source of this file is maintained with the GNU C Library. + Bugs can be reported to bug-glibc@gnu.org. - The GNU C Library is distributed in the hope that it will be useful, + 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 Library General Public License for more details. You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If not, - write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ + License along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, + USA. */ /* Summary: @@ -120,8 +123,12 @@ extern "C" { #endif #ifndef __INT_TO_PTR +#if defined __STDC__ && __STDC__ +# define __INT_TO_PTR(P) ((void *) ((P) + (char *) 0)) +#else # define __INT_TO_PTR(P) ((P) + (char *) 0) #endif +#endif /* We need the type of the resulting object. If __PTRDIFF_TYPE__ is defined, as with GNU C, use that; that way we don't pollute the @@ -365,12 +372,12 @@ extern int obstack_exit_failure; # define obstack_object_size(OBSTACK) \ __extension__ \ - ({ struct obstack *__o = (OBSTACK); \ + ({ struct obstack const *__o = (OBSTACK); \ (unsigned) (__o->next_free - __o->object_base); }) # define obstack_room(OBSTACK) \ __extension__ \ - ({ struct obstack *__o = (OBSTACK); \ + ({ struct obstack const *__o = (OBSTACK); \ (unsigned) (__o->chunk_limit - __o->next_free); }) # define obstack_make_room(OBSTACK,length) \ @@ -383,7 +390,7 @@ __extension__ \ # define obstack_empty_p(OBSTACK) \ __extension__ \ - ({ struct obstack *__o = (OBSTACK); \ + ({ struct obstack const *__o = (OBSTACK); \ (__o->chunk->prev == 0 && __o->next_free - __o->chunk->contents == 0); }) # define obstack_grow(OBSTACK,where,length) \