X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=parser.cpp;h=c795e40a39c9c6dd6e8354b5a76e6d83ea394c0e;hb=e920766b10ebed3fc7fad0373aab6dde507e2341;hp=9bfd7517a26aea26b9671f362f6e9be58dcdfd50;hpb=73d3d7eec1f9bbdf0f5905bf25d5d1f05aaf1995;p=xonotic%2Fgmqcc.git diff --git a/parser.cpp b/parser.cpp index 9bfd751..c795e40 100644 --- a/parser.cpp +++ b/parser.cpp @@ -135,22 +135,17 @@ static ast_expression* parser_find_local(parser_t *parser, const char *name, siz { size_t i, hash; ast_expression *e; - ast_expression *p; hash = util_hthash(parser->htglobals, name); *isparam = false; - p = parser_find_param(parser, name); - if (p) { - *isparam = true; - return p; - } for (i = parser->variables.size(); i > upto;) { --i; if ( (e = (ast_expression*)util_htgeth(parser->variables[i], name, hash)) ) return e; } - return NULL; + *isparam = true; + return parser_find_param(parser, name); } static ast_expression* parser_find_local(parser_t *parser, const std::string &name, size_t upto, bool *isparam) { @@ -161,7 +156,7 @@ static ast_expression* parser_find_var(parser_t *parser, const char *name) { bool dummy; ast_expression *v; - v = parser_find_local(parser, name, 0, &dummy); + v = parser_find_local(parser, name, PARSER_HT_LOCALS, &dummy); if (!v) v = parser_find_global(parser, name); return v; }