https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90780
Bug ID: 90780
Summary: GCC looses ref-qualifiers
Product: gcc
Version: 10.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: language.lawyer at gmail dot com
Target Milestone: ---
The following code (inspired by http://wg21.link/p0172)
using abominable = void() const volatile &&;
struct s {
abominable f;
};
abominable s::* ptr = &s::f;
is not accepted by GCC
$ g++ prog.cc -std=c++11
prog.cc:5:27: error: cannot convert 'void (s::*)() const volatile &&' to 'void
(s::*)() const volatile' in initialization
5 | abominable s::* ptr = &s::f;
|
(https://wandbox.org/permlink/gAjhGoSan6b38dlZ)