https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100248
--- Comment #1 from 康桓瑋 <hewillk at gmail dot com> --- Reduced to no header: struct S {}; bool operator==(S&&, S&&) = default; <source>:2:29: internal compiler error: Segmentation fault 2 | bool operator==(S&&, S&&) = default; | ^~~~~~~ 0x1cff019 internal_error(char const*, ...) ???:0 0x1366c00 strip_array_types(tree_node*) ???:0 0x9c9778 cp_type_quals(tree_node const*) ???:0 0x9ba4c3 cp_build_qualified_type_real(tree_node*, int, int) ???:0 0x82f194 defaultable_fn_check(tree_node*) ???:0 0x7b2cc8 cp_finish_decl(tree_node*, tree_node*, bool, tree_node*, int) ???:0 0x8e1f6d c_parse_file() ???:0 0xa621b2 c_common_parse_file() ???:0 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report.