public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/109227] New: coroutines: ICE in tree check: expected record_type or union_type or qual_union_type, have array_type in build_special_member_call, at cp/call.cc:11067
@ 2023-03-21  8:03 marxin at gcc dot gnu.org
  2023-03-21  8:03 ` [Bug c++/109227] " marxin at gcc dot gnu.org
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: marxin at gcc dot gnu.org @ 2023-03-21  8:03 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 109227
           Summary: coroutines: ICE in tree check: expected record_type or
                    union_type or qual_union_type, have array_type in
                    build_special_member_call, at cp/call.cc:11067
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
                CC: avi at scylladb dot com, iains at gcc dot gnu.org, jason at gcc dot gnu.org
  Target Milestone: ---

It's probably similar to PR98056 and it's reduced from ScyllaDB:

$ g++ bad.cc -c -std=gnu++20
bad.cc: In member function ‘future<boost::basic_result<void,
utils::exception_container<>, utils::exception_container_throw_policy> >
cql3::statements::indexed_table_select_statement::do_execute_base_query(cql3::query_processor&,
std::vector<cql3::statements::primary_key>&&, service::query_state&, const
{anonymous}::query_options&, gc_clock::time_point, lw_shared_ptr<const
service::pager::paging_state>) const’:
bad.cc:273:1: warning: no return statement in function returning non-void
[-Wreturn-type]
  273 | }
      | ^
bad.cc: In instantiation of
‘cql3::statements::indexed_table_select_statement::do_execute_base_query(cql3::query_processor&,
std::vector<cql3::statements::primary_key>&&, service::query_state&, const
{anonymous}::query_options&, gc_clock::time_point, lw_shared_ptr<const
service::pager::paging_state>) const::<lambda(auto:1)> [with auto:1 =
cql3::statements::primary_key]’:
bad.cc:39:11:   required from ‘void std::__invoke(_Callable, _Args ...) [with
_Callable =
cql3::statements::indexed_table_select_statement::do_execute_base_query(cql3::query_processor&,
std::vector<cql3::statements::primary_key>&&, service::query_state&, const
{anonymous}::query_options&, gc_clock::time_point, lw_shared_ptr<const
service::pager::paging_state>) const::<lambda(auto:1)>; _Args =
{cql3::statements::primary_key}]’
bad.cc:67:11:   required from ‘void std::invoke(_Callable, _Args ...) [with
_Callable =
cql3::statements::indexed_table_select_statement::do_execute_base_query(cql3::query_processor&,
std::vector<cql3::statements::primary_key>&&, service::query_state&, const
{anonymous}::query_options&, gc_clock::time_point, lw_shared_ptr<const
service::pager::paging_state>) const::<lambda(auto:1)>; _Args =
{cql3::statements::primary_key}]’
bad.cc:158:16:   required from ‘auto coroutine::lambda<Func>::operator()(Args
...) [with Args = {cql3::statements::primary_key}; Func =
cql3::statements::indexed_table_select_statement::do_execute_base_query(cql3::query_processor&,
std::vector<cql3::statements::primary_key>&&, service::query_state&, const
{anonymous}::query_options&, gc_clock::time_point, lw_shared_ptr<const
service::pager::paging_state>) const::<lambda(auto:1)>]’
bad.cc:10:39:   required from ‘struct std::__result_of_impl<false, false,
coroutine::lambda<cql3::statements::indexed_table_select_statement::do_execute_base_query(cql3::query_processor&,
std::vector<cql3::statements::primary_key>&&, service::query_state&, const
{anonymous}::query_options&, gc_clock::time_point, lw_shared_ptr<const
service::pager::paging_state>) const::<lambda(auto:1)> >,
cql3::statements::primary_key>’
bad.cc:16:8:   required from ‘struct
std::__invoke_result<coroutine::lambda<cql3::statements::indexed_table_select_statement::do_execute_base_query(cql3::query_processor&,
std::vector<cql3::statements::primary_key>&&, service::query_state&, const
{anonymous}::query_options&, gc_clock::time_point, lw_shared_ptr<const
service::pager::paging_state>) const::<lambda(auto:1)> >,
cql3::statements::primary_key>’
bad.cc:83:56:   required from ‘void futurize_invoke(Func, Args ...) [with Func
=
coroutine::lambda<cql3::statements::indexed_table_select_statement::do_execute_base_query(cql3::query_processor&,
std::vector<cql3::statements::primary_key>&&, service::query_state&, const
{anonymous}::query_options&, gc_clock::time_point, lw_shared_ptr<const
service::pager::paging_state>) const::<lambda(auto:1)> >; Args =
{cql3::statements::primary_key}]’
bad.cc:240:18:   required from ‘void utils::result_map_reduce(Iterator,
Iterator, Mapper, Reducer) [with Iterator =
__normal_iterator<cql3::statements::primary_key*>; Mapper =
coroutine::lambda<cql3::statements::indexed_table_select_statement::do_execute_base_query(cql3::query_processor&,
std::vector<cql3::statements::primary_key>&&, service::query_state&, const
{anonymous}::query_options&, gc_clock::time_point, lw_shared_ptr<const
service::pager::paging_state>) const::<lambda(auto:1)> >; Reducer = void
(*)()]’
bad.cc:259:27:   required from here
bad.cc:271:11: internal compiler error: tree check: expected record_type or
union_type or qual_union_type, have array_type in build_special_member_call, at
cp/call.cc:11067
  271 |           }),
      |           ^
0x87916a tree_check_failed(tree_node const*, char const*, int, char const*,
...)
        /home/marxin/Programming/gcc/gcc/tree.cc:8881
0x96c34b tree_check3(tree_node*, char const*, int, char const*, tree_code,
tree_code, tree_code)
        /home/marxin/Programming/gcc/gcc/tree.h:3580
0x95f539 build_special_member_call(tree_node*, tree_node*, vec<tree_node*,
va_gc, vl_embed>**, tree_node*, int, int)
        /home/marxin/Programming/gcc/gcc/cp/call.cc:11067
0x9c16a7 maybe_promote_temps
        /home/marxin/Programming/gcc/gcc/cp/coroutines.cc:3146
0x9c16a7 await_statement_walker
        /home/marxin/Programming/gcc/gcc/cp/coroutines.cc:3757
0x149b05d walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        /home/marxin/Programming/gcc/gcc/tree.cc:11327
0x9c1198 await_statement_walker
        /home/marxin/Programming/gcc/gcc/cp/coroutines.cc:3428
0x149b05d walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        /home/marxin/Programming/gcc/gcc/tree.cc:11327
0x9c129c await_statement_walker
        /home/marxin/Programming/gcc/gcc/cp/coroutines.cc:3417
0x149b05d walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        /home/marxin/Programming/gcc/gcc/tree.cc:11327
0x9c1198 await_statement_walker
        /home/marxin/Programming/gcc/gcc/cp/coroutines.cc:3428
0x149b05d walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        /home/marxin/Programming/gcc/gcc/tree.cc:11327
0x9c129c await_statement_walker
        /home/marxin/Programming/gcc/gcc/cp/coroutines.cc:3417
0x149b05d walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        /home/marxin/Programming/gcc/gcc/tree.cc:11327
0x9c1198 await_statement_walker
        /home/marxin/Programming/gcc/gcc/cp/coroutines.cc:3428
0x149b05d walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        /home/marxin/Programming/gcc/gcc/tree.cc:11327
0x149b25f walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        /home/marxin/Programming/gcc/gcc/tree.cc:11558
0x9c1198 await_statement_walker
        /home/marxin/Programming/gcc/gcc/cp/coroutines.cc:3428
0x149b05d walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
        /home/marxin/Programming/gcc/gcc/tree.cc:11327
0x9c129c await_statement_walker
        /home/marxin/Programming/gcc/gcc/cp/coroutines.cc:3417
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2024-05-16 15:44 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-21  8:03 [Bug c++/109227] New: coroutines: ICE in tree check: expected record_type or union_type or qual_union_type, have array_type in build_special_member_call, at cp/call.cc:11067 marxin at gcc dot gnu.org
2023-03-21  8:03 ` [Bug c++/109227] " marxin at gcc dot gnu.org
2023-03-21  8:18 ` avi at scylladb dot com
2023-03-21  8:41 ` marxin at gcc dot gnu.org
2023-05-18 18:27 ` jakub at gcc dot gnu.org
2023-10-02 16:52 ` pinskia at gcc dot gnu.org
2023-10-02 16:53 ` pinskia at gcc dot gnu.org
2023-10-14 10:46 ` lr.soft.now at gmail dot com
2024-01-25 10:44 ` pinskia at gcc dot gnu.org
2024-01-25 19:19 ` jason at gcc dot gnu.org
2024-01-25 20:22 ` cvs-commit at gcc dot gnu.org
2024-05-16 15:44 ` ppalka at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).