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"