| // Class funk has a constructor and an ordinary method | |
| // Test for CHFts23426 | |
| class funk | |
| { | |
| public: | |
| funk(); | |
| void getFunky(int a, int b); | |
| int data_; | |
| }; | |
| funk::funk() | |
| : data_(33) | |
| { | |
| } | |
| void funk::getFunky(int a, int b) | |
| { | |
| int res; | |
| res = a + b - data_; | |
| data_ = res; | |
| } | |
| // Class A has const and volatile methods | |
| class A { | |
| public: | |
| int x; | |
| int y; | |
| int foo (int arg); | |
| int bar (int arg) const; | |
| int baz (int arg, char c) volatile; | |
| int qux (int arg, float f) const volatile; | |
| }; | |
| int A::foo (int arg) | |
| { | |
| x += arg; | |
| return arg *2; | |
| } | |
| int A::bar (int arg) const | |
| { | |
| return arg + 2 * x; | |
| } | |
| int A::baz (int arg, char c) volatile | |
| { | |
| return arg - 2 * x + c; | |
| } | |
| int A::qux (int arg, float f) const volatile | |
| { | |
| if (f > 0) | |
| return 2 * arg - x; | |
| else | |
| return 2 * arg + x; | |
| } | |
| int main() | |
| { | |
| A a; | |
| int k; | |
| k = 10; | |
| a.x = k * 2; | |
| k = a.foo(13); | |
| k += a.bar(15); | |
| // Test for CHFts23426 follows | |
| funk f; | |
| f.getFunky(1, 2); | |
| return 0; | |
| } | |