[Bug middle-end/46488] [4.5 regression] server/core_filters.c from apache httpd 2.2.17 miscompiled at -O3
rguenther at suse dot de
gcc-bugzilla@gcc.gnu.org
Wed Dec 1 10:13:00 GMT 2010
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46488
--- Comment #36 from rguenther at suse dot de <rguenther at suse dot de> 2010-12-01 10:12:21 UTC ---
On Tue, 30 Nov 2010, ebotcazou at gcc dot gnu.org wrote:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46488
>
> --- Comment #35 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2010-11-30 23:25:57 UTC ---
> > I said in my comment that adding temporaries could correct the issue,
> > but they do not. I had some different test trees, and reviewing them,
> > what actually "corrected" in one of the builds was adding a volatile
> > modifier to APR_RING_HEAD, as in:
> >
> > #define APR_RING_HEAD(head, elem) \
> > struct head { \
> > struct elem * volatile next; \
> > struct elem * volatile prev; \
> > }
> >
> > to better match APR_RING_ENTRY.
>
> Probably a reasonable workaround. Having 2 different constructs APR_RING_ENTRY
> and APR_RING_HEAD for the same object is strange in any case.
If you'd re-use the same type the issue would go away as well (I think).
Richard.
More information about the Gcc-bugs
mailing list