{
dump (0, "p->%sv_%s = parse_variable ();",
st_lower (sbc->prefix), st_lower (sbc->name));
- dump (1, "if (p->%sv_%s)",
+ dump (1, "if (!p->%sv_%s)",
st_lower (sbc->prefix), st_lower (sbc->name));
dump (0, "goto lossage;");
outdent ();
{
switch (sbc->type)
{
+ case SBC_VARLIST:
+ dump (0, "free (p->v_variables);");
+ break;
case SBC_STRING:
dump (0, "free (p->s_%s);", st_lower (sbc->name));
break;