Since handle_onoff_switch() can be used for other flags than the
warnings, the processing of -Wsparse-all should move elsewhere.

So move it into handle_switch_W().

Signed-off-by: Luc Van Oostenryck <luc.vanoostenr...@gmail.com>
---
 lib.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/lib.c b/lib.c
index 709dd5176112..5128a5b64e9e 100644
--- a/lib.c
+++ b/lib.c
@@ -535,14 +535,6 @@ static char **handle_onoff_switch(char *arg, char **next, 
const struct flag warn
        char *p = arg + 1;
        unsigned i;
 
-       if (!strcmp(p, "sparse-all")) {
-               for (i = 0; warnings[i].name; i++) {
-                       if (*warnings[i].flag != WARNING_FORCE_OFF && 
warnings[i].flag != &Wsparse_error)
-                               *warnings[i].flag = WARNING_ON;
-               }
-               return NULL;
-       }
-
        // Prefixes "no" and "no-" mean to turn warning off.
        if (p[0] == 'n' && p[1] == 'o') {
                p += 2;
@@ -798,6 +790,14 @@ static char **handle_switch_W(char *arg, char **next)
        if (ret)
                return ret;
 
+       if (!strcmp(arg, "Wsparse-all")) {
+               int i;
+               for (i = 0; warnings[i].name; i++) {
+                       if (*warnings[i].flag != WARNING_FORCE_OFF && 
warnings[i].flag != &Wsparse_error)
+                               *warnings[i].flag = WARNING_ON;
+               }
+       }
+
        // Unknown.
        return next;
 }
-- 
2.27.0

Reply via email to