aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog21
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/cp-tree.h2
-rw-r--r--gcc/cppinit.c2
-rw-r--r--gcc/f/ChangeLog5
-rw-r--r--gcc/f/proj.h2
-rw-r--r--gcc/gansidecl.h2
-rw-r--r--gcc/rtl.c2
-rw-r--r--gcc/rtl.h8
-rw-r--r--gcc/toplev.h2
-rw-r--r--gcc/tree.c2
-rw-r--r--gcc/tree.h8
-rw-r--r--gcc/varray.c2
-rw-r--r--gcc/varray.h2
-rw-r--r--include/ChangeLog5
-rw-r--r--include/ansidecl.h31
16 files changed, 75 insertions, 26 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b72b02e..6949bb6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,24 @@
+Wed Nov 10 12:43:21 1999 Philippe De Muyter <phdm@macqel.be>
+ Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cppinit.c: Test `GCC_VERSION', not `HAVE_GCC_VERSION'.
+
+ * gansidecl.h: Likewise.
+
+ * rtl.c: Likewise.
+
+ * rtl.h: Likewise.
+
+ * toplev.h: Likewise.
+
+ * tree.c: Likewise.
+
+ * tree.h: Likewise.
+
+ * varray.c: Likewise.
+
+ * varray.h: Likewise.
+
Wed Nov 10 10:57:22 1999 Clinton Popetz <cpopetz@cygnus.com>
* gcov.c (struct arcdata): Add hits and total, remove prob.
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index e1b34f8..0f4e3f5 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+Wed Nov 10 12:43:21 1999 Philippe De Muyter <phdm@macqel.be>
+ Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cp-tree.h: Test `GCC_VERSION', not `HAVE_GCC_VERSION'.
+
1999-11-09 Mark Mitchell <mark@codesourcery.com>
* cp-tree.h (language_function): Remove x_last_dtor_insn and
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index eba8e02..f4059a2 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -124,7 +124,7 @@ Boston, MA 02111-1307, USA. */
/* Language-specific tree checkers. */
-#if defined ENABLE_CHECKING && HAVE_GCC_VERSION(2,7)
+#if defined ENABLE_CHECKING && (GCC_VERSION >= 2007)
#define VAR_OR_FUNCTION_DECL_CHECK(NODE) \
({ const tree __t = NODE; \
diff --git a/gcc/cppinit.c b/gcc/cppinit.c
index fa41c3c..691e1b0 100644
--- a/gcc/cppinit.c
+++ b/gcc/cppinit.c
@@ -216,7 +216,7 @@ enum { QUOTE = 0, BRACKET, SYSTEM, AFTER };
#define CAT(a, b) a/**/b
#endif
-#if HAVE_GCC_VERSION(2,7)
+#if (GCC_VERSION >= 2007)
#define TABLE(id) static inline void CAT(init_, id) PARAMS ((void)) {} \
unsigned char id[256] = {
#define s(p, v) [p] = v,
diff --git a/gcc/f/ChangeLog b/gcc/f/ChangeLog
index f676c45..258affe 100644
--- a/gcc/f/ChangeLog
+++ b/gcc/f/ChangeLog
@@ -1,3 +1,8 @@
+Wed Nov 10 12:43:21 1999 Philippe De Muyter <phdm@macqel.be>
+ Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * proj.h: Test `GCC_VERSION', not `HAVE_GCC_VERSION'.
+
Tue Oct 26 01:32:19 1999 Mark Mitchell <mark@codesourcery.com>
* com.c (poplevel): Don't call remember_end_note.
diff --git a/gcc/f/proj.h b/gcc/f/proj.h
index 96bb44a..d55bd88 100644
--- a/gcc/f/proj.h
+++ b/gcc/f/proj.h
@@ -31,7 +31,7 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#endif
#include "system.j"
-#if ! HAVE_GCC_VERSION(2,0)
+#if (GCC_VERSION < 2000)
#error "You have to use gcc 2.x to build g77 (might be fixed in g77-0.6)."
#endif
diff --git a/gcc/gansidecl.h b/gcc/gansidecl.h
index 17a7c91..ae88cca 100644
--- a/gcc/gansidecl.h
+++ b/gcc/gansidecl.h
@@ -41,7 +41,7 @@ Boston, MA 02111-1307, USA. */
need to do this very early; i.e. before any systems header files or
gcc header files in case they use these keywords. Otherwise
conflicts might occur. */
-#if HAVE_GCC_VERSION(2,7)
+#if (GCC_VERSION >= 2007)
# undef const
# undef inline
# define inline __inline__ /* Modern gcc can use `__inline__' freely. */
diff --git a/gcc/rtl.c b/gcc/rtl.c
index 80b791d..77800e3 100644
--- a/gcc/rtl.c
+++ b/gcc/rtl.c
@@ -1128,7 +1128,7 @@ read_rtx (infile)
return return_rtx;
}
-#if defined ENABLE_CHECKING && HAVE_GCC_VERSION(2,7)
+#if defined ENABLE_CHECKING && (GCC_VERSION >= 2007)
void
rtl_check_failed_bounds (r, n, file, line, func)
rtx r;
diff --git a/gcc/rtl.h b/gcc/rtl.h
index baa4d83..bcf0278 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -226,7 +226,7 @@ typedef struct rtvec_def{
/* General accessor macros for accessing the fields of an rtx. */
-#if defined ENABLE_CHECKING && HAVE_GCC_VERSION(2,7)
+#if defined ENABLE_CHECKING && (GCC_VERSION >= 2007)
/* The bit with a star outside the statement expr and an & inside is
so that N can be evaluated only once. */
#define RTL_CHECK1(RTX, N, C1) \
@@ -1679,10 +1679,10 @@ extern int read_rtx_lineno;
extern void fancy_abort PROTO((const char *, int, const char *))
ATTRIBUTE_NORETURN;
-#if ! HAVE_GCC_VERSION(2,7)
-#define abort() fancy_abort (__FILE__, __LINE__, 0)
-#else
+#if (GCC_VERSION >= 2007)
#define abort() fancy_abort (__FILE__, __LINE__, __PRETTY_FUNCTION__)
+#else
+#define abort() fancy_abort (__FILE__, __LINE__, 0)
#endif
/* In alias.c */
diff --git a/gcc/toplev.h b/gcc/toplev.h
index f0d1b61..7165457 100644
--- a/gcc/toplev.h
+++ b/gcc/toplev.h
@@ -51,7 +51,7 @@ extern void _fatal_insn PROTO ((const char *,
const char *))
ATTRIBUTE_NORETURN;
-#if HAVE_GCC_VERSION(2,7)
+#if (GCC_VERSION >= 2007)
#define fatal_insn(msgid, insn) \
_fatal_insn (msgid, insn, __FILE__, __LINE__, __PRETTY_FUNCTION__)
#define fatal_insn_not_found(insn) \
diff --git a/gcc/tree.c b/gcc/tree.c
index c3a95a6..ea5c1bf 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -5136,7 +5136,7 @@ get_set_constructor_bytes (init, buffer, wd_size)
return non_const_bits;
}
-#if defined ENABLE_CHECKING && HAVE_GCC_VERSION(2,7)
+#if defined ENABLE_CHECKING && (GCC_VERSION >= 2007)
/* Complain that the tree code of NODE does not match the expected CODE.
FILE, LINE, and FUNCTION are of the caller. */
void
diff --git a/gcc/tree.h b/gcc/tree.h
index 4af3a1d..42760c8 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -321,7 +321,7 @@ struct tree_common
/* When checking is enabled, errors will be generated if a tree node
is accessed incorrectly. The macros abort with a fatal error. */
-#if defined ENABLE_CHECKING && HAVE_GCC_VERSION(2,7)
+#if defined ENABLE_CHECKING && (GCC_VERSION >= 2007)
#define TREE_CHECK(t, code) \
({ const tree __t = t; \
@@ -2513,8 +2513,8 @@ extern void dwarf2out_end_epilogue PROTO((void));
extern void fancy_abort PROTO((const char *, int, const char *))
ATTRIBUTE_NORETURN;
-#if ! HAVE_GCC_VERSION(2,7)
-#define abort() fancy_abort (__FILE__, __LINE__, 0)
-#else
+#if (GCC_VERSION >= 2007)
#define abort() fancy_abort (__FILE__, __LINE__, __PRETTY_FUNCTION__)
+#else
+#define abort() fancy_abort (__FILE__, __LINE__, 0)
#endif
diff --git a/gcc/varray.c b/gcc/varray.c
index 95752c4..34ce80b 100644
--- a/gcc/varray.c
+++ b/gcc/varray.c
@@ -71,7 +71,7 @@ varray_grow (va, n)
/* Check the bounds of a varray access. */
-#if defined ENABLE_CHECKING && HAVE_GCC_VERSION(2,7)
+#if defined ENABLE_CHECKING && (GCC_VERSION >= 2007)
extern void error PVPROTO ((const char *, ...)) ATTRIBUTE_PRINTF_1;
diff --git a/gcc/varray.h b/gcc/varray.h
index b826b63..51be014 100644
--- a/gcc/varray.h
+++ b/gcc/varray.h
@@ -163,7 +163,7 @@ extern varray_type varray_grow PROTO((varray_type, size_t));
#define VARRAY_SIZE(VA) ((VA)->num_elements)
/* Check for VARRAY_xxx macros being in bound. */
-#if defined ENABLE_CHECKING && HAVE_GCC_VERSION(2,7)
+#if defined ENABLE_CHECKING && (GCC_VERSION >= 2007)
extern void varray_check_failed PROTO ((varray_type, size_t,
const char *, int,
const char *)) ATTRIBUTE_NORETURN;
diff --git a/include/ChangeLog b/include/ChangeLog
index 545574f..5bdc290 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,8 @@
+Wed Nov 10 12:43:21 1999 Philippe De Muyter <phdm@macqel.be>
+ Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ansidecl.h: Define and test `GCC_VERSION', not `HAVE_GCC_VERSION'.
+
1999-10-23 08:51 -0700 Zack Weinberg <zack@bitmover.com>
* hashtab.h: Give hash_table_t a struct tag. Add prototypes
diff --git a/include/ansidecl.h b/include/ansidecl.h
index 8fe3893..2b5c0e7 100644
--- a/include/ansidecl.h
+++ b/include/ansidecl.h
@@ -160,27 +160,40 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#endif /* ANSI C. */
-/* This macro will return true if we are using gcc, and it is of a
- particular minimum version (both major & minor numbers are checked.) */
-#ifndef HAVE_GCC_VERSION
+
+/* Using MACRO(x,y) in cpp #if conditionals does not work with some
+ older preprocessors. Thus we can't define something like this:
+
#define HAVE_GCC_VERSION(MAJOR, MINOR) \
(__GNUC__ > (MAJOR) || (__GNUC__ == (MAJOR) && __GNUC_MINOR__ >= (MINOR)))
-#endif /* ! HAVE_GCC_VERSION */
+
+and then test "#if HAVE_GCC_VERSION(2,7)".
+
+So instead we use the macro below and test it against specific values. */
+
+/* This macro simplifies testing whether we are using gcc, and if it
+ is of a particular minimum version. (Both major & minor numbers are
+ significant.) This macro will evaluate to 0 if we are not using
+ gcc at all. */
+#ifndef GCC_VERSION
+#define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__)
+#endif /* GCC_VERSION */
/* Define macros for some gcc attributes. This permits us to use the
macros freely, and know that they will come into play for the
version of gcc in which they are supported. */
-#if ! HAVE_GCC_VERSION(2,7)
+#if (GCC_VERSION < 2007)
# define __attribute__(x)
#endif
+/* Attributes on labels were valid as of gcc 2.93. */
#ifndef ATTRIBUTE_UNUSED_LABEL
-# if ! HAVE_GCC_VERSION(2,93)
-# define ATTRIBUTE_UNUSED_LABEL
-# else
+# if (GCC_VERSION >= 2093)
# define ATTRIBUTE_UNUSED_LABEL ATTRIBUTE_UNUSED
-# endif /* GNUC < 2.93 */
+# else
+# define ATTRIBUTE_UNUSED_LABEL
+# endif /* GNUC >= 2.93 */
#endif /* ATTRIBUTE_UNUSED_LABEL */
#ifndef ATTRIBUTE_UNUSED