diff options
-rw-r--r-- | node.h | 2 | ||||
-rw-r--r-- | parse.y | 3 |
2 files changed, 5 insertions, 0 deletions
@@ -192,6 +192,8 @@ typedef struct RNode { #define nd_set_first_column(n, v) ((n)->nd_loc.beg_pos.column = (v)) #define nd_first_lineno(n) ((int)((n)->nd_loc.beg_pos.lineno)) #define nd_set_first_lineno(n, v) ((n)->nd_loc.beg_pos.lineno = (v)) +#define nd_first_loc(n) ((n)->nd_loc.beg_pos) +#define nd_set_first_loc(n, v) (nd_first_loc(n) = (v)) #define nd_last_column(n) ((int)((n)->nd_loc.end_pos.column)) #define nd_set_last_column(n, v) ((n)->nd_loc.end_pos.column = (v)) @@ -2443,6 +2443,9 @@ primary : literal lambda { $$ = $3; + /*%%%*/ + nd_set_first_loc($$, @1.beg_pos); + /*% %*/ } | k_if expr_value then compstmt |