Commit 8a48be3a by Jason Merrill

add comment

From-SVN: r111701
parent 93f978b7
...@@ -724,7 +724,11 @@ build_throw (tree exp) ...@@ -724,7 +724,11 @@ build_throw (tree exp)
temp_expr = NULL_TREE; temp_expr = NULL_TREE;
stabilize_init (exp, &temp_expr); stabilize_init (exp, &temp_expr);
/* Wrap the initialization in a CLEANUP_POINT_EXPR so that cleanups
for temporaries within the initialization are run before the one
for the exception object, preserving LIFO order. */
exp = build1 (CLEANUP_POINT_EXPR, TREE_TYPE (exp), exp); exp = build1 (CLEANUP_POINT_EXPR, TREE_TYPE (exp), exp);
if (elided) if (elided)
exp = build2 (TRY_CATCH_EXPR, void_type_node, exp, exp = build2 (TRY_CATCH_EXPR, void_type_node, exp,
do_free_exception (ptr)); do_free_exception (ptr));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment