diff options
author | James E Wilson <wilson@specifixinc.com> | 2004-02-09 21:32:37 +0000 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 2004-02-09 13:32:37 -0800 |
commit | 228ae085b590f8e440afa88c181ae5950744dbda (patch) | |
tree | 53f3cfa75b0b5ff17b86143bf2ac848f9241193e /gcc | |
parent | 664fc5df4a28cebf52350cd4496279c53dd28f88 (diff) | |
download | gcc-228ae085b590f8e440afa88c181ae5950744dbda.zip gcc-228ae085b590f8e440afa88c181ae5950744dbda.tar.gz gcc-228ae085b590f8e440afa88c181ae5950744dbda.tar.bz2 |
re PR c++/11295 (ICE when using a non-trivial object in a compound statement expression)
PR c++/11295
* c-common.c (c_expand_expr, case STMT_EXPR): Change expand_expr call
to expand_expr_real call, and pass in alt_rtl as last argument.
From-SVN: r77557
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/c-common.c | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6ba6220..8a99a01 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2004-02-09 James E Wilson <wilson@specifixinc.com> + PR c++/11295 + * c-common.c (c_expand_expr, case STMT_EXPR): Change expand_expr call + to expand_expr_real call, and pass in alt_rtl as last argument. + PR libstdc++/5625 * builtin-types.def (BT_WORD, BT_FN_WORD_PTR): New. * builtins.c (expand_builtin): Handle BUILT_IN_EXTEND_POINTER. diff --git a/gcc/c-common.c b/gcc/c-common.c index c31c671..e8370d5 100644 --- a/gcc/c-common.c +++ b/gcc/c-common.c @@ -4106,7 +4106,7 @@ c_expand_expr (tree exp, rtx target, enum machine_mode tmode, expand_stmt (STMT_EXPR_STMT (exp)); expand_end_stmt_expr (rtl_expr); - result = expand_expr (rtl_expr, target, tmode, modifier); + result = expand_expr_real (rtl_expr, target, tmode, modifier, alt_rtl); if (preserve_result && GET_CODE (result) == MEM) { if (GET_MODE (result) != BLKmode) |