- lex_force_match (lexer, T_EQUALS);
- lex_force_match (lexer, T_LBRACK);
-
- while (lex_token (lexer) != T_RBRACK &&
- lex_token (lexer) != T_ENDCMD)
- {
- int i;
- for (i = 0 ; i < N_THINGS; ++i)
- {
- if (lex_match_id (lexer, things[i].identifier))
- {
- os->rc = xrealloc (os->rc, sizeof (*os->rc) * ++os->n_rc);
- os->rc[os->n_rc - 1] = things[i].rc;
- break;
- }
- }
- if (i >= N_THINGS)
- {
- lex_error (lexer, _("Unknown TABLECELLS class"));
- goto error;
- }
- }
- lex_force_match (lexer, T_RBRACK);
+ if (! lex_force_match (lexer, T_EQUALS))
+ goto error;
+
+ if (! lex_force_match (lexer, T_LBRACK))
+ goto error;
+
+ while (lex_token (lexer) == T_ID)
+ {
+ string_set_insert (&rc_names, lex_tokcstr (lexer));
+ lex_get (lexer);
+ }
+
+ if (! lex_force_match (lexer, T_RBRACK))
+ goto error;