]> git.xonotic.org Git - xonotic/gmqcc.git/blobdiff - parser.c
fix -fcorrect-logic to use double-not instead of a single one - wow that was a bad one
[xonotic/gmqcc.git] / parser.c
index 123241f17c9d4c19a7505a3eae7f7dae5f698f8e..f7bcad11fbe7c3fc39cd77d1f5814cc56eb0ab48 100644 (file)
--- a/parser.c
+++ b/parser.c
@@ -903,12 +903,13 @@ static bool parser_sy_apply_operator(parser_t *parser, shunt *sy)
                                 return false;
                             }
                             out = (ast_expression*)ast_unary_new(ctx, type_not_instr[exprs[i]->expression.vtype], exprs[i]);
-                            if (!out)
-                                break;
+                            if (!out) break;
+                            out = (ast_expression*)ast_unary_new(ctx, type_not_instr[exprs[i]->expression.vtype], out);
+                            if (!out) break;
                             exprs[i] = out; out = NULL;
+                            if (OPTS_FLAG(PERL_LOGIC)) {
+                            }
                         }
-                        if (OPTS_FLAG(PERL_LOGIC))
-                            break;
                     }
                 }
                 out = (ast_expression*)ast_binary_new(ctx, generated_op, exprs[0], exprs[1]);