diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2015-06-26 18:55:22 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2015-06-26 18:55:22 -0700 |
commit | 9bf17146994d7586c62f7f52be525ee6f6b08329 (patch) | |
tree | 73c7499b2865f71639c9733b97ad4024fd57e8f0 /glob.h | |
parent | 526ff444979c6829ec52cc619136747354e57630 (diff) | |
download | txr-9bf17146994d7586c62f7f52be525ee6f6b08329.tar.gz txr-9bf17146994d7586c62f7f52be525ee6f6b08329.tar.bz2 txr-9bf17146994d7586c62f7f52be525ee6f6b08329.zip |
First round of quasiliteral-related fixes.
* parser.l: Do not try to recognize floating-point literals
in QSPECIAL state; that is not possible because @134.3
in a quasiliteral parses as a METANUM followed by ".3".
On the other hand, recognize METANUM literals in QSPECIAL state,
so that @@123 scans. Recognize @ as a token in QSPECIAL state,
so @@abc will scan. When transitioning from QSILIT and QWLIT
states to QSPECIAL upon scanning @, return a @ token, which
is now parsed in the grammar.
* parser.y (quasi_meta_helper): New static function.
(q_var): Do not handle SYMTOK any more, only the braced
variable syntax. SYMTOK is handled as a n_expr.
Braced vars are handled with explicit '@' token, which
is now produced by the scanner when it shifts from QSILIT
to QSPECIAL.
(quasi_item): No longer necessary to recognize various
forms here such as quotes and splices. Just recognize a n_expr,
preceded by '@'.
Diffstat (limited to 'glob.h')
0 files changed, 0 insertions, 0 deletions