g++ -std=c++20 -O1 -c test.cpp Actual Results: test.cpp: In function ���void coro_test::f(coro_test::f()::_ZN9coro_test1fEv.Frame*)���: test.cpp:22:9: internal compiler error: in is_this_parameter, at cp/semantics.c:10672 22 | } | ^ 0xeaf047 internal_error(char const*, ...) ???:0 0xea55a6 fancy_abort(char const*, int, char const*) ???:0 0x10c1745 maybe_constant_value(tree_node*, tree_node*, bool) ???:0 0x10c23c4 cp_fold_maybe_rvalue(tree_node*, bool) ???:0 0xfe436f walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
http://bugzilla.opensuse.org/show_bug.cgi?id=1193659 Bug ID: 1193659 Summary: g++ internal compiler error: in is_this_parameter, at cp/semantics.c:10672 Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: x86-64 OS: openSUSE Tumbleweed Status: NEW Severity: Normal Priority: P5 - None Component: Development Assignee: screening-team-bugs@suse.de Reporter: geurt.vos@outerplane.nl QA Contact: qa-bugs@suse.de Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36 Build Identifier: Compiling the following code results in an internal compiler error since g++ (SUSE Linux) 11.2.1 20211124 at any optimization level except -O0. --- #include <coroutine> #include <string_view> struct awaitable { struct promise_type { auto initial_suspend() noexcept { return std::suspend_never(); } auto final_suspend() noexcept { return std::suspend_never(); } void return_void(); void unhandled_exception() noexcept; awaitable get_return_object() noexcept; }; }; struct coro_test { std::string_view s_; awaitable f() { if (s_.empty()) { co_return; } } }; --- Reproducible: Always Steps to Reproduce: tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*)) ???:0 0xfe451e 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*> >*)) ???:0 0xfe47a7 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*> >*)) ???:0 0xfe451e 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*> >*)) ???:0 0xfe485f 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*> >*)) ???:0 0xfe4831 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*> >*)) ???:0 0x10d202e cp_fold_function(tree_node*) ???:0 0x15a485b c_parse_file() ???:0 0x15950e6 c_common_parse_file() ???:0 -- You are receiving this mail because: You are on the CC list for the bug.