Very dumb patch to just skip --param allow-store-data-races=0 introduced in newer GCC versions. Without this patch sparse recognizes parameter of the --param option as a file name which obviously couldn't be found. The patch for easy implementation's sake slightly changed behaviour of --version. Instead of exact keyword it will recognize anything starting with --version as a correct option. Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> --- lib.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/lib.c b/lib.c index 4e5a846..d5b94c3 100644 --- a/lib.c +++ b/lib.c @@ -678,6 +678,18 @@ static char **handle_version(char *arg, char **next) exit(0); } +static char **handle_param(char *arg, char **next) +{ + const char *value = NULL; + + /* For now just skip any '--param=*' or '--param *' */ + value = split_value_from_arg(arg, value); + if (!value) + ++next; + + return ++next; +} + struct switches { const char *name; char **(*fn)(char *, char **); @@ -686,13 +698,14 @@ struct switches { static char **handle_long_options(char *arg, char **next) { static struct switches cmd[] = { + { "param", handle_param }, { "version", handle_version }, { NULL, NULL } }; struct switches *s = cmd; while (s->name) { - if (!strcmp(s->name, arg)) + if (!strncmp(arg, s->name, strlen(s->name))) return s->fn(arg, next); s++; } -- 2.0.0 -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html