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

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Clang is no better, it also just says "that's wrong" without a fix-it:

callop.cc:2:8: error: 'operator()' cannot be the name of a variable or data
member
    2 |   void operator();
      |        ^
callop.cc:3:17: error: expected ')'
    3 |   void operator(int);
      |                 ^
callop.cc:3:16: note: to match this '('
    3 |   void operator(int);
      |                ^
callop.cc:3:8: error: 'operator()' cannot be the name of a variable or data
member
    3 |   void operator(int);
      |        ^
callop.cc:7:8: error: 'operator()' cannot be the name of a variable or data
member
    7 |   void operator() { }
      |        ^
callop.cc:7:22: error: expected ';' at end of declaration list
    7 |   void operator() { }
      |                      ^
      |                      ;
callop.cc:12:8: error: 'operator()' cannot be the name of a variable or data
member
   12 |   void operator() const;
      |        ^
callop.cc:12:18: error: expected ';' at end of declaration list
   12 |   void operator() const;
      |                  ^
      |                  ;
callop.cc:13:17: error: expected ')'
   13 |   void operator(int) const;
      |                 ^
callop.cc:13:16: note: to match this '('
   13 |   void operator(int) const;
      |                ^
callop.cc:13:8: error: 'operator()' cannot be the name of a variable or data
member
   13 |   void operator(int) const;
      |        ^
callop.cc:13:21: error: expected ';' at end of declaration list
   13 |   void operator(int) const;
      |                     ^
      |                     ;
10 errors generated.

Reply via email to