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

            Bug ID: 61726
           Summary: Ambiguous overload resolution with inherited op()s
           Product: gcc
           Version: 4.10.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: kaballo86 at hotmail dot com

The following snippet results in an ambiguous overload error:

    struct foo1 { void operator()(int&) const {}; };
    struct foo2 { void operator()(int const&) const {}; };
    struct bar : foo1, foo2 {};

    int main() {
        int i = 0;
        bar{}(i); // error

        int const ci = 0;
        bar{}(ci); // error
    }

Reply via email to