c++/9342: [3.3/3.4 regression] another ICE in cp_expr_size at cp/cp-lang.c: 304

Janis Johnson janis187@us.ibm.com
Thu Jan 16 20:26:00 GMT 2003


This regression showed up starting with this patch:

--- gcc/ChangeLog ---
2002-08-02  Jason Merrill  <jason@redhat.com>

        * langhooks-def.h (LANG_HOOKS_EXPR_SIZE): New macro.
        * langhooks.c (lhd_expr_size): Define default.
        * langhooks.h (struct lang_hooks): Add expr_size.
        * explow.c (expr_size): Call it.
        * expr.c (store_expr): Don't copy an expression of size zero.
        (expand_expr) [CONSTRUCTOR]: Use expr_size to calculate how much

        to store.
        * Makefile.in (builtins.o): Depend on langhooks.h.

--- gcc/cp/ChangeLog ---
        * cp-lang.c (LANG_HOOKS_EXPR_SIZE): Define.
        (cp_expr_size): New fn.
        * call.c (build_over_call): Lose empty class hackery.
        (convert_arg_to_ellipsis): Promote non-POD warning to error.
        * typeck.c (build_modify_expr): Don't use save_expr on an
lvalue.

The ICE can be reproduced on i686-linux with the reduced
test case.

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9342





More information about the Gcc-bugs mailing list