[PATCH v2 2/2] lib.c: skip --param parameters

From: Andy Shevchenko
Date: Tue Jun 17 2014 - 05:12:36 EST


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-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/