[Bug middle-end/31541] [4.3 Regression] cannot take address of bit field
hubicka at ucw dot cz
gcc-bugzilla@gcc.gnu.org
Fri Jun 22 09:35:00 GMT 2007
------- Comment #12 from hubicka at ucw dot cz 2007-06-22 09:35 -------
Subject: Re: [4.3 Regression] cannot take address of bit field
Hi,
I've experimented with this a bit - the problem is that the error is
produced during gimplification: gimplifier translates the expression
into the addr_expr form and later gimplifying the addr_expr it calls the
mark_addressable langhook that porudces the error.
It seems to me that this langhook call is unnecesary. Removing it
breaks since C++ is sometimes producing references to objects not having
addr_expr during gimplification, but it seems to me that adding just
generic code that takes gimple addr_expr and marks bit addressable (just
as aliasing does) instead the full blown langhook should just work?
THe typechecking in frontend should be enough to catch this sort of
syntax errors (when address is taken form something language prohibits).
Does this seem sane?
Honza
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31541
More information about the Gcc-bugs
mailing list