/* Parse variable lists. */
lex_match_id (lexer, "VARIABLES");
- lex_match (lexer, '=');
+ lex_match (lexer, T_EQUALS);
if (!parse_variables_const (lexer, dict, &src_vars, &n_srcs,
PV_NO_DUPLICATE))
goto error;
if (!lex_force_match_id (lexer, "INTO"))
goto error;
- lex_match (lexer, '=');
- if (!parse_DATA_LIST_vars (lexer, &dst_names, &n_dsts, PV_NO_DUPLICATE))
+ lex_match (lexer, T_EQUALS);
+ if (!parse_DATA_LIST_vars (lexer, dict, &dst_names, &n_dsts,
+ PV_NO_DUPLICATE))
goto error;
if (n_dsts != n_srcs)
{
}
/* Parse options. */
- while (lex_match (lexer, '/'))
+ while (lex_match (lexer, T_SLASH))
{
if (lex_match_id (lexer, "DESCENDING"))
direction = DESCENDING;
}
}
- if (lex_token (lexer) != '.')
+ if (lex_token (lexer) != T_ENDCMD)
{
lex_error (lexer, _("expecting end of command"));
goto error;
for (i = 0; i < arc->n_specs; i++)
{
struct arc_spec *spec = &arc->specs[i];
- int width = var_get_width (spec->src);
struct arc_item *item, *next;
HMAP_FOR_EACH_SAFE (item, next, struct arc_item, hmap_node,
spec->items)
{
- value_destroy (&item->from, width);
+ value_destroy (&item->from, item->width);
hmap_delete (spec->items, &item->hmap_node);
free (item);
}