Add unicode literal

This commit is contained in:
Krzosa Karol
2022-06-04 09:27:59 +02:00
parent c3f235bd44
commit f3527be36a
4 changed files with 23 additions and 16 deletions

View File

@@ -7,6 +7,9 @@ parsing_error(Token *token, const char *str, ...){
// @Note(Krzosa): Print nice error message
printf("\nError: %s", string.str);
if(token){
if(token->kind == TK_Error){
printf("Token Error: %.*s", (int)token->error_val.len, token->error_val.str);
}
printf(" %s:%d\n", token->file.str, (S32)token->line + 1);
// @Note(Krzosa): Print error line
@@ -372,6 +375,7 @@ parse_expr(S64 min_bp){
case TK_StringLit : left = ast_str(token, token->intern_val); break;
case TK_Identifier : left = ast_ident(token, token->intern_val); break;
case TK_Integer : left = ast_int(token, token->int_val); break;
case TK_UnicodeLit : left = ast_int(token, token->unicode); break;
case TK_Float : left = ast_float(token, token->f64_val); break;
case TK_Pointer : left = ast_expr_unary(token, TK_Pointer, parse_expr(prefix_bp.right)); break;
case TK_Dereference: left = ast_expr_unary(token, TK_Dereference, parse_expr(prefix_bp.right)); break;