summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Makefile29
-rw-r--r--src/if_ruby.c20
-rw-r--r--src/version.c2
3 files changed, 32 insertions, 19 deletions
diff --git a/src/Makefile b/src/Makefile
index c790662a1..e6d26b164 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -105,8 +105,8 @@
# 4. "make test" {{{1
# This is optional. This will run Vim scripts on a number of test
# files, and compare the produced output with the expected output.
-# If all is well, you will get the "ALL DONE" message in the end. See
-# below (search for "/^test").
+# If all is well, you will get the "ALL DONE" message in the end. If a
+# test fails you get "TEST FAILURE". See below (search for "/^test").
#
# 5. "make install" {{{1
# If the new Vim seems to be working OK you can install it and the
@@ -533,6 +533,11 @@ CClink = $(CC)
#CFLAGS = -g -DDEBUG -Wall -Wshadow -Wmissing-prototypes
#CFLAGS = -g -O2 '-DSTARTUPTIME="vimstartup"' -fno-strength-reduce -Wall -Wmissing-prototypes
+# Use this with GCC to check for mistakes, unused arguments, etc.
+#CFLAGS = -g -Wall -Wextra -Wmissing-prototypes -Wunreachable-code
+#PYTHON_CFLAGS_EXTRA = -Wno-missing-field-initializers
+#MZSCHEME_CFLAGS_EXTRA = -Wno-unreachable-code
+
# EFENCE - Electric-Fence malloc debugging: catches memory accesses beyond
# allocated memory (and makes every malloc()/free() very slow).
# Electric Fence is free (search ftp sites).
@@ -551,12 +556,13 @@ CClink = $(CC)
# }}}
# LINT - for running lint
-# For standard lint
-#LINT = lint
-#LINT_OPTIONS = -beprxzF
-# For splint (see cleanlint.vim for filtering the output)
-LINT = splint
-LINT_OPTIONS = +unixlib -weak -macrovarprefixexclude -showfunc -linelen 9999
+# For standard Unix lint
+LINT = lint
+LINT_OPTIONS = -beprxzF
+# For splint
+# It doesn't work well, crashes on include files and non-ascii characters.
+#LINT = splint
+#LINT_OPTIONS = +unixlib -weak -macrovarprefixexclude -showfunc -linelen 9999
# PROFILING - Uncomment the next two lines to do profiling with gcc and gprof.
# Might not work with GUI or Perl.
@@ -1743,7 +1749,8 @@ types.vim: $(TAGS_SRC) $(TAGS_INCL)
# messages. Don't worry about that.
# If there is a real error, there will be a difference between "test.out" and
# a "test99.ok" file.
-# If everything is alright, the final message will be "ALL DONE".
+# If everything is alright, the final message will be "ALL DONE". If not you
+# get "TEST FAILURE".
#
test check:
$(MAKE) -f Makefile $(VIMTARGET)
@@ -2427,7 +2434,7 @@ objects/if_xcmdsrv.o: if_xcmdsrv.c
$(CCC) -o $@ if_xcmdsrv.c
objects/if_mzsch.o: if_mzsch.c
- $(CCC) -o $@ if_mzsch.c
+ $(CCC) -o $@ $(MZSCHEME_CFLAGS_EXTRA) if_mzsch.c
objects/if_perl.o: auto/if_perl.c
$(CCC) -o $@ auto/if_perl.c
@@ -2436,7 +2443,7 @@ objects/if_perlsfio.o: if_perlsfio.c
$(CCC) -o $@ if_perlsfio.c
objects/if_python.o: if_python.c
- $(CCC) -o $@ if_python.c
+ $(CCC) -o $@ $(PYTHON_CFLAGS_EXTRA) if_python.c
objects/if_ruby.o: if_ruby.c
$(CCC) -o $@ if_ruby.c
diff --git a/src/if_ruby.c b/src/if_ruby.c
index 74de2f066..0fed2c018 100644
--- a/src/if_ruby.c
+++ b/src/if_ruby.c
@@ -492,7 +492,7 @@ static void error_print(int state)
}
}
-static VALUE vim_message(VALUE self, VALUE str)
+static VALUE vim_message(VALUE self UNUSED, VALUE str)
{
char *buff, *p;
@@ -505,20 +505,20 @@ static VALUE vim_message(VALUE self, VALUE str)
return Qnil;
}
-static VALUE vim_set_option(VALUE self, VALUE str)
+static VALUE vim_set_option(VALUE self UNUSED, VALUE str)
{
do_set((char_u *)STR2CSTR(str), 0);
update_screen(NOT_VALID);
return Qnil;
}
-static VALUE vim_command(VALUE self, VALUE str)
+static VALUE vim_command(VALUE self UNUSED, VALUE str)
{
do_cmdline_cmd((char_u *)STR2CSTR(str));
return Qnil;
}
-static VALUE vim_evaluate(VALUE self, VALUE str)
+static VALUE vim_evaluate(VALUE self UNUSED, VALUE str)
{
#ifdef FEAT_EVAL
char_u *value = eval_to_string((char_u *)STR2CSTR(str), NULL, TRUE);
@@ -580,7 +580,7 @@ static VALUE buffer_s_count()
return INT2NUM(n);
}
-static VALUE buffer_s_aref(VALUE self, VALUE num)
+static VALUE buffer_s_aref(VALUE self UNUSED, VALUE num)
{
buf_T *b;
int n = NUM2INT(num);
@@ -629,7 +629,9 @@ static VALUE get_buffer_line(buf_T *buf, linenr_T n)
return line ? rb_str_new2(line) : Qnil;
}
rb_raise(rb_eIndexError, "index %d out of buffer", n);
+#ifndef __GNUC__
return Qnil; /* For stop warning */
+#endif
}
static VALUE buffer_aref(VALUE self, VALUE num)
@@ -668,7 +670,9 @@ static VALUE set_buffer_line(buf_T *buf, linenr_T n, VALUE str)
else
{
rb_raise(rb_eIndexError, "index %d out of buffer", n);
+#ifndef __GNUC__
return Qnil; /* For stop warning */
+#endif
}
return str;
}
@@ -789,7 +793,7 @@ static VALUE line_s_current()
return get_buffer_line(curbuf, curwin->w_cursor.lnum);
}
-static VALUE set_current_line(VALUE self, VALUE str)
+static VALUE set_current_line(VALUE self UNUSED, VALUE str)
{
return set_buffer_line(curbuf, curwin->w_cursor.lnum, str);
}
@@ -815,7 +819,7 @@ static VALUE window_s_count()
#endif
}
-static VALUE window_s_aref(VALUE self, VALUE num)
+static VALUE window_s_aref(VALUE self UNUSED, VALUE num)
{
win_T *w;
int n = NUM2INT(num);
@@ -897,7 +901,7 @@ static VALUE window_set_cursor(VALUE self, VALUE pos)
return Qnil;
}
-static VALUE f_p(int argc, VALUE *argv, VALUE self)
+static VALUE f_p(int argc, VALUE *argv, VALUE self UNUSED)
{
int i;
VALUE str = rb_str_new("", 0);
diff --git a/src/version.c b/src/version.c
index 2d1ce01fc..643e8e32f 100644
--- a/src/version.c
+++ b/src/version.c
@@ -677,6 +677,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 185,
+/**/
184,
/**/
183,