aboutsummaryrefslogtreecommitdiffstats
path: root/cmake/cmake-cxx11/Modules/CheckCXX11Features/cxx11-test-class_override_final_fail_compile.cpp
blob: bc00b278ed2fdc8e34680abd9f1473af120a1d7c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
class base {
public:
    virtual int foo(int a)
     { return 4 + a; }
    virtual int bar(int a) final
     { return a - 2; }
};

class sub final : public base {
public:
    virtual int foo(int a) override
     { return 8 + 2 * a; };
    virtual int bar(int a)
     { return a; }
};

class impossible : public sub { };

int main(void)
{
    base b;
    sub s;

    return 1;
}