To: vim_dev@googlegroups.com Subject: Patch 7.4.1610 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 7.4.1610 Problem: Compiler warnings for non-virtual destructor. Solution: Mark the classe final. (Ken Takata) Files: src/Make_cyg_ming.mak, src/gui_dwrite.cpp, src/if_ole.cpp *** ../vim-7.4.1609/src/Make_cyg_ming.mak 2016-03-11 22:52:00.742438030 +0100 --- src/Make_cyg_ming.mak 2016-03-19 20:48:11.953633508 +0100 *************** *** 415,420 **** --- 415,421 ---- ########################################################################### CFLAGS = -Iproto $(DEFINES) -pipe -march=$(ARCH) -Wall + CXXFLAGS = -std=c++11 WINDRES_FLAGS = --preprocessor="$(WINDRES_CC) -E -xc" -DRC_INVOKED EXTRA_LIBS = *************** *** 864,877 **** $(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 $(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 $(OUTDIR)/if_ruby.o: if_ruby.c $(INCL) ifeq (16, $(RUBY)) --- 865,878 ---- $(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) $(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) $(CXXFLAGS) -c -o $(OUTDIR)/if_ole.o if_ole.cpp $(OUTDIR)/if_ruby.o: if_ruby.c $(INCL) ifeq (16, $(RUBY)) *** ../vim-7.4.1609/src/gui_dwrite.cpp 2016-02-27 15:27:19.096719234 +0100 --- src/gui_dwrite.cpp 2016-03-19 20:48:11.957633466 +0100 *************** *** 33,38 **** --- 33,44 ---- # 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,228 **** } }; ! class GdiTextRenderer : public IDWriteTextRenderer { public: GdiTextRenderer( --- 228,234 ---- } }; ! class GdiTextRenderer FINAL : public IDWriteTextRenderer { public: GdiTextRenderer( *** ../vim-7.4.1609/src/if_ole.cpp 2016-02-27 21:59:25.122244838 +0100 --- src/if_ole.cpp 2016-03-19 20:48:11.957633466 +0100 *************** *** 34,39 **** --- 34,45 ---- 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,99 **** * ---------- */ ! class CVim : public IVim { public: virtual ~CVim(); --- 99,105 ---- * ---------- */ ! class CVim FINAL : public IVim { public: virtual ~CVim(); *************** *** 428,434 **** * ---------- */ ! class CVimCF : public IClassFactory { public: static CVimCF *Create(); --- 434,440 ---- * ---------- */ ! class CVimCF FINAL : public IClassFactory { public: static CVimCF *Create(); *** ../vim-7.4.1609/src/version.c 2016-03-19 20:29:08.177621382 +0100 --- src/version.c 2016-03-19 20:48:39.997339550 +0100 *************** *** 750,751 **** --- 750,753 ---- { /* Add new patch number below this line */ + /**/ + 1610, /**/ -- From "know your smileys": :-O>-o Smiley American tourist (note big mouth and camera) /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ an exciting new programming language -- http://www.Zimbu.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///