aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/parse.c
diff options
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2018-11-30 22:51:24 +0100
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2018-12-01 02:14:10 +0100
commiteb35b2e8aa79552fe0ccd7a4e7a7753b230cbdd4 (patch)
treee8377e3916984fc17e9452dfab6c9537c03e603d /parse.c
parent6f7aa5e84dacec8e27a8d70090bba26a1a1276de (diff)
downloadsparse-dev-eb35b2e8aa79552fe0ccd7a4e7a7753b230cbdd4.tar.gz
Use -Wimplicit-int when warning about missing K&R argument types
In legacy environment, a lot of warnings can be issued about arguments without an explicit type. Fix this by contitionalizing such warnings with the flag -Wimplicit-int, reducing the level of noise in such environment. Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Diffstat (limited to 'parse.c')
-rw-r--r--parse.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/parse.c b/parse.c
index 7f15acf5..ec145601 100644
--- a/parse.c
+++ b/parse.c
@@ -2770,7 +2770,10 @@ static void apply_k_r_types(struct symbol_list *argtypes, struct symbol *fn)
if (type->ident == arg->ident)
goto match;
} END_FOR_EACH_PTR(type);
- sparse_error(arg->pos, "missing type declaration for parameter '%s'", show_ident(arg->ident));
+ if (Wimplicit_int) {
+ sparse_error(arg->pos, "missing type declaration for parameter '%s'",
+ show_ident(arg->ident));
+ }
type = alloc_symbol(arg->pos, SYM_NODE);
type->ident = arg->ident;
type->ctype.base_type = &int_ctype;