------- Comment #6 from jason at gcc dot gnu dot org  2006-08-21 20:55 -------
Subject: Bug 27115

Author: jason
Date: Mon Aug 21 20:54:57 2006
New Revision: 116311

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=116311
Log:
        PR c++/27115
        * gimplify.c (voidify_wrapper_expr): Handle STATEMENT_LIST as a
        wrapper.  Loop to handle nested wrappers.
        (gimplify_bind_expr): Remove temp parameter.
        (gimplify_modify_expr_rhs): Handle CLEANUP_POINT_EXPR, BIND_EXPR
        and STATEMENT_LIST on the rhs.
        (gimplify_statement_list): Voidify the STATEMENT_LIST.
        (gimplify_expr): Pass pre_p to gimplify_statement_list.
        (gimplify_target_expr): Remove special BIND_EXPR handling.
        * cp/semantics.c (finish_stmt_expr_expr): Don't try to voidify here,
        just leave the expression as it is.
        (finish_stmt_expr): If the statement-expression has class type,
        wrap it in a TARGET_EXPR.
        * cp/cp-gimplify.c (cp_gimplify_init_expr): Don't bother with
        CLEANUP_POINT_EXPR.
        * cp/except.c (build_throw): Give the CLEANUP_POINT_EXPR void type.

Added:
    trunk/gcc/testsuite/g++.dg/abi/forced-sticky.C
    trunk/gcc/testsuite/g++.dg/abi/forced.C
    trunk/gcc/testsuite/g++.dg/ext/stmtexpr8.C
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-gimplify.c
    trunk/gcc/cp/except.c
    trunk/gcc/cp/semantics.c
    trunk/gcc/gimplify.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27115

Reply via email to