From bd6b19cf6e6158db78eed0bd749cffb6cf2a3efb Mon Sep 17 00:00:00 2001 From: Christoph Mallon Date: Tue, 21 Oct 2008 06:11:05 +0000 Subject: [PATCH] Improve unused variable check. [r23057] --- parser.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/parser.c b/parser.c index 7f2bf55..4098ff3 100644 --- a/parser.c +++ b/parser.c @@ -1886,9 +1886,11 @@ static declaration_t *determine_lhs_decl(expression_t *const expr, declaration_t case EXPR_ARRAY_ACCESS: { expression_t *const ref = expr->array_access.array_ref; declaration_t * decl = NULL; - if (is_type_array(skip_typeref(ref->base.type))) { + if (is_type_array(revert_automatic_type_conversion(ref))) { decl = determine_lhs_decl(ref, lhs_decl); lhs_decl = decl; + } else { + mark_decls_read(expr->select.compound, lhs_decl); } mark_decls_read(expr->array_access.index, lhs_decl); return decl; -- 2.20.1