diff options
author | Mark Mitchell <mark@codesourcery.com> | 1999-09-27 01:27:18 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 1999-09-27 01:27:18 +0000 |
commit | 59ccf49da343eb034258f5fe6282da6ed6751cf4 (patch) | |
tree | 1b29796b2aee3f4dfa3db27106f7aebfefc0e732 /gcc/cp/expr.c | |
parent | bfcccecc564752b7ef55ac9ca32ab8df0c5ba1dc (diff) | |
download | gcc-59ccf49da343eb034258f5fe6282da6ed6751cf4.zip gcc-59ccf49da343eb034258f5fe6282da6ed6751cf4.tar.gz gcc-59ccf49da343eb034258f5fe6282da6ed6751cf4.tar.bz2 |
cp-tree.h (expand_throw): Remove prototype.
* cp-tree.h (expand_throw): Remove prototype.
* except.c (expand_throw): Make it static. Use tree-generation
functions, rather than RTL-generation functions.
(build_throw): Use it.
* expr.c: Include except.h.
(cplus_expand_expr): Don't call expand_throw here.
* Makefile.in (expr.o): Depend on except.h.
* ir.texi: Update documentation for THROW_EXPR.
* decl.c (start_function): Set x_dont_save_pending_sizes rather
than calling get_pending_sizes.
* init.c (build_new): Don't save and restore
immediate_size_expand; instead, assert that it has the expected
value already.
From-SVN: r29671
Diffstat (limited to 'gcc/cp/expr.c')
-rw-r--r-- | gcc/cp/expr.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/cp/expr.c b/gcc/cp/expr.c index 741174e..5b5352e 100644 --- a/gcc/cp/expr.c +++ b/gcc/cp/expr.c @@ -28,6 +28,7 @@ Boston, MA 02111-1307, USA. */ #include "expr.h" #include "cp-tree.h" #include "toplev.h" +#include "except.h" #if 0 static tree extract_aggr_init PROTO((tree, tree)); @@ -228,7 +229,8 @@ cplus_expand_expr (exp, target, tmode, modifier) return DECL_RTL (exp); case THROW_EXPR: - expand_throw (TREE_OPERAND (exp, 0)); + expand_expr (TREE_OPERAND (exp, 0), const0_rtx, VOIDmode, 0); + expand_internal_throw (); return NULL; case VEC_INIT_EXPR: |