diff options
author | Jakub Jelinek <jakub@redhat.com> | 2017-11-28 09:43:32 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2017-11-28 09:43:32 +0100 |
commit | 9e851845f6bcd7c13f3d42c13cd2f1c0e87f68cc (patch) | |
tree | 64d90923bdd9deb69efa042cc7ae54b08df598bf /gcc/fortran/trans-stmt.c | |
parent | 11c1e63c90eb3540da0b7524a2d7571916102dfe (diff) | |
download | gcc-9e851845f6bcd7c13f3d42c13cd2f1c0e87f68cc.zip gcc-9e851845f6bcd7c13f3d42c13cd2f1c0e87f68cc.tar.gz gcc-9e851845f6bcd7c13f3d42c13cd2f1c0e87f68cc.tar.bz2 |
tree.def (SWITCH_EXPR): Change from 3 operand to 2 operand tree.
* tree.def (SWITCH_EXPR): Change from 3 operand to 2 operand tree.
Adjust comment.
* tree.h (SWITCH_LABELS): Remove.
* gimplify.c (gimplify_switch_expr): Don't test SWITCH_LABELS,
assert SWITCH_BODY is non-NULL.
* tree-pretty-print.c (dump_generic_node): Remove SWITCH_LABELS
handling.
* tree.c (block_may_fallthru): Always return true; for SWITCH_EXPR.
c/
* c-typeck.c (c_start_case): Build SWITCH_EXPR using build2 instead
of build3.
cp/
* cp-gimplify.c (genericize_switch_stmt): Build SWITCH_EXPR using
build2_loc instead of build3_loc.
ada/
* gcc-interface/trans.c (Case_Statement_to_gnu): Build SWITCH_EXPR
using build2 instead of build3.
jit/
* jit-playback.c (add_switch): Build SWITCH_EXPR using build2 instead
of build3. Formatting fixes. Adjust funciton comment.
fortran/
* trans-decl.c (gfc_trans_entry_master_switch): Build SWITCH_EXPR
using fold_build2_loc instead of fold_build3_loc.
* trans-io.c (io_result): Likewise.
* trans-stmt.c (gfc_trans_integer_select, gfc_trans_character_select):
Likewise.
go/
* go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR using
build2_loc instead of build3_loc.
brig/
* brigfrontend/brig-branch-inst-handler.cc
(brig_branch_inst_handler::operator): Build SWITCH_EXPR using build2
instead of build3.
From-SVN: r255192
Diffstat (limited to 'gcc/fortran/trans-stmt.c')
-rw-r--r-- | gcc/fortran/trans-stmt.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/gcc/fortran/trans-stmt.c b/gcc/fortran/trans-stmt.c index 96ca217..df29b78 100644 --- a/gcc/fortran/trans-stmt.c +++ b/gcc/fortran/trans-stmt.c @@ -2666,8 +2666,7 @@ gfc_trans_integer_select (gfc_code * code) } tmp = gfc_finish_block (&body); - tmp = fold_build3_loc (input_location, SWITCH_EXPR, NULL_TREE, - se.expr, tmp, NULL_TREE); + tmp = fold_build2_loc (input_location, SWITCH_EXPR, NULL_TREE, se.expr, tmp); gfc_add_expr_to_block (&block, tmp); tmp = build1_v (LABEL_EXPR, end_label); @@ -2952,8 +2951,8 @@ gfc_trans_character_select (gfc_code *code) gfc_add_block_to_block (&block, &expr1se.post); tmp = gfc_finish_block (&body); - tmp = fold_build3_loc (input_location, SWITCH_EXPR, NULL_TREE, - case_num, tmp, NULL_TREE); + tmp = fold_build2_loc (input_location, SWITCH_EXPR, NULL_TREE, + case_num, tmp); gfc_add_expr_to_block (&block, tmp); tmp = build1_v (LABEL_EXPR, end_label); @@ -3099,8 +3098,8 @@ gfc_trans_character_select (gfc_code *code) gfc_add_block_to_block (&block, &expr1se.post); tmp = gfc_finish_block (&body); - tmp = fold_build3_loc (input_location, SWITCH_EXPR, NULL_TREE, - case_num, tmp, NULL_TREE); + tmp = fold_build2_loc (input_location, SWITCH_EXPR, NULL_TREE, + case_num, tmp); gfc_add_expr_to_block (&block, tmp); tmp = build1_v (LABEL_EXPR, end_label); |