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

            Bug ID: 120373
           Summary: operator overloads inside extern "C"
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Keywords: accepts-invalid
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: pinskia at gcc dot gnu.org
  Target Milestone: ---

Take:
```
struct f{};

extern "C"
{
        void operator << (struct f, struct f)
        {}
        bool operator == (struct f, struct f)
        {}
        bool operator ++ (struct f, int)
        {}
}
```

This really does not make sense.

operator<< is named _Zls, operator==: _Zeq and operator++: _Zpp

None of those make sense at all.

Reply via email to