summaryrefslogtreecommitdiffstats
path: root/src/if_ole.cpp
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-03-19 20:51:35 +0100
committerBram Moolenaar <Bram@vim.org>2016-03-19 20:51:35 +0100
commitcc6cf9b9f9045a7d8b5923ea0c556e9a4c2567d3 (patch)
treef67acee007ddfeb283341a9ee5a08eed96ceb7a4 /src/if_ole.cpp
parent4d581a826c54cecdde3001fdf0a5becf67e54cfd (diff)
patch 7.4.1610v7.4.1610
Problem: Compiler warnings for non-virtual destructor. Solution: Mark the classe final. (Ken Takata)
Diffstat (limited to 'src/if_ole.cpp')
-rw-r--r--src/if_ole.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/if_ole.cpp b/src/if_ole.cpp
index a93abe0a85..582a4cb85e 100644
--- a/src/if_ole.cpp
+++ b/src/if_ole.cpp
@@ -34,6 +34,12 @@ extern HWND s_hwnd;
extern HWND vim_parent_hwnd;
}
+#if (defined(_MSC_VER) && (_MSC_VER >= 1700)) || (__cplusplus >= 201103L)
+# define FINAL final
+#else
+# define FINAL
+#endif
+
#if (defined(_MSC_VER) && _MSC_VER < 1300) || !defined(MAXULONG_PTR)
/* Work around old versions of basetsd.h which wrongly declares
* UINT_PTR as unsigned long */
@@ -93,7 +99,7 @@ static CVim *app = 0;
* ----------
*/
-class CVim : public IVim
+class CVim FINAL : public IVim
{
public:
virtual ~CVim();
@@ -428,7 +434,7 @@ CVim::Eval(BSTR expr, BSTR *result)
* ----------
*/
-class CVimCF : public IClassFactory
+class CVimCF FINAL : public IClassFactory
{
public:
static CVimCF *Create();