mirror of
https://github.com/neovim/neovim.git
synced 2025-09-27 21:48:35 +00:00
vim-patch:9.0.1960: Make CI checks more strict
Problem: Make CI checks more strict
Solution: Add -Wstrict-prototypes -Wmissing-prototypes to CI,
fix uncovered problems
Add -Wstrict-prototypes -Wmissing-prototypes warnings check to CI
Add two new warnings to CI, silence some Perl related build-warnings:
- `strict-prototypes` helps prevent declaring a function with an empty
argument list, e.g. `int func()`. In C++, that's equivalent to `int
func(void)`, but in C, that means a function that can take any number
of arguments which is rarely what we want.
- `missing-prototypes` makes sure we use `static` for file-only internal
functions. Non-static functions should have been declared on a
prototype file.
- Add `no-compound-token-split-by-macro` to the perl cflags, since it
throws out a bunch of perl-related warnings that make the CI log
unnecessary verbose and hard to read. This seems to happen only with
clang 12 and above.
When applying those changes, it already uncovered a few warnings, so fix
up the code as well (fix prototypes, make the code static, remove
shadowed var declaration)
GTK header needs to have #pragma warning suppressiong because GTK2
headers will warn on `-Wstrict-prototypes`, and it's included by gui.h
and so we can't just turn off the warning in a couple files.
closes: vim/vim#13223
closes: vim/vim#13226
f7f746b167
Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
This commit is contained in:
@@ -676,8 +676,8 @@ static const char *did_set_option_listflag(char *val, char *flags, char *errbuf,
|
||||
}
|
||||
|
||||
/// Expand an option that accepts a list of string values.
|
||||
int expand_set_opt_string(optexpand_T *args, char **values, size_t numValues, int *numMatches,
|
||||
char ***matches)
|
||||
static int expand_set_opt_string(optexpand_T *args, char **values, size_t numValues,
|
||||
int *numMatches, char ***matches)
|
||||
{
|
||||
regmatch_T *regmatch = args->oe_regmatch;
|
||||
bool include_orig_val = args->oe_include_orig_val;
|
||||
@@ -728,8 +728,8 @@ static char *expand_set_opt_callback(expand_T *xp, int idx)
|
||||
}
|
||||
|
||||
/// Expand an option with a callback that iterates through a list of possible names.
|
||||
int expand_set_opt_generic(optexpand_T *args, CompleteListItemGetter func, int *numMatches,
|
||||
char ***matches)
|
||||
static int expand_set_opt_generic(optexpand_T *args, CompleteListItemGetter func, int *numMatches,
|
||||
char ***matches)
|
||||
{
|
||||
set_opt_callback_orig_option = args->oe_include_orig_val ? args->oe_opt_value : NULL;
|
||||
set_opt_callback_func = func;
|
||||
@@ -744,7 +744,7 @@ int expand_set_opt_generic(optexpand_T *args, CompleteListItemGetter func, int *
|
||||
}
|
||||
|
||||
/// Expand an option which is a list of flags.
|
||||
int expand_set_opt_listflag(optexpand_T *args, char *flags, int *numMatches, char ***matches)
|
||||
static int expand_set_opt_listflag(optexpand_T *args, char *flags, int *numMatches, char ***matches)
|
||||
{
|
||||
char *option_val = args->oe_opt_value;
|
||||
char *cmdline_val = args->oe_set_arg;
|
||||
|
Reference in New Issue
Block a user