aboutsummaryrefslogtreecommitdiffstats
path: root/tests/function-args-by-ref/warn-for-overridden-methods.cpp
blob: f4a7ee37915eed97e397ee855bf2255bb3b689df (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
struct NonTrivial {
    NonTrivial() {}
    NonTrivial(const NonTrivial &) {}
    void constFunction() const {};
    void nonConstFunction() {};
    int a;
};

class BaseWithVirtuals
{
public:
    virtual void virtualMethod1(NonTrivial) {}; // Warn
    virtual void virtualMethod2(NonTrivial) {}; // Warn
    void nonVirtualMethod(NonTrivial) {}; // Warn
};

class DerivedWithVirtuals : BaseWithVirtuals {
public:
    void virtualMethod1(NonTrivial) override {}; // Warn
    void virtualMethod2(NonTrivial) {}; // Warn
    void nonVirtualMethod(NonTrivial) {}; // Warn
};