From 8909986b89eaac74bb4cd8dc7019f96e4f650470 Mon Sep 17 00:00:00 2001 From: LLLL Colonq Date: Mon, 29 Jun 2026 20:29:36 -0400 Subject: Initial annotations --- src/parser.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/parser.c') diff --git a/src/parser.c b/src/parser.c index 77b4172..002641e 100644 --- a/src/parser.c +++ b/src/parser.c @@ -3,6 +3,8 @@ #include #include +#include + static pit_lex_token peek(pit_parser *st) { if (!st) return PIT_LEX_TOKEN_ERROR; return st->next.token; @@ -106,6 +108,14 @@ pit_value pit_parse(pit_runtime *rt, pit_parser *st, bool *eof) { ret = pit_cons(rt, *v, ret); } rt->scratch->next = scratch_reset; + if (pit_value_sort(ret) == PIT_VALUE_SORT_REF) { + fprintf(stderr, "adding annotation (%ld): ", pit_as_ref(rt, ret)); + pit_trace_(rt, "%s\n", ret); + pit_expr_annotations_push(rt->annotations, + pit_as_ref(rt, ret), + rt->source_line, rt->source_column + ); + } return ret; } case PIT_LEX_TOKEN_LSQUARE: { -- cgit v1.2.3