aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1994-07-29 17:16:58 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1994-07-29 17:16:58 -0400
commit4f8454651173aed131dda8d9e727e39726ea117d (patch)
tree8272dda4e6f7d216e27a09e20c94605a41eb7efc /gcc
parente5952538c4196ee92064db9cbff88e1ca2eeb5ce (diff)
downloadgcc-4f8454651173aed131dda8d9e727e39726ea117d.zip
gcc-4f8454651173aed131dda8d9e727e39726ea117d.tar.gz
gcc-4f8454651173aed131dda8d9e727e39726ea117d.tar.bz2
(special_symbol, do_xifdef): Don't access value.defn of a T_CONST.
From-SVN: r7819
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cccp.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/cccp.c b/gcc/cccp.c
index 640b36b..01f1c66 100644
--- a/gcc/cccp.c
+++ b/gcc/cccp.c
@@ -3925,7 +3925,8 @@ special_symbol (hp, op)
goto oops;
if (hp = lookup (ip->bufp, -1, -1)) {
if (pcp_outfile && pcp_inside_if
- && hp->value.defn->predefined)
+ && (hp->type == T_CONST
+ || (hp->type == T_MACRO && hp->value.defn->predefined)))
/* Output a precondition for this macro use. */
fprintf (pcp_outfile, "#define %s\n", hp->name);
buf = " 1 ";
@@ -6790,7 +6791,9 @@ do_xifdef (buf, limit, op, keyword)
if (pcp_outfile) {
/* Output a precondition for this macro. */
- if (hp && hp->value.defn->predefined)
+ if (hp &&
+ (hp->type == T_CONST
+ || (hp->type == T_MACRO && hp->value.defn->predefined)))
fprintf (pcp_outfile, "#define %s\n", hp->name);
else {
U_CHAR *cp = buf;