From c2465daec4df2d1a03be26a1fa9147382964a16e Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Fri, 24 May 2019 10:38:44 -0400 Subject: [PATCH] Revert "* gimplify.c (gimplify_cond_expr): Don't check TREE_ADDRESSABLE." This reverts commit ac0f04360cc04e5b80a7d74f7edc47e395d2e744. From-SVN: r271604 --- gcc/ChangeLog | 5 +++++ gcc/gimplify.c | 6 ++---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d731bed21a3..6bc4d1a3996 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2019-05-24 Jason Merrill + + Revert: + * gimplify.c (gimplify_cond_expr): Don't check TREE_ADDRESSABLE. + 2019-05-24 Richard Biener PR testsuite/90607 diff --git a/gcc/gimplify.c b/gcc/gimplify.c index 8337b36c411..e5713dd4e8c 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -3990,12 +3990,10 @@ gimplify_cond_expr (tree *expr_p, gimple_seq *pre_p, fallback_t fallback) tree result; /* If either an rvalue is ok or we do not require an lvalue, create the - temporary. We cannot do that if the type is addressable, but - that should have been avoided before we got here. */ + temporary. But we cannot do that if the type is addressable. */ if (((fallback & fb_rvalue) || !(fallback & fb_lvalue)) - && (flag_checking || !TREE_ADDRESSABLE (type))) + && !TREE_ADDRESSABLE (type)) { - gcc_assert (!TREE_ADDRESSABLE (type)); if (gimplify_ctxp->allow_rhs_cond_expr /* If either branch has side effects or could trap, it can't be evaluated unconditionally. */ -- 2.30.2