https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59711
Andrew Pinski changed:
What|Removed |Added
Target Milestone|--- |6.0
See Also|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59711
Alexander Cherepanov changed:
What|Removed |Added
CC||ch3root at openwall dot com
---
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59711
--- Comment #4 from Richard Biener rguenth at gcc dot gnu.org ---
int f(int n)
{
struct S {
int a[n];
};
struct S g(void)
{
struct S s;
s.a[0] = 0;
return s;
}
return g ().a[0];
}
I believe this isn't fixable with
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59711
--- Comment #5 from Eric Botcazou ebotcazou at gcc dot gnu.org ---
I believe this isn't fixable with the GIMPLE IL as-is - without lowering
to the fact that g () returns by storing to a return slot. Not sure why
3.4 ICEd (2.95.2 also ICEs btw
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59711
--- Comment #6 from Florian Weimer fweimer at redhat dot com ---
Created attachment 31772
-- http://gcc.gnu.org/bugzilla/attachment.cgi?id=31772action=edit
pr59711.adb
Here's the same thing in Ada (where it actually works—it's actually fairly
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59711
--- Comment #7 from Richard Biener rguenth at gcc dot gnu.org ---
*R.4 = pr59711.f (); [return slot optimization]
ah, so we don't require a WITH_SIZE_EXPR on a RSO call. Obviously. So it
should be fixable either by the gimplifier or by
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59711
Marek Polacek mpolacek at gcc dot gnu.org changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59711
Eric Botcazou ebotcazou at gcc dot gnu.org changed:
What|Removed |Added
Attachment #31765|0 |1
is