The VARIABLE ATTRIBUTE and DATAFILE ATTRIBUTE commands use [ and ]
to designate array elements. This is the first use for these tokens
in the language implemented by PSPP, so until now these characters
were rejected with an error whenever they appeared in a syntax file
outside a comment or a quoted string.
break;
case '(': case ')': case ',': case '=': case '+': case '/':
+ case '[': case ']':
lexer->token = *lexer->prog++;
break;