aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/gimplify.c6
2 files changed, 7 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d731bed..6bc4d1a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2019-05-24 Jason Merrill <jason@redhat.com>
+
+ Revert:
+ * gimplify.c (gimplify_cond_expr): Don't check TREE_ADDRESSABLE.
+
2019-05-24 Richard Biener <rguenther@suse.de>
PR testsuite/90607
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index 8337b36..e5713dd 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. */