re PR rtl-optimization/7145 (g++ -O with structure initializer & return value optimization generates bad code)
PR optimization/7145 * tree.c (cp_copy_res_decl_for_inlining): Also copy DECL_INITIAL. [[Split portion of a mixed commit.]] From-SVN: r55262.2
This commit is contained in:
parent
98c07d7bd7
commit
7dc17098a2
|
@ -0,0 +1,23 @@
|
|||
// PR optimization/7145
|
||||
// Bug: The NRV optimization caused us to lose the initializer for 'ret'.
|
||||
// { dg-options -O }
|
||||
// { dg-do run }
|
||||
|
||||
struct GdkColor {
|
||||
long pixel;
|
||||
short red;
|
||||
short green;
|
||||
short blue;
|
||||
};
|
||||
|
||||
inline GdkColor mkcolor() {
|
||||
GdkColor ret={0,1,2,3};
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
main()
|
||||
{
|
||||
GdkColor col=mkcolor();
|
||||
return (col.pixel != 0 || col.red != 1 || col.green != 2 || col.blue != 3);
|
||||
}
|
Loading…
Reference in New Issue