https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70865
Bug ID: 70865 Summary: [cilkplus] errors when using cilk features with precompiled headers Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ryan.burn at gmail dot com Target Milestone: --- Created attachment 38372 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38372&action=edit example that reproduces the problem Using cilk features in a precompiled header file causes various compilation bugs if the options "-std=c++1z" and "-fconcepts" are also used. I attached an example that reproduces the bug. The code should compile fine (and does so, if not using a pch or not using cilk features), but depending on what options are used, gcc produces these different errors. Using both "-std=c++1z -fconcepts -fcilkplus" (reproduced with Makefile), causes the error: cc1plus: error: using result of function returning ‘void’ (null):0: confused by earlier errors, bailing out make: *** [a] Error 1 Using just "-std=c++1z" (Makefile.v2), causes the error: cc1plus: internal compiler error: Segmentation fault 0xb45bff crash_signal ../../gcc/gcc/toplev.c:333 0x95565c gimplify_call_expr ../../gcc/gcc/gimplify.c:2486 0x94d339 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) ../../gcc/gcc/gimplify.c:10258 0x95a381 force_gimple_operand_1(tree_node*, gimple**, bool (*)(tree_node*), tree_node*) ../../gcc/gcc/gimplify-me.c:78 0x95a47f force_gimple_operand_gsi_1(gimple_stmt_iterator*, tree_node*, bool (*)(tree_node*), tree_node*, bool, gsi_iterator_update) ../../gcc/gcc/gimplify-me.c:115 0xa5a757 expand_task_call ../../gcc/gcc/omp-low.c:6865 0xa5a757 expand_omp_taskreg ../../gcc/gcc/omp-low.c:7423 0xa6103f expand_omp ../../gcc/gcc/omp-low.c:13799 0xa637ad execute_expand_omp ../../gcc/gcc/omp-low.c:14028 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. make: *** [a] Error 1