diff options
author | Zack Weinberg <zack@gcc.gnu.org> | 2001-04-04 00:46:27 +0000 |
---|---|---|
committer | Zack Weinberg <zack@gcc.gnu.org> | 2001-04-04 00:46:27 +0000 |
commit | d02af173409f89ccce70f4f5f381fb7dad5315f8 (patch) | |
tree | e2acf368cdca61d677ea69ecf9e7165377d277d8 /include | |
parent | 92788413ad4c6769b91a7da55253be0f1ae4571e (diff) | |
download | gcc-d02af173409f89ccce70f4f5f381fb7dad5315f8.tar.gz |
ansidecl.h: All logic from gcc/gansidecl.h moved here.
include:
* ansidecl.h: All logic from gcc/gansidecl.h moved here.
gcc:
* gansidecl.h: Delete file.
* configure.in: Change all refs to gansidecl.h to use
ansidecl.h. Adjust *_file_list so they know where ansidecl.h
lives.
* configure: Regenerate.
* Makefile.in (intl.o): Don't depend on gansidecl.h.
* defaults.h: s/gansidecl.h/ansidecl.h/ in comment.
* ggc.h, config/fr30/fr30.h, config/mcore/mcore.c:
Don't include gansidecl.h.
* intl.c, main.c, version.c, fixinc/fixlib.h,
fixinc/procopen.c, fixinc/server.c: Include ansidecl.h not
gansidecl.h.
gcc/java:
* Make-lang.in (buffer.o, check-init.o, class.o): Don't depend
on gansidecl.h.
* buffer.c, jvgenmain.c: Don't include gansidecl.h.
libiberty:
* make-temp-file.c (try): Inline.
From-SVN: r41069
Diffstat (limited to 'include')
-rw-r--r-- | include/ChangeLog | 4 | ||||
-rw-r--r-- | include/ansidecl.h | 28 |
2 files changed, 32 insertions, 0 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index 93342812d6b..a0372d43588 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +2001-04-03 Zack Weinberg <zackw@stanford.edu> + + * ansidecl.h: All logic from gcc/gansidecl.h moved here. + 2001-03-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> * libiberty.h (alloca): Handle setting C_ALLOCA. diff --git a/include/ansidecl.h b/include/ansidecl.h index 545a62103a9..88187be6786 100644 --- a/include/ansidecl.h +++ b/include/ansidecl.h @@ -161,6 +161,15 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #endif /* ANSI C. */ +/* This is for GCC, which has historically used typed null pointer + constants. It needs to be here so it is seen by headers included + by gcc's config.h. + + FIXME: GCC probably doesn't need to use typed nulls anymore. + Clean it up, then remove this. Ware variable-argument functions. */ +#ifdef IN_GCC +# define NULL_PTR ((PTR) 0) +#endif /* Using MACRO(x,y) in cpp #if conditionals does not work with some older preprocessors. Thus we can't define something like this: @@ -230,4 +239,23 @@ So instead we use the macro below and test it against specific values. */ #define __extension__ #endif +/* Bootstrap support: Autoconf will possibly define the `inline' or + `const' keywords as macros, however this is only valid for the + stage1 compiler. If we detect a modern version of gcc, + unconditionally reset the values. This makes sure the right thing + happens in stage2 and later. We need to do this very early; + i.e. before any header files that might use these keywords. + Otherwise conflicts might occur. */ + +#if (GCC_VERSION >= 2007) +# ifdef __STDC__ +# undef const +# endif +# undef inline +# define inline __inline__ /* __inline__ prevents -pedantic warnings */ +# ifndef HAVE_LONG_DOUBLE +# define HAVE_LONG_DOUBLE 1 +# endif +#endif /* GCC >= 2.7 */ + #endif /* ansidecl.h */ |