Преглед изворни кода

CM_OVERRIDE: mark destructor overridden in the feature test.

This is important for two reasons:

1. A compiler might warn about a class that has a virtual member
function but no virtual destructor.  We don't want to treat the feature
as incomplete in this case.

2. MSVC10 supports the override identifier except on destructors.  In
this case, the feature really is incomplete and we want to detect it as
such.
Daniel Pfeifer пре 9 година
родитељ
комит
9e2d6f0c4d
1 измењених фајлова са 2 додато и 0 уклоњено
  1. 2 0
      Source/Checks/cm_cxx_override.cxx

+ 2 - 0
Source/Checks/cm_cxx_override.cxx

@@ -1,10 +1,12 @@
 struct Foo
 {
+  virtual ~Foo() {}
   virtual int test() const = 0;
 };
 
 struct Bar : Foo
 {
+  ~Bar() override {}
   int test() const override { return 0; }
 };