From 3b07fa4ae96dd3891443f6287b9138397910ac83 Mon Sep 17 00:00:00 2001 From: Igor Zamyatin Date: Sat, 12 Apr 2014 17:59:29 +0000 Subject: [PATCH] re PR middle-end/60467 (ICE with -fcilkplus) gcc/c-family/ PR middle-end/60467 * cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL as possible argument for Cilk_spawn. gcc/testsuite/ PR middle-end/60467 * c-c++-common/cilk-plus/CK/invalid_spawns.c: Add new invalid case to check. From-SVN: r209337 --- gcc/c-family/ChangeLog | 6 ++++++ gcc/c-family/cilk.c | 1 - gcc/testsuite/ChangeLog | 6 ++++++ gcc/testsuite/c-c++-common/cilk-plus/CK/invalid_spawns.c | 1 + 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 34354a3..f510bcc 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,9 @@ +2014-04-12 Igor Zamyatin + + PR middle-end/60467 + * cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL + as possible argument for Cilk_spawn. + 2014-04-11 Tobias Burnus PR c/60194 diff --git a/gcc/c-family/cilk.c b/gcc/c-family/cilk.c index 6a7bf4f..bf549ad 100644 --- a/gcc/c-family/cilk.c +++ b/gcc/c-family/cilk.c @@ -99,7 +99,6 @@ cilk_set_spawn_marker (location_t loc, tree fcall) it. */ return false; else if (TREE_CODE (fcall) != CALL_EXPR - && TREE_CODE (fcall) != FUNCTION_DECL /* In C++, TARGET_EXPR is generated when we have an overloaded '=' operator. */ && TREE_CODE (fcall) != TARGET_EXPR) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 0639000..0af82c0 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,11 @@ 2014-04-12 Igor Zamyatin + PR middle-end/60467 + * c-c++-common/cilk-plus/CK/invalid_spawns.c: Add new invalid + case to check. + +2014-04-12 Igor Zamyatin + PR middle-end/60469 * c-c++-common/cilk-plus/CK/pr60469.c: New test. diff --git a/gcc/testsuite/c-c++-common/cilk-plus/CK/invalid_spawns.c b/gcc/testsuite/c-c++-common/cilk-plus/CK/invalid_spawns.c index ba9e619..5b43be7 100644 --- a/gcc/testsuite/c-c++-common/cilk-plus/CK/invalid_spawns.c +++ b/gcc/testsuite/c-c++-common/cilk-plus/CK/invalid_spawns.c @@ -8,6 +8,7 @@ int main (void) { int x; + _Cilk_spawn foo; /* { dg-error "only function calls can be spawned" } */ _Cilk_spawn x; /* { dg-error "only function calls can be spawned" } */ return x; } -- 2.7.4