- assert (put_token != 0);
- token = put_token;
- ds_assign_string (&tokstr, &put_tokstr);
- str_copy_trunc (tokid, sizeof tokid, ds_c_str (&tokstr));
- tokval = put_tokval;
- put_token = 0;
+ assert (lexer->put_token != 0);
+ lexer->token = lexer->put_token;
+ ds_assign_string (&lexer->tokstr, &lexer->put_tokstr);
+ str_copy_trunc (lexer->tokid, sizeof lexer->tokid, ds_cstr (&lexer->tokstr));
+ lexer->tokval = lexer->put_tokval;
+ lexer->put_token = 0;