From c67e6e1492b2e8cedf8a95731ee788dc919984be Mon Sep 17 00:00:00 2001 From: Roger Sayle Date: Sun, 28 Sep 2003 04:56:35 +0000 Subject: toplev.c (flag_evaluation_order): New global variable. * toplev.c (flag_evaluation_order): New global variable. * flags.h (flag_evaluation_order): Prototype here. * expr.c (expand_operands): If we need to preserve observable evaluation order, protect exp1 from clobbering exp0's result. * java/lang.c (java_init_options): Set flag_evaluation_order. * java/expr.c (force_evaluation_order): Don't attempt to force evaluation order of binary operations using save_expr. * java/parse.y (java_complete_lhs): No longer need to call force_evaluation_order when constructing binary operators. From-SVN: r71873 --- gcc/toplev.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gcc/toplev.c') diff --git a/gcc/toplev.c b/gcc/toplev.c index 03485bc..425a0259 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -988,6 +988,9 @@ int flag_trapv = 0; /* Nonzero if signed arithmetic overflow should wrap around. */ int flag_wrapv = 0; +/* Nonzero if subexpressions must be evaluated from left-to-right. */ +int flag_evaluation_order = 0; + /* Add or remove a leading underscore from user symbols. */ int flag_leading_underscore = -1; -- cgit v1.1