diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2012-02-11 23:51:05 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2012-02-11 23:51:05 -0800 |
commit | fce7c87fa0099e5414607676fc73c9dfa9d7649c (patch) | |
tree | 6b080b309e798196061f8ad7e9a0c6ea6cbaa24b /debug.h | |
parent | aa2516fecfd6857206756efa891b058deceeb8dd (diff) | |
download | txr-fce7c87fa0099e5414607676fc73c9dfa9d7649c.tar.gz txr-fce7c87fa0099e5414607676fc73c9dfa9d7649c.tar.bz2 txr-fce7c87fa0099e5414607676fc73c9dfa9d7649c.zip |
Task #11486: continuation. Now able to @(skip) through
a large file horizontally under @(freeform) in constant memory.
Position reporting is incorrect.
* match.c (match_line_ctx): New member, base.
(ml_all): Initialize new member to zero.
(consume_prefix): New static function.
(do_match_line): New static function, contains implementation of
match_line. Calls consume_prefix.
(match_line): Becomes a wrapper for do_match_line.
(search_form, h_skip): Call consume_prefix.
(freeform_prepare): New function. External to avoid inlining.
(v_freeform): Uses do_match_line, to down context by reference,
and also refactored to avoid spurious retention of c->data.
* unwind.c (uw_push-block, uw_push_env, uw_push_debug,
uw_push_catch): Zero out the structure, otherwise the unused
fields can cause spurious retention.
Diffstat (limited to 'debug.h')
0 files changed, 0 insertions, 0 deletions