aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
-rw-r--r--lib.c12
-rw-r--r--validation/preprocessor/cli-D-arg.c1
2 files changed, 8 insertions, 5 deletions
diff --git a/lib.c b/lib.c
index 037206f7..236d58fc 100644
--- a/lib.c
+++ b/lib.c
@@ -323,12 +323,16 @@ static char **handle_switch_D(char *arg, char **next)
const char *name = arg + 1;
const char *value = "1";
- if (!*name || isspace((unsigned char)*name))
- die("argument to `-D' is missing");
+ if (!*name) {
+ arg = *++next;
+ if (!arg)
+ die("argument to `-D' is missing");
+ name = arg;
+ }
- for (;;) {
+ for (;;arg++) {
char c;
- c = *++arg;
+ c = *arg;
if (!c)
break;
if (isspace((unsigned char)c) || c == '=') {
diff --git a/validation/preprocessor/cli-D-arg.c b/validation/preprocessor/cli-D-arg.c
index b098e98b..03c5bac3 100644
--- a/validation/preprocessor/cli-D-arg.c
+++ b/validation/preprocessor/cli-D-arg.c
@@ -3,7 +3,6 @@ B
/*
* check-name: cli: -D MACRO
* check-command: sparse -E -D A -D B=abc $file
- * check-known-to-fail
*
* check-output-start