aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/expr.c
diff options
context:
space:
mode:
authorAndrew Lewycky <andrew@mxc.ca>2003-03-12 17:24:48 -0500
committerJason Merrill <jason@gcc.gnu.org>2003-03-12 17:24:48 -0500
commit847311f4570e0182e9f9c4759fcffd7c4da07477 (patch)
treec8a7fb056d60c96eb16729f4d66e63d6bfdcbd45 /gcc/cp/expr.c
parentff8b9ca85f20291cddd44025f1f395bffe433133 (diff)
downloadgcc-847311f4570e0182e9f9c4759fcffd7c4da07477.zip
gcc-847311f4570e0182e9f9c4759fcffd7c4da07477.tar.gz
gcc-847311f4570e0182e9f9c4759fcffd7c4da07477.tar.bz2
re PR c++/7050 (g++ segfaults on: (i ? get_string() : throw))
PR c++/7050 * expr.c (store_expr): Don't attempt to store void-typed trees, just evaluate them for side effects. * cp/expr.c (cxx_expand_expr): Return const0_rtx for throw expressions. From-SVN: r64268
Diffstat (limited to 'gcc/cp/expr.c')
-rw-r--r--gcc/cp/expr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/cp/expr.c b/gcc/cp/expr.c
index 7252a4d..160a946 100644
--- a/gcc/cp/expr.c
+++ b/gcc/cp/expr.c
@@ -105,7 +105,7 @@ cxx_expand_expr (tree exp, rtx target, enum machine_mode tmode, int modifier)
case THROW_EXPR:
expand_expr (TREE_OPERAND (exp, 0), const0_rtx, VOIDmode, 0);
- return NULL;
+ return const0_rtx;
case MUST_NOT_THROW_EXPR:
expand_eh_region_start ();