From: Jeff Sturm Date: Wed, 16 May 2001 06:41:10 +0000 (+0000) Subject: expr.c (build_class_init): Move MODIFY_EXPR outside of COND_EXPR. X-Git-Tag: prereleases/libstdc++-3.0.95~4446 X-Git-Url: https://gcc.gnu.org/git/?a=commitdiff_plain;h=8fc6a63c64aeb6c6464f2419a67033acc693218d;p=gcc.git expr.c (build_class_init): Move MODIFY_EXPR outside of COND_EXPR. 2000-05-02 Jeff Sturm * expr.c (build_class_init): Move MODIFY_EXPR outside of COND_EXPR. Remove variable `call'. From-SVN: r42134 --- diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 686bf0a8e380..7fd7de5b6e36 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -34,6 +34,11 @@ * lex.c (java_new_lexer): Call iconv_close on temp handle used to check for byte swap. +2000-05-02 Jeff Sturm + + * expr.c (build_class_init): Move MODIFY_EXPR + outside of COND_EXPR. Remove variable `call'. + 2001-05-02 Kaveh R. Ghazi * decl.c: NULL_PTR -> NULL. diff --git a/gcc/java/expr.c b/gcc/java/expr.c index 861069d95bc3..9ba0739d7d76 100644 --- a/gcc/java/expr.c +++ b/gcc/java/expr.c @@ -1662,7 +1662,7 @@ tree build_class_init (clas, expr) tree clas, expr; { - tree init, call; + tree init; struct init_test_hash_entry *ite; if (inherits_from_p (current_class, clas)) return expr; @@ -1693,14 +1693,14 @@ build_class_init (clas, expr) build_tree_list (NULL_TREE, build_class_ref (clas)), NULL_TREE); TREE_SIDE_EFFECTS (init) = 1; - call = build (COMPOUND_EXPR, TREE_TYPE (expr), init, - build (MODIFY_EXPR, boolean_type_node, - ite->init_test_decl, boolean_true_node)); - TREE_SIDE_EFFECTS (call) = 1; init = build (COND_EXPR, void_type_node, build (EQ_EXPR, boolean_type_node, ite->init_test_decl, boolean_false_node), - call, integer_zero_node); + init, integer_zero_node); + TREE_SIDE_EFFECTS (init) = 1; + init = build (COMPOUND_EXPR, TREE_TYPE (expr), init, + build (MODIFY_EXPR, boolean_type_node, + ite->init_test_decl, boolean_true_node)); TREE_SIDE_EFFECTS (init) = 1; }