- token = psi_token_init(t, "", 0, tok - eol + 1, I->lines, I->file); \
+ token = psi_token_init(t, "", 0, tok - eol + 1, lines, I->file); \
- token = psi_token_init(t, tok, cur - tok, tok - eol + 1, I->lines, I->file); \
+ token = psi_token_init(t, tok, cur - tok, tok - eol + 1, lines, I->file); \
struct psi_plist *tokens;
struct psi_token *token;
const char *tok, *cur, *lim, *mrk, *eol, *ctxmrk;
struct psi_plist *tokens;
struct psi_token *token;
const char *tok, *cur, *lim, *mrk, *eol, *ctxmrk;
PSI_DEBUG_PRINT(P, "PSI: scanning %s\n", I->file->val);
tok = mrk = eol = cur = I->buffer;
lim = I->buffer + I->length + YYMAXFILL;
PSI_DEBUG_PRINT(P, "PSI: scanning %s\n", I->file->val);
tok = mrk = eol = cur = I->buffer;
lim = I->buffer + I->length + YYMAXFILL;
INT_CONST / ('llu' | 'ull') { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_ULL; cur += 3; goto start; }
FLT_CONST { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT; goto start; }
INT_CONST / ('llu' | 'ull') { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_ULL; cur += 3; goto start; }
FLT_CONST { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT; goto start; }
- FLT_CONST / 'f' { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_F; cur += 1; goto start; }
- FLT_CONST / 'l' { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_L; cur += 1; goto start; }
+ FLT_CONST / 'f' { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_F; cur += 1; goto start; }
+ FLT_CONST / 'l' { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_L; cur += 1; goto start; }
FLT_CONST / 'df' { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DF; cur += 2; goto start; }
FLT_CONST / 'dd' { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DD; cur += 2; goto start; }
FLT_CONST / 'dl' { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DL; cur += 2; goto start; }
FLT_CONST / 'df' { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DF; cur += 2; goto start; }
FLT_CONST / 'dd' { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DD; cur += 2; goto start; }
FLT_CONST / 'dl' { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DL; cur += 2; goto start; }
"u8" / "\"" { char_width = 1; }
"u" / ['"] { char_width = 2; }
"U" / ['"] { char_width = 4; }
"u8" / "\"" { char_width = 1; }
"u" / ['"] { char_width = 2; }
"U" / ['"] { char_width = 4; }
"..." { NEWTOKEN(PSI_T_ELLIPSIS); goto start; }
"?" { NEWTOKEN(PSI_T_IIF); goto start; }
"pragma" { NEWTOKEN(PSI_T_PRAGMA); goto start; }
"..." { NEWTOKEN(PSI_T_ELLIPSIS); goto start; }
"?" { NEWTOKEN(PSI_T_IIF); goto start; }
"pragma" { NEWTOKEN(PSI_T_PRAGMA); goto start; }
"__"? "inline" { NEWTOKEN(PSI_T_CPP_INLINE); goto start; }
"__restrict" { NEWTOKEN(PSI_T_CPP_RESTRICT); goto start; }
"__extension__" { NEWTOKEN(PSI_T_CPP_EXTENSION); goto start; }
"__"? "inline" { NEWTOKEN(PSI_T_CPP_INLINE); goto start; }
"__restrict" { NEWTOKEN(PSI_T_CPP_RESTRICT); goto start; }
"__extension__" { NEWTOKEN(PSI_T_CPP_EXTENSION); goto start; }
'CALLBACK' { NEWTOKEN(PSI_T_CALLBACK); goto start; }
'STATIC' { NEWTOKEN(PSI_T_STATIC); goto start; }
'FUNCTION' { NEWTOKEN(PSI_T_FUNCTION); goto start; }
'CALLBACK' { NEWTOKEN(PSI_T_CALLBACK); goto start; }
'STATIC' { NEWTOKEN(PSI_T_STATIC); goto start; }
'FUNCTION' { NEWTOKEN(PSI_T_FUNCTION); goto start; }
'LET' { NEWTOKEN(PSI_T_LET); goto start; }
'SET' { NEWTOKEN(PSI_T_SET); goto start; }
'PRE_ASSERT' { NEWTOKEN(PSI_T_PRE_ASSERT); goto start; }
'LET' { NEWTOKEN(PSI_T_LET); goto start; }
'SET' { NEWTOKEN(PSI_T_SET); goto start; }
'PRE_ASSERT' { NEWTOKEN(PSI_T_PRE_ASSERT); goto start; }