]> git.rm.cloudns.org Git - xonotic/gmqcc.git/commitdiff
-Wconst-var
authorWolfgang (Blub) Bumiller <blub@speed.at>
Sun, 25 Nov 2012 14:56:13 +0000 (15:56 +0100)
committerWolfgang (Blub) Bumiller <blub@speed.at>
Sun, 25 Nov 2012 14:56:13 +0000 (15:56 +0100)
opts.def
parser.c

index 0741115a5101a0289b78158f699028b1ab25030b..696ac3774a697e261985d538a7a01b5463ec083a 100644 (file)
--- a/opts.def
+++ b/opts.def
@@ -59,6 +59,7 @@
     GMQCC_DEFINE_FLAG(PREPROCESSOR)
     GMQCC_DEFINE_FLAG(MULTIFILE_IF)
     GMQCC_DEFINE_FLAG(DOUBLE_DECLARATION)
+    GMQCC_DEFINE_FLAG(CONST_VAR)
 #endif
 
 /* some cleanup so we don't have to */
index 5e2b160b6b8c5de50267bb2ac53cc75de6458506..4e628d923594e19400ee39521b5e43e62d9d3e92 100644 (file)
--- a/parser.c
+++ b/parser.c
@@ -3871,6 +3871,13 @@ static bool parser_global_statement(parser_t *parser)
                 parseerror(parser, "expected variable declaration after 'const'");
                 return false;
             }
+            if (parser->tok == TOKEN_IDENT && !strcmp(parser_tokval(parser), "var")) {
+                (void)!parsewarning(parser, WARN_CONST_VAR, "ignoring `var` after const qualifier");
+                if (!parser_next(parser)) {
+                    parseerror(parser, "expected variable declaration after 'const var'");
+                    return false;
+                }
+            }
             return parse_variable(parser, NULL, true, true, NULL);
         }
         else if (!strcmp(parser_tokval(parser), "typedef")) {