Copy PARM_DECL for use in split off function. 2015-06-30 Tom de Vries PR middle-end/66432 * ipa-split.c (split_function): Copy PARM_DECL for use in split off function. * testsuite/libgomp.c/pr66432.c: New test. --- gcc/ipa-split.c | 2 +- libgomp/testsuite/libgomp.c/pr66432.c | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 libgomp/testsuite/libgomp.c/pr66432.c diff --git a/gcc/ipa-split.c b/gcc/ipa-split.c index 13d9a64..e923cee 100644 --- a/gcc/ipa-split.c +++ b/gcc/ipa-split.c @@ -1458,7 +1458,7 @@ split_function (basic_block return_bb, struct split_point *split_point, DECL_ARTIFICIAL (ddecl) = 1; TREE_TYPE (ddecl) = TREE_TYPE (parm); DECL_MODE (ddecl) = DECL_MODE (parm); - vec_safe_push (*debug_args, DECL_ORIGIN (parm)); + vec_safe_push (*debug_args, copy_node (DECL_ORIGIN (parm))); vec_safe_push (*debug_args, ddecl); def_temp = gimple_build_debug_bind (ddecl, unshare_expr (arg), call); diff --git a/libgomp/testsuite/libgomp.c/pr66432.c b/libgomp/testsuite/libgomp.c/pr66432.c new file mode 100644 index 0000000..2259a69 --- /dev/null +++ b/libgomp/testsuite/libgomp.c/pr66432.c @@ -0,0 +1,4 @@ +/* { dg-do run } */ +/* { dg-additional-options "-g" } */ + +#include "appendix-a/a.29.1.c" -- 1.9.1