diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2015-12-17 06:09:37 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2015-12-17 06:09:37 -0800 |
commit | f8c5f7d4950a6fb660c533625ef5004f998432b1 (patch) | |
tree | 774430d577a7d0b04ae52230a2b2d173164bb8c5 | |
parent | 954d698350e41df2bca00c4cba09dfe55f3a8e40 (diff) | |
download | txr-f8c5f7d4950a6fb660c533625ef5004f998432b1.tar.gz txr-f8c5f7d4950a6fb660c533625ef5004f998432b1.tar.bz2 txr-f8c5f7d4950a6fb660c533625ef5004f998432b1.zip |
Bugfix: dot syntax doesn't record source loc info.
* parser.y (n_expr): Fall back on getting line number info
from parser->lineno, if it didn't come from the operands.
-rw-r--r-- | parser.y | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -889,10 +889,12 @@ n_expr : SYMTOK { $$ = symhlpr($1, t); } | n_expr '.' n_expr { uses_or2; if (consp($3) && car($3) == qref_s) { rplacd($3, rlcp(cons($1, cdr($3)), $1)); + rl($$, num(parser->lineno)); $$ = $3; } else { - $$ = rlcp(list(qref_s, $1, $3, nao), - or2($1, $3)); + $$ = rl(rlcp(list(qref_s, $1, $3, nao), + or2($1, $3)), + num(parser->lineno)); } } ; |