else if (lex_match_id (lexer, "DEFAULT"))
dsc->show_stats |= DEFAULT_STATS;
else
- dsc->show_stats |= 1ul << (match_statistic (lexer));
+ {
+ enum dsc_statistic s = match_statistic (lexer);
+ if (s == DSC_NONE )
+ {
+ lex_error (lexer, NULL);
+ goto error;
+ }
+ dsc->show_stats |= 1ul << s;
+ }
lex_match (lexer, T_COMMA);
}
if (dsc->show_stats == 0)
dsc->sort_ascending = 0;
else
lex_error (lexer, NULL);
- lex_force_match (lexer, T_RPAREN);
+ if (! lex_force_match (lexer, T_RPAREN))
+ goto error;
}
}
else if (var_cnt == 0)