From 22173df7bd005d3447931cdebd1a52b5fa8500d1 Mon Sep 17 00:00:00 2001 From: "Wolfgang (Blub) Bumiller" Date: Sun, 25 Nov 2012 21:08:30 +0100 Subject: [PATCH] Allow 'const' within function bodies --- parser.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/parser.c b/parser.c index 752d62a..0bedff2 100644 --- a/parser.c +++ b/parser.c @@ -2253,8 +2253,11 @@ static bool parse_statement(parser_t *parser, ast_block *block, ast_expression * } else if (parser->tok == TOKEN_KEYWORD) { - if (!strcmp(parser_tokval(parser), "local")) + if (!strcmp(parser_tokval(parser), "local") || + !strcmp(parser_tokval(parser), "const")) { + int cvq = parser_tokval(parser)[0] == 'c' ? CV_CONST : CV_VAR; + if (!block) { parseerror(parser, "cannot declare a local variable here"); return false; @@ -2263,7 +2266,7 @@ static bool parse_statement(parser_t *parser, ast_block *block, ast_expression * parseerror(parser, "expected variable declaration"); return false; } - if (!parse_variable(parser, block, true, CV_VAR, NULL)) + if (!parse_variable(parser, block, true, cvq, NULL)) return false; *out = NULL; return true; -- 2.39.2