https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88134
--- Comment #5 from Arseny Solokha <asolokha at gmx dot com> --- And if my guess that the problem is somehow related to the handling of FPU-less cores in the rs6000 and powerpcspe backends is correct, than I see whan might be another manifestation of that issue: % powerpc-e300c3-linux-gnu-gcc-9.0.0-alpha20181118 -mcpu=e300c2 --param ggc-min-expand=3 --param ggc-min-heapsize=1024 -c gcc/testsuite/gcc.dg/pr65345-3.c gcc/testsuite/gcc.dg/pr65345-3.c:18:12: error: initializer element is not constant 18 | float c1 = i; /* { dg-error "initializer element is not constant" } */ | ^ gcc/testsuite/gcc.dg/pr65345-3.c:19:12: error: initializer element is not constant 19 | float c2 = (i ? 1 : 2); /* { dg-error "initializer element is not constant" } */ | ^ gcc/testsuite/gcc.dg/pr65345-3.c:20:7: error: variably modified 'c3' at file scope 20 | float c3[(int) i]; /* { dg-error "variably modified" } */ | ^~ gcc/testsuite/gcc.dg/pr65345-3.c:21:12: error: initializer element is not constant 21 | float c4 = 0 || i; /* { dg-error "initializer element is not constant" } */ | ^ gcc/testsuite/gcc.dg/pr65345-3.c:22:1: internal compiler error: Segmentation fault 22 | float c5 = (i += 10); /* { dg-error "initializer element is not constant" } */ | ^~~~~ 0xd16576 crash_signal /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/toplev.c:325 0xfc99af contains_struct_check(tree_node*, tree_node_structure_enum, char const*, int, char const*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/tree.h:3267 0xfc99af build_call_expr_loc_array(unsigned int, tree_node*, int, tree_node**) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/tree.c:11278 0xfc9c11 build_call_expr(tree_node*, int, ...) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/tree.c:11328 0x10488e3 rs6000_atomic_assign_expand_fenv /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/config/rs6000/rs6000.c:38296 0x7a6a18 build_atomic_assign /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-typeck.c:4210 0x7b55e2 build_modify_expr(unsigned int, tree_node*, tree_node*, tree_code, unsigned int, tree_node*, tree_node*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-typeck.c:6186 0x7cf936 c_parser_expr_no_commas /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:6632 0x7cfa5e c_parser_expression /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:9486 0x7c38fb c_parser_postfix_expression /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:7991 0x7cd1fa c_parser_unary_expression /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:7289 0x7cdf07 c_parser_cast_expression /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:7133 0x7ce154 c_parser_binary_expression /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:6936 0x7cf07b c_parser_conditional_expression /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:6670 0x7cf73b c_parser_expr_no_commas /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:6587 0x7d47bb c_parser_initializer /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:4547 0x7e1186 c_parser_declaration_or_fndef /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:2129 0x7e8c77 c_parser_external_declaration /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:1651 0x7e9341 c_parser_translation_unit /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:1532 0x7e9341 c_parse_file() /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-9.0.0_alpha20181118/work/gcc-9-20181118/gcc/c/c-parser.c:19609