------- Additional Comments From rguenth at gcc dot gnu dot org 2005-08-26 14:30 ------- For your last testcase,
struct A { int a[1000]; } A f(); void g(A); void h() { g(f()); } all of 3.4 and 4.1 produce exactly two temporaries. One to dump the result of f(), which get's copied to a new temp passed to g(). 4.0 though produces one extra unnecessary copy. The same holds true for C testcases. -- What |Removed |Added ---------------------------------------------------------------------------- GCC host triplet|i486-linux-gnu | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23372