X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=walk.c;h=1b887909e7d836d4c86a31e8119066557fe518da;hb=d2bf8b03b1aec5141800a300c62595930023ad79;hp=62a46a2ecd27f42d732c1bd0770c4b095d9751c5;hpb=f181ba24df15120ce46e9a23d9466e6177de3473;p=cparser diff --git a/walk.c b/walk.c index 62a46a2..1b88790 100644 --- a/walk.c +++ b/walk.c @@ -178,7 +178,7 @@ static void walk_expression(expression_t *const expr, case EXPR_LITERAL_CASES: case EXPR_REFERENCE: - case EXPR_REFERENCE_ENUM_VALUE: + case EXPR_ENUM_CONSTANT: case EXPR_STRING_LITERAL: case EXPR_WIDE_STRING_LITERAL: case EXPR_FUNCNAME: @@ -327,6 +327,11 @@ static void walk_statement(statement_t *const stmt, const walk_env_t *const env) return; case STATEMENT_CASE_LABEL: + if (stmt->case_label.expression) { + walk_expression(stmt->case_label.expression, env); + if (stmt->case_label.end_range) + walk_expression(stmt->case_label.end_range, env); + } walk_statement(stmt->case_label.statement, env); return;