Print this page
11506 smatch resync

*** 161,171 **** struct expression *left, *array; struct range_list *orig_rl, *rl; struct symbol *type; char *name; ! type = get_type(expr->right); if (!type || type->type != SYM_BASETYPE) return; left = strip_expr(expr->left); if (!is_array(left)) --- 161,171 ---- struct expression *left, *array; struct range_list *orig_rl, *rl; struct symbol *type; char *name; ! type = get_type(expr->left); if (!type || type->type != SYM_BASETYPE) return; left = strip_expr(expr->left); if (!is_array(left))
*** 174,184 **** name = get_array_name(array); if (!name) return; if (expr->op != '=') { ! rl = alloc_whole_rl(type); } else { get_absolute_rl(expr->right, &rl); rl = cast_rl(type, rl); orig_rl = get_saved_rl(type, name); rl = rl_union(orig_rl, rl); --- 174,185 ---- name = get_array_name(array); if (!name) return; if (expr->op != '=') { ! rl = alloc_whole_rl(get_type(expr->right)); ! rl = cast_rl(type, rl); } else { get_absolute_rl(expr->right, &rl); rl = cast_rl(type, rl); orig_rl = get_saved_rl(type, name); rl = rl_union(orig_rl, rl);