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

--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> ---
The 'operator(int)' case is interesting because it could be a typo for several
other operators, operator+(int) or operator++(int) or operator[](int).

Personally, I know that I forget the double parens for operator()() or
operator()(T) a lot more often than I forget the operator symbol for operator+
or operator[]. The fact that I've typed one set of parens seems to make my
fingers and/or brain think I've got it right.

So my gut feel is that suggesting to add () would be right more often than not.
Maybe it could be phrased as "To make this a call operator, add empty
parentheses (), otherwise add another operator symbol such as +, [], or add a
type name"

Reply via email to