+ free (encoding);
+ encoding = xstrdup (lex_tokcstr (lexer));
+ lex_get (lexer);
+ }
+ else if (variant == INSERT && lex_match_id (lexer, "SYNTAX"))
+ {
+ lex_match (lexer, T_EQUALS);
+ if ( lex_match_id (lexer, "INTERACTIVE") )
+ syntax_mode = LEX_SYNTAX_INTERACTIVE;
+ else if ( lex_match_id (lexer, "BATCH"))
+ syntax_mode = LEX_SYNTAX_BATCH;
+ else if ( lex_match_id (lexer, "AUTO"))
+ syntax_mode = LEX_SYNTAX_AUTO;
+ else
+ {
+ lex_error_expecting (lexer, "BATCH", "INTERACTIVE", "AUTO");
+ goto exit;
+ }
+ }
+ else if (variant == INSERT && lex_match_id (lexer, "CD"))
+ {
+ lex_match (lexer, T_EQUALS);
+ if ( lex_match_id (lexer, "YES") )
+ {
+ cd = true;
+ }
+ else if ( lex_match_id (lexer, "NO"))
+ {
+ cd = false;
+ }
+ else
+ {
+ lex_error_expecting (lexer, "YES", "NO");
+ goto exit;
+ }
+ }
+ else if (variant == INSERT && lex_match_id (lexer, "ERROR"))
+ {
+ lex_match (lexer, T_EQUALS);
+ if ( lex_match_id (lexer, "CONTINUE") )
+ {
+ error_mode = LEX_ERROR_CONTINUE;
+ }
+ else if ( lex_match_id (lexer, "STOP"))
+ {
+ error_mode = LEX_ERROR_STOP;
+ }
+ else
+ {
+ lex_error_expecting (lexer, "CONTINUE", "STOP");
+ goto exit;
+ }
+ }