summaryrefslogtreecommitdiff
path: root/tests/exec/inheritance1.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/exec/inheritance1.cpp')
-rw-r--r--tests/exec/inheritance1.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/exec/inheritance1.cpp b/tests/exec/inheritance1.cpp
new file mode 100644
index 0000000..8a2c1e7
--- /dev/null
+++ b/tests/exec/inheritance1.cpp
@@ -0,0 +1,30 @@
+#include <iostream>
+
+class A {
+public:
+ virtual void f();
+};
+
+class B : public A {
+public:
+ void f();
+};
+
+void A::f() {
+ std::cout << "this is A::f" << "\n";
+}
+
+void B::f() {
+ std::cout << "this is B::f" << "\n";
+}
+
+int main() {
+ A a;
+ a.f();
+ B b;
+ b.f();
+ A *x = &b;
+ x->f();
+ x = &a;
+ x->f();
+}