parsing error value decls and error value literals

and return with '?' or '%' prefix
This commit is contained in:
Andrew Kelley
2016-01-20 18:18:50 -07:00
parent 82d1b51b1d
commit 5e212db29c
10 changed files with 548 additions and 88 deletions

View File

@@ -584,6 +584,11 @@ void tokenize(Buf *buf, Tokenization *out) {
end_token(&t);
t.state = TokenizeStateStart;
break;
case '.':
t.cur_tok->id = TokenIdPercentDot;
end_token(&t);
t.state = TokenizeStateStart;
break;
default:
t.pos -= 1;
end_token(&t);
@@ -1092,6 +1097,7 @@ const char * token_name(TokenId id) {
case TokenIdDoubleQuestion: return "??";
case TokenIdMaybeAssign: return "?=";
case TokenIdAtSign: return "@";
case TokenIdPercentDot: return "%.";
}
return "(invalid token)";
}