diff options
| -rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
| -rw-r--r-- | gcc/cp/except.c | 5 |
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index a6e2c25..acc0bd4 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2004-01-16 Jason Merrill <jason@redhat.com> + + PR c++/11725 + * except.c (build_throw): In a template, set + current_function_returns_abnormally. + 2004-01-17 Fred Fish <fnf@intrinsity.com> PR c++/11895 diff --git a/gcc/cp/except.c b/gcc/cp/except.c index 03a3274..8e03259 100644 --- a/gcc/cp/except.c +++ b/gcc/cp/except.c @@ -621,7 +621,10 @@ build_throw (tree exp) return exp; if (processing_template_decl) - return build_min (THROW_EXPR, void_type_node, exp); + { + current_function_returns_abnormally = 1; + return build_min (THROW_EXPR, void_type_node, exp); + } if (exp == null_node) warning ("throwing NULL, which has integral, not pointer type"); |
