https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90998
Dan Stahlke <dan at stahlke dot org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |dan at stahlke dot org --- Comment #3 from Dan Stahlke <dan at stahlke dot org> --- Me too, with gcc 9.2.0. g++ -std=c++17 -Wconversion gcc-Wconversion-crash.cpp ---------------------- struct B; struct A { operator B(); }; struct B { B(A const &rs); B(B const &rs); }; B f(A x) { return B(x); } ---------------------- gcc-Wconversion-crash.cpp: In function ‘B f(A)’: gcc-Wconversion-crash.cpp:15:15: internal compiler error: Segmentation fault 15 | return B(x); | ^ 0xb8d10f crash_signal ../.././gcc/toplev.c:326 0x5ff192 compare_ics ../.././gcc/cp/call.c:10124 0x603090 joust ../.././gcc/cp/call.c:10737 0x603a2c tourney ../.././gcc/cp/call.c:11096 0x60b5f6 build_new_method_call_1 ../.././gcc/cp/call.c:9805 0x60b5f6 build_new_method_call(tree_node*, tree_node*, vec<tree_node*, va_gc, vl_embed>**, tree_node*, int, tree_node**, int) ../.././gcc/cp/call.c:9973 0x600773 build_special_member_call(tree_node*, tree_node*, vec<tree_node*, va_gc, vl_embed>**, tree_node*, int, int) ../.././gcc/cp/call.c:9397 0x60ca93 perform_direct_initialization_if_possible(tree_node*, tree_node*, bool, int) ../.././gcc/cp/call.c:11314 0x746ab9 build_static_cast_1 ../.././gcc/cp/typeck.c:7211 0x749807 cp_build_c_cast(tree_node*, tree_node*, int) ../.././gcc/cp/typeck.c:8007 0x749807 cp_build_c_cast(tree_node*, tree_node*, int) ../.././gcc/cp/typeck.c:7924 0x751c2a build_functional_cast(tree_node*, tree_node*, int) ../.././gcc/cp/typeck2.c:2284 0x6b3b16 cp_parser_functional_cast ../.././gcc/cp/parser.c:28385 0x6c4864 cp_parser_postfix_expression ../.././gcc/cp/parser.c:7101 0x6d1409 cp_parser_unary_expression ../.././gcc/cp/parser.c:8472 0x6af31f cp_parser_cast_expression ../.././gcc/cp/parser.c:9357 0x6afb0a cp_parser_binary_expression ../.././gcc/cp/parser.c:9460 0x6b08a7 cp_parser_assignment_expression ../.././gcc/cp/parser.c:9758 0x6b0bca cp_parser_expression ../.././gcc/cp/parser.c:9925 0x6bef8a cp_parser_jump_statement ../.././gcc/cp/parser.c:12910 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. ---------------------- g++ -v Reading specs from /xxx/gcc/9.2.0/.bin/../lib64/gcc/x86_64-suse-linux/9.2.0/specs COLLECT_GCC=/xxx/gcc/9.2.0/.bin/g++ COLLECT_LTO_WRAPPER=/xxx/gcc/9.2.0/.bin/../libexec/gcc/x86_64-suse-linux/9.2.0/lto-wrapper Target: x86_64-suse-linux Configured with: ./configure --prefix=/xxx/gcc/9.2.0 --libdir=/xxx/gcc/9.2.0/lib64 --libexecdir=/xxx/gcc/9.2.0/libexec --bindir=/xxx/gcc/9.2.0/bin --with-isl=/xxx/gcc/9.2.0 --with-libelf=/xxx/gcc/9.2.0 --with-mpfr=/xxx/gcc/9.2.0 --with-gmp=/xxx/gcc/9.2.0 --with-mpc=/xxx/gcc/9.2.0 --enable-gold=yes --enable-lto --enable-languages=c,c++,objc,fortran --build=x86_64-suse-linux --host=x86_64-suse-linux --target=x86_64-suse-linux --enable-libotm --disable-libstdcxx-pch Thread model: posix gcc version 9.2.0 (GCC)