http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60197
Bug ID: 60197 Summary: ICE with _Cilk_spawn in expression Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: reichelt at gcc dot gnu.org The following valid(?) code snippet (compiled with "-fcilkplus") triggers an ICE on trunk: =========================================== int foo() { return (_Cilk_spawn foo()) + 1; } =========================================== gimplification failed: <statement_list 0x7f6dc2014420 type <void_type 0x7f6dc1eed000 void VOID align 8 symtab 0 alias set -1 canonical type 0x7f6dc1eed000 pointer_to_this <pointer_type 0x7f6dc1eed0a8>> head (nil) tail (nil) stmts > bug.c: In function 'foo': bug.c:9:30: internal compiler error: gimplification failed return (_Cilk_spawn foo()) + 1; ^ 0x84252a gimplify_expr(tree_node**, gimple_statement_base**, gimple_statement_base**, bool (*)(tree_node*), int) ../../gcc/gcc/gimplify.c:8356 0x8411dc gimplify_expr(tree_node**, gimple_statement_base**, gimple_statement_base**, bool (*)(tree_node*), int) ../../gcc/gcc/gimplify.c:8135 0x83e6fb gimplify_modify_expr ../../gcc/gcc/gimplify.c:4507 0x84058b gimplify_expr(tree_node**, gimple_statement_base**, gimple_statement_base**, bool (*)(tree_node*), int) ../../gcc/gcc/gimplify.c:7448 0x844726 gimplify_stmt(tree_node**, gimple_statement_base**) ../../gcc/gcc/gimplify.c:5341 0x842c1e gimplify_and_add ../../gcc/gcc/gimplify.c:384 0x842c1e gimplify_return_expr ../../gcc/gcc/gimplify.c:1241 0x842c1e gimplify_expr(tree_node**, gimple_statement_base**, gimple_statement_base**, bool (*)(tree_node*), int) ../../gcc/gcc/gimplify.c:7695 0x844726 gimplify_stmt(tree_node**, gimple_statement_base**) ../../gcc/gcc/gimplify.c:5341 0x840cd6 gimplify_and_add ../../gcc/gcc/gimplify.c:384 0x840cd6 gimplify_expr(tree_node**, gimple_statement_base**, gimple_statement_base**, bool (*)(tree_node*), int) ../../gcc/gcc/gimplify.c:7785 0x844726 gimplify_stmt(tree_node**, gimple_statement_base**) ../../gcc/gcc/gimplify.c:5341 0x84084b gimplify_statement_list ../../gcc/gcc/gimplify.c:1412 0x84084b gimplify_expr(tree_node**, gimple_statement_base**, gimple_statement_base**, bool (*)(tree_node*), int) ../../gcc/gcc/gimplify.c:7863 0x844726 gimplify_stmt(tree_node**, gimple_statement_base**) ../../gcc/gcc/gimplify.c:5341 0x84542f gimplify_bind_expr ../../gcc/gcc/gimplify.c:1079 0x84029e gimplify_expr(tree_node**, gimple_statement_base**, gimple_statement_base**, bool (*)(tree_node*), int) ../../gcc/gcc/gimplify.c:7645 0x844726 gimplify_stmt(tree_node**, gimple_statement_base**) ../../gcc/gcc/gimplify.c:5341 0x845f69 gimplify_body(tree_node*, bool) ../../gcc/gcc/gimplify.c:8555 0x846546 gimplify_function_tree(tree_node*) ../../gcc/gcc/gimplify.c:8708 Please submit a full bug report, [etc.]