https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90597
--- Comment #2 from John David Anglin <danglin at gcc dot gnu.org> --- /* However, if the underlying mode requires a bigger alignment than what the target hook provides, we cannot use the mode. For now, simply reject that case. */ gcc_assert (TYPE_ALIGN (type) >= GET_MODE_ALIGNMENT (TYPE_MODE (type))); Breakpoint 1, layout_type (type=0x800003fffde98930) at ../../gcc/gcc/stor-layout.c:2401 2401 gcc_assert (TYPE_ALIGN (type) (gdb) p debug_tree(type) <vector_type 800003fffde98930 type <integer_type 800003fffddd33f0 char public string-flag QI size <integer_cst 800003fffddc5a08 constant 8> unit-size <integer_cst 800003fffddc5a20 constant 1> align:8 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 800003fffddd33f0 precision:8 min <integer_cst 800003fffddc5a50 -128> max <integer_cst 800003fffddc5a80 127> pointer_to_this <pointer_type 800003fffdde13f0>> BLK size <integer_cst 800003fffdeb7378 type <integer_type 800003fffddd30a8 bitsizetype> constant 1073741824> unit-size <integer_cst 800003fffdeb7348 type <integer_type 800003fffddd3000 sizetype> constant 134217728> align:32768 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 800003fffde98930 nunits:134217728> $1 = void (gdb) bt #0 layout_type (type=0x800003fffde98930) at ../../gcc/gcc/stor-layout.c:2401 #1 0x4000000000bee0ac in make_vector_type (innertype=0x7e000000, nunits=..., mode=E_VOIDmode) at ../../gcc/gcc/tree.c:10154 #2 0x4000000000bee354 in build_vector_type (innertype=<optimized out>, nunits=...) at ../../gcc/gcc/tree.c:11074 #3 0x400000000042c750 in handle_vector_size_attribute ( node=0x800003fffde98930, name=<optimized out>, args=<optimized out>, flags=<optimized out>, no_add_attrs=<optimized out>) at ../../gcc/gcc/poly-int.h:671 #4 0x400000000033ae40 in decl_attributes (node=0x0, attributes=<optimized out>, flags=<optimized out>, last_decl=0x0) at ../../gcc/gcc/attribs.c:718 #5 0x4000000000345bcc in c_decl_attributes (node=0x800003fffde98930, attributes=0x7e000000, flags=0) at ../../gcc/gcc/c/c-decl.c:4837 #6 0x4000000000358fac in start_decl (declarator=0x800003fffddd33f0, declspecs=0x800003fffddc5a20, initialized=<optimized out>, attributes=<optimized out>) at ../../gcc/gcc/c/c-decl.c:4976 #7 0x40000000003afed8 in c_parser_declaration_or_fndef ( parser=0x800003fffdec5000, fndef_ok=false, static_assert_ok=<optimized out>, empty_ok=<optimized out>, nested=<optimized out>, start_attr_ok=<optimized out>, objc_foreach_object_declaration=<optimized out>, omp_declare_simd_clauses=..., oacc_routine_data=<optimized out>, ---Type <return> to continue, or q <return> to quit--- fallthru_attr_p=<optimized out>) at ../../gcc/gcc/c/c-parser.c:2154 #8 0x40000000003b9388 in c_parser_external_declaration ( parser=0x800003fffde98930) at ../../gcc/gcc/c/c-parser.c:1653 #9 0x40000000003ba170 in c_parser_translation_unit (parser=<optimized out>) at ../../gcc/gcc/c/c-parser.c:1534 #10 c_parse_file () at ../../gcc/gcc/c/c-parser.c:19871 #11 0x4000000000412274 in c_common_parse_file () at ../../gcc/gcc/c-family/c-opts.c:1160 #12 0x4000000000927c44 in compile_file () at ../../gcc/gcc/toplev.c:456 #13 0x0000000000000000 in ?? () Backtrace stopped: previous frame identical to this frame (corrupt stack?)