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

--- Comment #14 from Paolo Carlini <paolo.carlini at oracle dot com> ---
Another testcase that we want to accept:

class Matrix;

void rot90 (const Matrix& a, int k = 1) { }

class Matrix {
  friend void rot90 (const Matrix&, int);
};

void rot90 (const Matrix& a, int k);

We handle the third occurrence of rot90 as-if the second occurrence in:

class Matrix {
  friend void rot90 (const Matrix&, int k = 1) { }
};

void rot90 (const Matrix& a, int k);

and of course we would reject it with my first try.

Reply via email to