aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.h
diff options
context:
space:
mode:
authorRichard Henderson <rth@gcc.gnu.org>2002-03-26 01:06:11 -0800
committerRichard Henderson <rth@gcc.gnu.org>2002-03-26 01:06:11 -0800
commit82cf684b41e3b26837a0df5d5b8ec3d38e5709a6 (patch)
tree69de35592993a6d89279814c29921385cb6ce4cd /gcc/expr.h
parentf36dea3c926a8e614411b2ba542479f3f8cb0c17 (diff)
downloadgcc-82cf684b41e3b26837a0df5d5b8ec3d38e5709a6.zip
gcc-82cf684b41e3b26837a0df5d5b8ec3d38e5709a6.tar.gz
gcc-82cf684b41e3b26837a0df5d5b8ec3d38e5709a6.tar.bz2
expr.h (ADD_PARM_SIZE): Cast INC to ssizetype.
* expr.h (ADD_PARM_SIZE): Cast INC to ssizetype. (SUB_PARM_SIZE): Cast DEC to ssizetype. From-SVN: r51379
Diffstat (limited to 'gcc/expr.h')
-rw-r--r--gcc/expr.h41
1 files changed, 24 insertions, 17 deletions
diff --git a/gcc/expr.h b/gcc/expr.h
index 17f09b1..792c18c 100644
--- a/gcc/expr.h
+++ b/gcc/expr.h
@@ -75,23 +75,30 @@ struct args_size
/* Add the value of the tree INC to the `struct args_size' TO. */
-#define ADD_PARM_SIZE(TO, INC) \
-{ tree inc = (INC); \
- if (host_integerp (inc, 0)) \
- (TO).constant += tree_low_cst (inc, 0); \
- else if ((TO).var == 0) \
- (TO).var = inc; \
- else \
- (TO).var = size_binop (PLUS_EXPR, (TO).var, inc); }
-
-#define SUB_PARM_SIZE(TO, DEC) \
-{ tree dec = (DEC); \
- if (host_integerp (dec, 0)) \
- (TO).constant -= tree_low_cst (dec, 0); \
- else if ((TO).var == 0) \
- (TO).var = size_binop (MINUS_EXPR, ssize_int (0), dec); \
- else \
- (TO).var = size_binop (MINUS_EXPR, (TO).var, dec); }
+#define ADD_PARM_SIZE(TO, INC) \
+do { \
+ tree inc = (INC); \
+ if (host_integerp (inc, 0)) \
+ (TO).constant += tree_low_cst (inc, 0); \
+ else if ((TO).var == 0) \
+ (TO).var = inc; \
+ else \
+ (TO).var = size_binop (PLUS_EXPR, (TO).var, \
+ convert (ssizetype, inc)); \
+} while (0)
+
+#define SUB_PARM_SIZE(TO, DEC) \
+do { \
+ tree dec = (DEC); \
+ if (host_integerp (dec, 0)) \
+ (TO).constant -= tree_low_cst (dec, 0); \
+ else if ((TO).var == 0) \
+ (TO).var = size_binop (MINUS_EXPR, ssize_int (0), \
+ convert (ssizetype, dec)); \
+ else \
+ (TO).var = size_binop (MINUS_EXPR, (TO).var, \
+ convert (ssizetype, dec)); \
+} while (0)
/* Convert the implicit sum in a `struct args_size' into a tree
of type ssizetype. */