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)
for (j = 0; j < DSC_N_STATS; j++)
if (dsc->show_stats & (1ul << j))
- tab_double (t, nc++, i + 1, TAB_NONE, dv->stats[j], NULL);
+ tab_double (t, nc++, i + 1, TAB_NONE, dv->stats[j], NULL, RC_OTHER);
}
tab_title (t, _("Valid cases = %.*g; cases with missing value(s) = %.*g."),