I do not think labels as values are widely used with C++ operators; I stumbled
over it only because of a typo (double &&). But in case of error, it will
produce a garbled message (tested from 3.3 to 4.1). For example,
a.cpp:3:no match for 'operator&&' in 'A() && &#'label_decl' not supported by
dump_expr#<expression error>'
Testcase:
struct A {};
bool operator&&(A const &, A const &);
int main() { A() && && b; }
--
Summary: &#`label_decl' not supported by dump_expr#<expression
error>
Product: gcc
Version: 4.1.0
Status: UNCONFIRMED
Severity: minor
Priority: P2
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: guillaume dot melquiond at ens-lyon dot fr
CC: gcc-bugs at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24052