diff options
Diffstat (limited to 'bindgen-integration/cpp')
-rw-r--r-- | bindgen-integration/cpp/Test.cc | 12 | ||||
-rw-r--r-- | bindgen-integration/cpp/Test.h | 13 |
2 files changed, 25 insertions, 0 deletions
diff --git a/bindgen-integration/cpp/Test.cc b/bindgen-integration/cpp/Test.cc index 57c2186b..80ae0239 100644 --- a/bindgen-integration/cpp/Test.cc +++ b/bindgen-integration/cpp/Test.cc @@ -3,6 +3,18 @@ const int Test::COUNTDOWN[] = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }; const int* Test::COUNTDOWN_PTR = Test::COUNTDOWN; +unsigned VirtualDestructor::sDestructorCount = 0; +VirtualDestructor::~VirtualDestructor() { + sDestructorCount++; +} + +unsigned InheritsFromVirtualDestructor::sDestructorCount = 0; +InheritsFromVirtualDestructor::InheritsFromVirtualDestructor() = default; + +InheritsFromVirtualDestructor::~InheritsFromVirtualDestructor() { + sDestructorCount++; +} + const int* Test::countdown() { return COUNTDOWN; } diff --git a/bindgen-integration/cpp/Test.h b/bindgen-integration/cpp/Test.h index 4ab8373e..323a9216 100644 --- a/bindgen-integration/cpp/Test.h +++ b/bindgen-integration/cpp/Test.h @@ -19,6 +19,19 @@ class ITest { virtual void foo() = 0; }; +class VirtualDestructor { +public: + static unsigned sDestructorCount; + virtual ~VirtualDestructor() = 0; +}; + +class InheritsFromVirtualDestructor final : public VirtualDestructor { +public: + static unsigned sDestructorCount; + InheritsFromVirtualDestructor(); + ~InheritsFromVirtualDestructor() final; +}; + namespace testing { typedef Test TypeAlias; |