This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/30017] [4.3 Regression] ICE in cp_expr_size, at cp/cp-objcp-common.c:101



------- Comment #14 from jh at suse dot cz  2006-11-30 18:54 -------
Subject: Re:  [4.3 Regression] ICE in cp_expr_size, at cp/cp-objcp-common.c:101

> > The code has not undefined behavior, but I think removing the check is ok (it's
> > certainly not supposed to trigger _inside_ the assignment operator or the
> > copy constructor).
> 
> Actually I don't think removing that check is ok.  Allows us to find problems
> with the gimplifier, when it is trying to create a temprorary variable when it
> should not.

Well, actually we probably need to decide on one thing - ie if we want
to allow such a moves later at gimple form.  I would say that we want to
as we want to make gimple language indepdendent in longer form and thus
classes are just aggregates as of any kind and assigning them is safe.
If we don't want to, we need to come with check prohibiting builtins.c
to construct the assignment.
If we want to, we need to find way to either relax or elliminate the
check or move it to better place.  I still wonder why do we need
expr_size hook that late in compilation?
(ie using TYPE_UNIT_SIZE instead would solve the problem too)

Honza


-- 


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]