https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86637
--- Comment #6 from Arseny Solokha <asolokha at gmx dot com> --- Created attachment 45157 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45157&action=edit Testcase #5 % x86_64-pc-linux-gnu-gcc-9.0.0-alpha20181202 -mavx2 -O2 -fsave-optimization-record -ftree-parallelize-loops=2 -ftree-slp-vectorize -g -w -c pa97jedl.c during GIMPLE pass: parloops pa97jedl.c: In function 'n': pa97jedl.c:49:1: internal compiler error: tree check: expected block, have <invalid tree code> in inlining_chain_to_json, at optinfo-emit-json.cc:285 49 | n(__int128 u128_8, uint8_t uc_9) { | ^ 0x6dd3f7 tree_check_failed(tree_node const*, char const*, int, char const*, ...) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/tree.c:9757 0x65f661 tree_check(tree_node*, char const*, int, char const*, tree_code) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/tree.h:3154 0x65f661 optrecord_json_writer::inlining_chain_to_json(unsigned int) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/optinfo-emit-json.cc:285 0xc14b1a optrecord_json_writer::optinfo_to_json(optinfo const*) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/optinfo-emit-json.cc:419 0xc14b48 optrecord_json_writer::add_record(optinfo const*) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/optinfo-emit-json.cc:141 0x94bc42 dump_context::emit_optinfo(optinfo const*) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/dumpfile.c:1207 0x94bc42 dump_context::end_any_optinfo() /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/dumpfile.c:1193 0x94e33f dump_context::begin_scope(char const*, dump_user_location_t const&, dump_impl_location_t const&) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/dumpfile.c:1132 0xf47943 auto_dump_scope::auto_dump_scope(char const*, dump_user_location_t const&, dump_impl_location_t const&) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/dumpfile.h:609 0xf47943 vect_analyze_loop_form_1(loop*, gcond**, tree_node**, tree_node**, tree_node**, gcond**) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/tree-vect-loop.c:1156 0xf48134 vect_analyze_loop_form(loop*, vec_info_shared*) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/tree-vect-loop.c:1312 0xdb983f gather_scalar_reductions /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/tree-parloops.c:2599 0xdb983f try_create_reduction_list /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/tree-parloops.c:2784 0xdb983f parallelize_loops /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/tree-parloops.c:3391 0xdbb4ad execute /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/tree-parloops.c:3505 0xdbb4ad execute /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181202/work/gcc-9-20181202/gcc/tree-parloops.c:3484 parloops again. This one is weird. Why does it stop ICEing when I simply change indentation or remove obviously superfluous semicolons or parens?