diff options
Diffstat (limited to '')
| -rw-r--r-- | src/bootstrap/parser.pry | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/bootstrap/parser.pry b/src/bootstrap/parser.pry index 40ed001..556cc44 100644 --- a/src/bootstrap/parser.pry +++ b/src/bootstrap/parser.pry @@ -521,6 +521,15 @@ let parser_parse_primary_expression = (p: *parser) => *Node { n.data = cast(*void, d); return create_node(p, n); }; + + if (*tok).type == TOKEN_STRING { + let d = cast(*NODE_PRIMARY_EXPRESSION_STRING_DATA, arena_alloc((*p).arena, sizeof(NODE_PRIMARY_EXPRESSION_STRING_DATA))); + (*d).value = cast(*i8, (*tok).data); + let n = Node{}; + n.type = NODE_PRIMARY_EXPRESSION_STRING; + n.data = cast(*void, d); + return create_node(p, n); + }; printf("DIFF TYPE: %d\n", (*tok).type); |