[Bug c++/97962] New: [10/11] ICE in build_over_call, at cp/call.c:8976

doko at debian dot org gcc-bugzilla@gcc.gnu.org
Mon Nov 23 20:56:45 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97962

            Bug ID: 97962
           Summary: [10/11] ICE in build_over_call, at cp/call.c:8976
           Product: gcc
           Version: 10.2.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: doko at debian dot org
  Target Milestone: ---

Created attachment 49616
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49616&action=edit
preprocessed source

seen with the gcc-10 branch and the trunk, compiler configured with
--enable-checking=yes,extra,rtl

works with gcc-9, configured with --enable-checking=release.

$ g++ -c -std=c++17 pool-prj-mgr-app_win_download.ii
pool-prj-mgr-app_win_download.ii: In instantiation of ‘struct
__result_of_memfun_deref<void
(PoolProjectManagerAppWindow::*)(Trans_NS___cxx11_basic_string),
PoolProjectManagerAppWindow*, ustring, Trans_NS___cxx11_basic_string>’:
pool-prj-mgr-app_win_download.ii:13:60:   required from ‘struct
conditional<__result_of_memfun_deref<void
(PoolProjectManagerAppWindow::*)(Trans_NS___cxx11_basic_string),
PoolProjectManagerAppWindow*, ustring, Trans_NS___cxx11_basic_string> >’
pool-prj-mgr-app_win_download.ii:27:75:   required from ‘struct
__result_of_memfun<void
(PoolProjectManagerAppWindow::*)(Trans_NS___cxx11_basic_string),
PoolProjectManagerAppWindow*, ustring, Trans_NS___cxx11_basic_string>’
pool-prj-mgr-app_win_download.ii:32:8:   required from ‘struct
__result_of_impl<false, true, void
(PoolProjectManagerAppWindow::*)(Trans_NS___cxx11_basic_string),
PoolProjectManagerAppWindow*, ustring, Trans_NS___cxx11_basic_string>’
pool-prj-mgr-app_win_download.ii:44:8:   recursively required by substitution
of ‘template<class _Result, class _Ret> struct __is_invocable_impl<_Result,
_Ret, __void_t<typename _Result::type> > [with _Result = __invoke_result<void
(PoolProjectManagerAppWindow::*)(Trans_NS___cxx11_basic_string),
PoolProjectManagerAppWindow*, ustring, Trans_NS___cxx11_basic_string>; _Ret =
void]’
pool-prj-mgr-app_win_download.ii:44:8:   required from ‘struct
__is_invocable<void
(PoolProjectManagerAppWindow::*)(Trans_NS___cxx11_basic_string),
PoolProjectManagerAppWindow*, ustring, Trans_NS___cxx11_basic_string>’
pool-prj-mgr-app_win_download.ii:62:41:   required from
‘thread::thread(_Callable, _Args ...) [with _Callable = void
(PoolProjectManagerAppWindow::*)(Trans_NS___cxx11_basic_string); _Args =
{PoolProjectManagerAppWindow*, ustring, Trans_NS___cxx11_basic_string}]’
pool-prj-mgr-app_win_download.ii:68:57:   required from here
pool-prj-mgr-app_win_download.ii:17:55: internal compiler error: in
build_over_call, at cp/call.c:8976
   17 |   static __result_of_success<decltype((*_Tp1().*_Fp())(_Args()...))>
_S_test;
      |                                       ~~~~~~~~~~~~~~~~^~~~~~~~~~~~
0x5de01a build_over_call
        ../../src/gcc/cp/call.c:8976
0xaa30fe build_new_method_call_1
        ../../src/gcc/cp/call.c:10385
0xaa429e build_new_method_call(tree_node*, tree_node*, vec<tree_node*, va_gc,
vl_embed>**, tree_node*, int, tree_node**, int)
        ../../src/gcc/cp/call.c:10460
0xaa429e build_special_member_call(tree_node*, tree_node*, vec<tree_node*,
va_gc, vl_embed>**, tree_node*, int, int)
        ../../src/gcc/cp/call.c:9861
0xa94458 build_temp
        ../../src/gcc/cp/call.c:7128
0xa94458 convert_like_real_1
        ../../src/gcc/cp/call.c:7705
0xa95b3d perform_implicit_conversion_flags(tree_node*, tree_node*, int, int)
        ../../src/gcc/cp/call.c:11921
0xca79f5 convert_arguments
        ../../src/gcc/cp/typeck.c:4197
0xca79f5 cp_build_function_call_vec(tree_node*, vec<tree_node*, va_gc,
vl_embed>**, int, tree_node*)
        ../../src/gcc/cp/typeck.c:4031
0xb4c4d0 build_offset_ref_call_from_tree(tree_node*, vec<tree_node*, va_gc,
vl_embed>**, int)
        ../../src/gcc/cp/decl2.c:5276
0xc28b46 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        ../../src/gcc/cp/pt.c:20073
0xc2b204 tsubst(tree_node*, tree_node*, int, tree_node*)
        ../../src/gcc/cp/pt.c:15946
0xc2db88 tsubst_template_args(tree_node*, tree_node*, int, tree_node*)
        ../../src/gcc/cp/pt.c:13193
0xc3331b tsubst_aggr_type
        ../../src/gcc/cp/pt.c:13396
0xc22b01 tsubst_decl
        ../../src/gcc/cp/pt.c:14604
0xc33a29 instantiate_template_1
        ../../src/gcc/cp/pt.c:20871
0xc340ba instantiate_template(tree_node*, tree_node*, int)
        ../../src/gcc/cp/pt.c:20928
0xc340ba finish_template_variable(tree_node*, int)
        ../../src/gcc/cp/pt.c:10167
0xc3420a lookup_and_finish_template_variable(tree_node*, tree_node*, int)
        ../../src/gcc/cp/pt.c:10180
0xc28af8 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        ../../src/gcc/cp/pt.c:19306
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.


More information about the Gcc-bugs mailing list