------- Comment #2 from zsojka at seznam dot cz 2010-05-22 17:11 ------- Fails with -m32 too (as of r159696) -fno-ipa-profile doesn't help (that flag is new in r158969 compared to r158095)
The problem is that temporary struct isn't created, and direct copy *q = *p is done. (rp is called with output parameter (rdi) == q, not a pointer to temporary data on stack) Furthermore, qp() isn't emitted in the object file (in neither r158095 or r158969), even though -fkeep-inline-functions was specified. (I am not sure this is a bug) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43784