https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83987
Volker Reichelt <reichelt at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|[6/7 Regression] ICE with |[6/7/8 Regression] ICE with |OpenMP, sanitizer and |OpenMP, sanitizer and |virtual bases |virtual bases --- Comment #6 from Volker Reichelt <reichelt at gcc dot gnu.org> --- Jakub, I'm afraid the patch is at least incomplete. If I add one "#pragma omp parallel" to the testcase, I still end up with a very similar stacktrace. ============================================ struct A { int i; }; struct B : virtual A { void foo(); }; void B::foo() { #pragma omp parallel { #pragma omp sections lastprivate (i) { i = 0; } } } ============================================ bug.cc: In function 'B::foo() [clone ._omp_fn.0]': bug.cc:20:1: internal compiler error: tree code 'call_expr' is not supported in LTO streams } ^ 0xd7d0b3 lto_write_tree ../../gcc/gcc/lto-streamer-out.c:442 0xd7d0b3 lto_output_tree_1 ../../gcc/gcc/lto-streamer-out.c:483 0xd7d0b3 DFS::DFS(output_block*, tree_node*, bool, bool, bool) ../../gcc/gcc/lto-streamer-out.c:670 0xd7dfbd lto_output_tree(output_block*, tree_node*, bool, bool) ../../gcc/gcc/lto-streamer-out.c:1642 0xd7ab71 output_function ../../gcc/gcc/lto-streamer-out.c:2109 0xd7ab71 lto_output() ../../gcc/gcc/lto-streamer-out.c:2419 0xdd9cae write_lto ../../gcc/gcc/passes.c:2610 0xddd3ae ipa_write_summaries_1 ../../gcc/gcc/passes.c:2674 0xddd3ae ipa_write_summaries() ../../gcc/gcc/passes.c:2734 0xae5f52 ipa_passes ../../gcc/gcc/cgraphunit.c:2468 0xae5f52 symbol_table::compile() ../../gcc/gcc/cgraphunit.c:2558 0xae7f79 symbol_table::compile() ../../gcc/gcc/cgraphunit.c:2537 0xae7f79 symbol_table::finalize_compilation_unit() ../../gcc/gcc/cgraphunit.c:2717 Please submit a full bug report, [etc.]