From 1a575e535af1f85c0dd6e891fd45dfa4d122fd8f Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Mon, 21 Mar 2005 15:25:39 +0000 Subject: [PATCH] re PR c++/20147 (ICE on undefined variable in statement expression) 2005-03-21 Paolo Carlini PR c++/20147 * semantics.c (finish_stmt_expr_expr): Return immediately if error_operand_p (expr). From-SVN: r96804 --- gcc/cp/ChangeLog | 6 ++++++ gcc/cp/semantics.c | 3 +++ 2 files changed, 9 insertions(+) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index b441bc027c48..9a94a61d1116 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2005-03-21 Paolo Carlini + + PR c++/20147 + * semantics.c (finish_stmt_expr_expr): Return immediately + if error_operand_p (expr). + 2005-03-19 Kriang Lerdsuwanakij PR c++/20240 diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index 45fa695f294d..bb2f3c925ad4 100644 --- a/gcc/cp/semantics.c +++ b/gcc/cp/semantics.c @@ -1443,6 +1443,9 @@ finish_stmt_expr_expr (tree expr) tree result = NULL_TREE; tree type = void_type_node; + if (error_operand_p (expr)) + return error_mark_node; + if (expr) { type = TREE_TYPE (expr); -- 2.47.2