https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96301
--- Comment #1 from Iain Buclaw <ibuclaw at gdcproject dot org> --- The static array path has a different ICE, but the underlying cause is the same. test.d:20:18: internal compiler error: in convert_memory_address_addr_space_1, at explow.c:302 20 | auto result = range; | ^ 0x5f8abc convert_memory_address_addr_space_1(scalar_int_mode, rtx_def*, unsigned char, bool, bool) ../../gcc/explow.c:302 0x5f8b2f convert_memory_address_addr_space_1(scalar_int_mode, rtx_def*, unsigned char, bool, bool) ../../gcc/explow.c:405 0x5f8b2f convert_memory_address_addr_space(scalar_int_mode, rtx_def*, unsigned char) ../../gcc/explow.c:404 0x5f8b2f memory_address_addr_space(machine_mode, rtx_def*, unsigned char) ../../gcc/explow.c:418 0x8f8171 expand_expr_real_1(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) ../../gcc/expr.c:10462 0x902578 expand_expr ../../gcc/expr.h:282 0x902578 expand_assignment(tree_node*, tree_node*, bool) ../../gcc/expr.c:5158 0x902578 expand_assignment(tree_node*, tree_node*, bool) ../../gcc/expr.c:5056 0x7ff7a0 expand_gimple_stmt_1 ../../gcc/cfgexpand.c:3749 0x7ff7a0 expand_gimple_stmt ../../gcc/cfgexpand.c:3847 0x804aff expand_gimple_basic_block ../../gcc/cfgexpand.c:5888 0x806f16 execute ../../gcc/cfgexpand.c:6543