changeset 6862:db53fd1a7d5c v7.4.751

patch 7.4.751 Problem: It is not obvious how to enable the address sanitizer. Solution: Add commented-out flags in the Makefile. (Dominique Pelle) Also add missing test targets.
author Bram Moolenaar <bram@vim.org>
date Sun, 21 Jun 2015 13:44:13 +0200
parents bad08ecef761
children 2cb682025709
files src/Makefile src/version.c
diffstat 2 files changed, 21 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/Makefile
+++ b/src/Makefile
@@ -616,6 +616,14 @@ LINT_OPTIONS = -beprxzF
 #PROFILE_LIBS = -pg
 #PROFILE_LIBS = -pg -lc
 
+# Uncomment one of the next two lines to compile Vim with the
+# address sanitizer or with the undefined sanitizer.  Works with gcc and
+# clang.  May make Vim twice as slow.  Errors reported on stderr.
+# More at: https://code.google.com/p/address-sanitizer/
+#SANITIZER_CFLAGS = -g -O0 -fsanitize=address -fno-omit-frame-pointer
+#SANITIZER_CFLAGS = -g -O0 -fsanitize=undefined -fno-omit-frame-pointer
+SANITIZER_LIBS = $(SANITIZER_CFLAGS)
+
 # MEMORY LEAK DETECTION
 # Requires installing the ccmalloc library.
 # Configuration is in the .ccmalloc or ~/.ccmalloc file.
@@ -1342,7 +1350,7 @@ SHELL = /bin/sh
 PRE_DEFS = -Iproto $(DEFS) $(GUI_DEFS) $(GUI_IPATH) $(CPPFLAGS) $(EXTRA_IPATHS)
 POST_DEFS = $(X_CFLAGS) $(MZSCHEME_CFLAGS) $(TCL_CFLAGS) $(EXTRA_DEFS)
 
-ALL_CFLAGS = $(PRE_DEFS) $(CFLAGS) $(PROFILE_CFLAGS) $(LEAK_CFLAGS) $(POST_DEFS)
+ALL_CFLAGS = $(PRE_DEFS) $(CFLAGS) $(PROFILE_CFLAGS) $(SANITIZER_CFLAGS) $(LEAK_CFLAGS) $(POST_DEFS)
 
 # Exclude $CFLAGS for osdef.sh, for Mac 10.4 some flags don't work together
 # with "-E".
@@ -1374,6 +1382,7 @@ ALL_LIBS = \
 	   $(TCL_LIBS) \
 	   $(RUBY_LIBS) \
 	   $(PROFILE_LIBS) \
+	   $(SANITIZER_LIBS) \
 	   $(LEAK_LIBS)
 
 # abbreviations
@@ -1891,20 +1900,29 @@ unittest unittests: $(UNITTEST_TARGETS)
 
 # Run individual test, assuming that Vim was already compiled.
 test1 \
+	test_argument_0count \
 	test_argument_count \
 	test_autoformat_join \
 	test_breakindent \
 	test_changelist \
 	test_close_count \
 	test_command_count \
+	test_erasebackword \
 	test_eval \
 	test_insertcount \
+	test_listchars \
 	test_listlbr \
 	test_listlbr_utf8 \
 	test_mapping \
+	test_marks \
+	test_nested_function \
 	test_options \
+	test_perl \
 	test_qf_title \
+	test_ruby \
+	test_set \
 	test_signs \
+	test_textobjects \
 	test_utf8 \
 	test_writefile \
 	test2 test3 test4 test5 test6 test7 test8 test9 \
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    751,
+/**/
     750,
 /**/
     749,