Index: gcc/c-family/cilk.c
===================================================================
--- gcc/c-family/cilk.c	(revision 232359)
+++ gcc/c-family/cilk.c	(working copy)
@@ -774,8 +774,7 @@
    gimple sequences from the caller of gimplify_cilk_spawn.  */
 
 void
-cilk_gimplify_call_params_in_spawned_fn (tree *expr_p, gimple_seq *pre_p,
-					 gimple_seq *post_p)
+cilk_gimplify_call_params_in_spawned_fn (tree *expr_p, gimple_seq *pre_p)
 {
   int ii = 0;
   tree *fix_parm_expr = expr_p;
@@ -792,8 +791,8 @@
 
   if (TREE_CODE (*fix_parm_expr) == CALL_EXPR)
     for (ii = 0; ii < call_expr_nargs (*fix_parm_expr); ii++)
-      gimplify_expr (&CALL_EXPR_ARG (*fix_parm_expr, ii), pre_p, post_p,
-		     is_gimple_reg, fb_rvalue);
+      gimplify_arg (&CALL_EXPR_ARG (*fix_parm_expr, ii), pre_p,
+		    EXPR_LOCATION (*fix_parm_expr));
 }
 
 
Index: gcc/c-family/c-common.h
===================================================================
--- gcc/c-family/c-common.h	(revision 232359)
+++ gcc/c-family/c-common.h	(working copy)
@@ -1449,8 +1449,7 @@
 extern tree insert_cilk_frame (tree);
 extern void cilk_init_builtins (void);
 extern int gimplify_cilk_spawn (tree *);
-extern void cilk_gimplify_call_params_in_spawned_fn (tree *, gimple_seq *,
-						     gimple_seq *);
+extern void cilk_gimplify_call_params_in_spawned_fn (tree *, gimple_seq *);
 extern void cilk_install_body_with_frame_cleanup (tree, tree, void *);
 extern bool cilk_detect_spawn_and_unwrap (tree *);
 extern bool cilk_set_spawn_marker (location_t, tree);
Index: gcc/c-family/c-gimplify.c
===================================================================
--- gcc/c-family/c-gimplify.c	(revision 232359)
+++ gcc/c-family/c-gimplify.c	(working copy)
@@ -277,7 +277,7 @@
 
       if (!seen_error ())
 	{
-	  cilk_gimplify_call_params_in_spawned_fn (expr_p, pre_p, post_p);
+	  cilk_gimplify_call_params_in_spawned_fn (expr_p, pre_p);
 	  return (enum gimplify_status) gimplify_cilk_spawn (expr_p);
 	}
       return GS_ERROR;
@@ -292,7 +292,7 @@
 	     it is supposed to be.  */
 	  && !seen_error ())
 	{
-	  cilk_gimplify_call_params_in_spawned_fn (expr_p, pre_p, post_p);
+	  cilk_gimplify_call_params_in_spawned_fn (expr_p, pre_p);
 	  return (enum gimplify_status) gimplify_cilk_spawn (expr_p);
 	}
 
Index: gcc/cp/cp-gimplify.c
===================================================================
--- gcc/cp/cp-gimplify.c	(revision 232359)
+++ gcc/cp/cp-gimplify.c	(working copy)
@@ -98,7 +98,7 @@
 {
   int ii = 0;
 
-  cilk_gimplify_call_params_in_spawned_fn (expr_p, pre_p, post_p);  
+  cilk_gimplify_call_params_in_spawned_fn (expr_p, pre_p);
   if (TREE_CODE (*expr_p) == AGGR_INIT_EXPR)
     for (ii = 0; ii < aggr_init_expr_nargs (*expr_p); ii++)
       gimplify_expr (&AGGR_INIT_EXPR_ARG (*expr_p, ii), pre_p, post_p,
Index: gcc/testsuite/g++.dg/cilk-plus/CK/pr69267.cc
===================================================================
--- gcc/testsuite/g++.dg/cilk-plus/CK/pr69267.cc	(revision 0)
+++ gcc/testsuite/g++.dg/cilk-plus/CK/pr69267.cc	(working copy)
@@ -0,0 +1,10 @@
+/* { dg-do compile } */
+/* { dg-options "-fcilkplus" } */
+
+struct A {};
+
+void f (A) {}
+
+void g () {
+  _Cilk_spawn f (A ());
+}
