aboutsummaryrefslogtreecommitdiffstats
path: root/src/syntax.c
diff options
context:
space:
mode:
authorRichard M. Stallman1998-08-10 21:19:03 +0000
committerRichard M. Stallman1998-08-10 21:19:03 +0000
commit326b283b18e793033004fa8c54f63599e1825e2c (patch)
tree9898a189bc834ca12142cde4d5a42e1b7bec2dd1 /src/syntax.c
parent2c8d5749a4cd61c22040d8e141f9a5c6f4ee1d21 (diff)
downloademacs-326b283b18e793033004fa8c54f63599e1825e2c.tar.gz
emacs-326b283b18e793033004fa8c54f63599e1825e2c.zip
(scan_sexps_forward): Set up the syntax table scanning
stuff before jumping into the loop.
Diffstat (limited to 'src/syntax.c')
-rw-r--r--src/syntax.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/syntax.c b/src/syntax.c
index b17a8d4d0bc..4edac655b7f 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -2383,17 +2383,23 @@ do { prev_from = from; \
2383 curlevel->prev = -1; 2383 curlevel->prev = -1;
2384 curlevel->last = -1; 2384 curlevel->last = -1;
2385 2385
2386 SETUP_SYNTAX_TABLE (prev_from, 1);
2387 prev_from_syntax = SYNTAX_WITH_FLAGS (FETCH_CHAR (prev_from_byte));
2388 UPDATE_SYNTAX_TABLE_FORWARD (from);
2389
2386 /* Enter the loop at a place appropriate for initial state. */ 2390 /* Enter the loop at a place appropriate for initial state. */
2387 2391
2388 if (state.incomment) goto startincomment; 2392 if (state.incomment)
2393 goto startincomment;
2389 if (state.instring >= 0) 2394 if (state.instring >= 0)
2390 { 2395 {
2391 nofence = state.instring != ST_STRING_STYLE; 2396 nofence = state.instring != ST_STRING_STYLE;
2392 if (start_quoted) goto startquotedinstring; 2397 if (start_quoted)
2398 goto startquotedinstring;
2393 goto startinstring; 2399 goto startinstring;
2394 } 2400 }
2395 if (start_quoted) goto startquoted; 2401 else if (start_quoted)
2396 2402 goto startquoted;
2397 2403
2398 SETUP_SYNTAX_TABLE (prev_from, 1); 2404 SETUP_SYNTAX_TABLE (prev_from, 1);
2399 prev_from_syntax = SYNTAX_WITH_FLAGS (FETCH_CHAR (prev_from_byte)); 2405 prev_from_syntax = SYNTAX_WITH_FLAGS (FETCH_CHAR (prev_from_byte));