summaryrefslogtreecommitdiff
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
parent4d581a826c54cecdde3001fdf0a5becf67e54cfd (diff)
downloadvim-git-cc6cf9b9f9045a7d8b5923ea0c556e9a4c2567d3.tar.gz
patch 7.4.1610v7.4.1610
Problem: Compiler warnings for non-virtual destructor. Solution: Mark the classe final. (Ken Takata)
-rw-r--r--src/Make_cyg_ming.mak5
-rw-r--r--src/gui_dwrite.cpp8
-rw-r--r--src/if_ole.cpp10
-rw-r--r--src/version.c2
4 files changed, 20 insertions, 5 deletions
diff --git a/src/Make_cyg_ming.mak b/src/Make_cyg_ming.mak
index d6e0d0a58..9bb26aa6d 100644
--- a/src/Make_cyg_ming.mak
+++ b/src/Make_cyg_ming.mak
@@ -415,6 +415,7 @@ WINDRES_CC = $(CC)
###########################################################################
CFLAGS = -Iproto $(DEFINES) -pipe -march=$(ARCH) -Wall
+CXXFLAGS = -std=c++11
WINDRES_FLAGS = --preprocessor="$(WINDRES_CC) -E -xc" -DRC_INVOKED
EXTRA_LIBS =
@@ -864,14 +865,14 @@ $(OUTDIR)/gui_w32.o: gui_w32.c $(INCL)
$(CC) -c $(CFLAGS) gui_w32.c -o $(OUTDIR)/gui_w32.o
$(OUTDIR)/gui_dwrite.o: gui_dwrite.cpp $(INCL) gui_dwrite.h
- $(CC) -c $(CFLAGS) gui_dwrite.cpp -o $(OUTDIR)/gui_dwrite.o
+ $(CC) -c $(CFLAGS) $(CXXFLAGS) gui_dwrite.cpp -o $(OUTDIR)/gui_dwrite.o
$(OUTDIR)/if_cscope.o: if_cscope.c $(INCL) if_cscope.h
$(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o
# Remove -D__IID_DEFINED__ for newer versions of the w32api
$(OUTDIR)/if_ole.o: if_ole.cpp $(INCL)
- $(CC) $(CFLAGS) -c -o $(OUTDIR)/if_ole.o if_ole.cpp
+ $(CC) $(CFLAGS) $(CXXFLAGS) -c -o $(OUTDIR)/if_ole.o if_ole.cpp
$(OUTDIR)/if_ruby.o: if_ruby.c $(INCL)
ifeq (16, $(RUBY))
diff --git a/src/gui_dwrite.cpp b/src/gui_dwrite.cpp
index 07685eb09..9873c6728 100644
--- a/src/gui_dwrite.cpp
+++ b/src/gui_dwrite.cpp
@@ -33,6 +33,12 @@
# define __out SAL__out
#endif
+#if (defined(_MSC_VER) && (_MSC_VER >= 1700)) || (__cplusplus >= 201103L)
+# define FINAL final
+#else
+# define FINAL
+#endif
+
#ifdef DYNAMIC_DIRECTX
extern "C" HINSTANCE vimLoadLib(char *name);
@@ -222,7 +228,7 @@ public:
}
};
-class GdiTextRenderer : public IDWriteTextRenderer
+class GdiTextRenderer FINAL : public IDWriteTextRenderer
{
public:
GdiTextRenderer(
diff --git a/src/if_ole.cpp b/src/if_ole.cpp
index a93abe0a8..582a4cb85 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();
diff --git a/src/version.c b/src/version.c
index 03282f8b7..8178342f8 100644
--- a/src/version.c
+++ b/src/version.c
@@ -749,6 +749,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1610,
+/**/
1609,
/**/
1608,