// RUN: %check_clang_tidy %s google-default-arguments %t
struct A {
virtual void f(int I, int J = 3);
// CHECK-MESSAGES: :[[@LINE-1]]:16: warning: default arguments on virtual or override methods are prohibited [google-default-arguments]
};
struct B : public A {
void f(int I, int J = 5);
// CHECK-MESSAGES: :[[@LINE-1]]:8: warning: default arguments on virtual or override methods are prohibited
};
struct C : public B {
void f(int I, int J = 5) override;
// CHECK-MESSAGES: :[[@LINE-1]]:8: warning: default arguments on virtual or override methods are prohibited
};
// Negatives.
struct D : public B {
void f(int I, int J) override;
};
struct X {
void f(int I, int J = 3);
};
struct Y : public X {
void f(int I, int J = 5);
};