]> de.git.xonotic.org Git - xonotic/gmqcc.git/blobdiff - parser.c
Wall was already there, changed pedantic, into pedantic-errors
[xonotic/gmqcc.git] / parser.c
index 945b9c65d768f5e3e4db5737d5e2d665f038e71f..d61a416b85bf21af2606a6d483b367138a70982f 100644 (file)
--- a/parser.c
+++ b/parser.c
@@ -460,8 +460,6 @@ static bool parser_sy_pop(parser_t *parser, shunt *sy)
              (ast_istype((A), ast_value) && ((ast_value*)(A))->isconst)
 #define CanConstFold(A, B) \
              (CanConstFold1(A) && CanConstFold1(B))
-#define CanConstFold3(A, B, C) \
-             (CanConstFold1(A) && CanConstFold1(B) && CanConstFold1(C))
 #define ConstV(i) (asvalue[(i)]->constval.vvec)
 #define ConstF(i) (asvalue[(i)]->constval.vfloat)
 #define ConstS(i) (asvalue[(i)]->constval.vstring)
@@ -1413,6 +1411,8 @@ static bool parse_if(parser_t *parser, ast_block *block, ast_expression **out)
 
     lex_ctx ctx = parser_ctx(parser);
 
+    (void)block; /* not touching */
+
     /* skip the 'if', parse an optional 'not' and check for an opening paren */
     if (!parser_next(parser)) {
         parseerror(parser, "expected condition or 'not'");
@@ -1487,6 +1487,8 @@ static bool parse_while(parser_t *parser, ast_block *block, ast_expression **out
 
     lex_ctx ctx = parser_ctx(parser);
 
+    (void)block; /* not touching */
+
     /* skip the 'while' and check for opening paren */
     if (!parser_next(parser) || parser->tok != '(') {
         parseerror(parser, "expected 'while' condition in parenthesis");
@@ -1531,6 +1533,8 @@ static bool parse_dowhile(parser_t *parser, ast_block *block, ast_expression **o
 
     lex_ctx ctx = parser_ctx(parser);
 
+    (void)block; /* not touching */
+
     /* skip the 'do' and get the body */
     if (!parser_next(parser)) {
         parseerror(parser, "expected loop body");
@@ -1718,6 +1722,8 @@ static bool parse_return(parser_t *parser, ast_block *block, ast_expression **ou
     ast_return     *ret = NULL;
     ast_value      *expected = parser->function->vtype;
 
+    (void)block; /* not touching */
+
     if (!parser_next(parser)) {
         parseerror(parser, "expected return expression");
         return false;
@@ -1756,6 +1762,8 @@ static bool parse_break_continue(parser_t *parser, ast_block *block, ast_express
 {
     lex_ctx ctx = parser_ctx(parser);
 
+    (void)block; /* not touching */
+
     if (!parser_next(parser) || parser->tok != ';') {
         parseerror(parser, "expected semicolon");
         return false;
@@ -1777,6 +1785,8 @@ static bool parse_switch(parser_t *parser, ast_block *block, ast_expression **ou
 
     lex_ctx ctx = parser_ctx(parser);
 
+    (void)block; /* not touching */
+
     /* parse over the opening paren */
     if (!parser_next(parser) || parser->tok != '(') {
         parseerror(parser, "expected switch operand in parenthesis");
@@ -2116,7 +2126,7 @@ static ast_expression* parse_statement_or_block(parser_t *parser)
 }
 
 /* loop method */
-static bool create_vector_members(parser_t *parser, ast_value *var, varentry_t *ve)
+static bool create_vector_members(ast_value *var, varentry_t *ve)
 {
     size_t i;
     size_t len = strlen(var->name);
@@ -2378,7 +2388,7 @@ static bool parse_function_body(parser_t *parser, ast_value *var)
             continue;
         }
 
-        if (!create_vector_members(parser, param, ve)) {
+        if (!create_vector_members(param, ve)) {
             ast_block_delete(block);
             return false;
         }
@@ -2475,10 +2485,11 @@ static ast_expression *array_setter_node(parser_t *parser, ast_value *array, ast
     lex_ctx ctx = ast_ctx(array);
 
     if (from+1 == afterend) {
-        // set this value
+        /* set this value */
         ast_block       *block;
         ast_return      *ret;
         ast_array_index *subscript;
+        ast_store       *st;
         int assignop = type_store_instr[value->expression.vtype];
 
         if (value->expression.vtype == TYPE_FIELD && value->expression.next->expression.vtype == TYPE_VECTOR)
@@ -2488,7 +2499,7 @@ static ast_expression *array_setter_node(parser_t *parser, ast_value *array, ast
         if (!subscript)
             return NULL;
 
-        ast_store *st = ast_store_new(ctx, assignop, (ast_expression*)subscript, (ast_expression*)value);
+        st = ast_store_new(ctx, assignop, (ast_expression*)subscript, (ast_expression*)value);
         if (!st) {
             ast_delete(subscript);
             return NULL;
@@ -2533,11 +2544,12 @@ static ast_expression *array_field_setter_node(
     lex_ctx ctx = ast_ctx(array);
 
     if (from+1 == afterend) {
-        // set this value
+        /* set this value */
         ast_block       *block;
         ast_return      *ret;
         ast_entfield    *entfield;
         ast_array_index *subscript;
+        ast_store       *st;
         int assignop = type_storep_instr[value->expression.vtype];
 
         if (value->expression.vtype == TYPE_FIELD && value->expression.next->expression.vtype == TYPE_VECTOR)
@@ -2556,7 +2568,7 @@ static ast_expression *array_field_setter_node(
             return NULL;
         }
 
-        ast_store *st = ast_store_new(ctx, assignop, (ast_expression*)entfield, (ast_expression*)value);
+        st = ast_store_new(ctx, assignop, (ast_expression*)entfield, (ast_expression*)value);
         if (!st) {
             ast_delete(entfield);
             return NULL;
@@ -3280,7 +3292,7 @@ static bool parse_variable(parser_t *parser, ast_block *localblock, bool nofield
                 isvector = true;
 
             if (isvector) {
-                if (!create_vector_members(parser, var, ve)) {
+                if (!create_vector_members(var, ve)) {
                     retval = false;
                     goto cleanup;
                 }
@@ -3589,6 +3601,7 @@ static uint16_t progdefs_crc_sum(uint16_t old, const char *str)
 static void progdefs_crc_file(const char *str)
 {
     /* write to progdefs.h here */
+    (void)str;
 }
 
 static uint16_t progdefs_crc_both(uint16_t old, const char *str)