From: Jason Merrill Date: Sun, 18 Jul 2004 13:41:02 +0000 (-0400) Subject: re PR tree-optimization/16115 (double-destruction problem with argument passing via... X-Git-Tag: releases/gcc-4.0.0~6497 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=5e631ba3ec4d0eb05c2f4a6f8547c9c3549ab0ce;p=thirdparty%2Fgcc.git re PR tree-optimization/16115 (double-destruction problem with argument passing via temporary (breaks auto_ptr)) PR c++/16115 * stor-layout.c (relayout_decl): New fn. * tree.h: Declare it. (DECL_BY_REFERENCE): New macro. * cp/call.c (type_passed_as): Make the invisible reference type __restrict. * cp/cp-gimplify.c (gimplify_cleanup_stmt): Rename to cp_genericize_r. Handle invisible reference lowering. (is_invisiref_parm): New fn. (cp_genericize): Adjust the types of invisible reference parms. Don't repeat the walk for clones. * cp/decl.c (store_parm_decls): Don't generate any code for clones. From-SVN: r84895 --- diff --git a/gcc/testsuite/g++.dg/init/call1.C b/gcc/testsuite/g++.dg/init/call1.C index 1d3c230d30b6..d44b6dddc953 100644 --- a/gcc/testsuite/g++.dg/init/call1.C +++ b/gcc/testsuite/g++.dg/init/call1.C @@ -1,6 +1,5 @@ // Bug c++/16115 // { dg-options "-O2" } -// { dg-do run { xfail *-*-* } } extern "C" void abort();