comparison src/regex.c @ 179:9ad43877534d r20-3b16

Import from CVS: tag r20-3b16
author cvs
date Mon, 13 Aug 2007 09:52:19 +0200
parents 2d532a89d707
children e121b013d1f0
comparison
equal deleted inserted replaced
178:e703507b8a00 179:9ad43877534d
5016 DEBUG_PRINT1 ("EXECUTING on_failure_keep_string_jump"); 5016 DEBUG_PRINT1 ("EXECUTING on_failure_keep_string_jump");
5017 5017
5018 EXTRACT_NUMBER_AND_INCR (mcnt, p); 5018 EXTRACT_NUMBER_AND_INCR (mcnt, p);
5019 DEBUG_PRINT3 (" %d (to 0x%p):\n", mcnt, p + mcnt); 5019 DEBUG_PRINT3 (" %d (to 0x%p):\n", mcnt, p + mcnt);
5020 5020
5021 PUSH_FAILURE_POINT (p + mcnt, NULL, -2); 5021 PUSH_FAILURE_POINT (p + mcnt, (void *) 0, -2);
5022 break; 5022 break;
5023 5023
5024 5024
5025 /* Uses of on_failure_jump: 5025 /* Uses of on_failure_jump:
5026 5026
5272 something meaningless for pop_failure_jump to pop. */ 5272 something meaningless for pop_failure_jump to pop. */
5273 case dummy_failure_jump: 5273 case dummy_failure_jump:
5274 DEBUG_PRINT1 ("EXECUTING dummy_failure_jump.\n"); 5274 DEBUG_PRINT1 ("EXECUTING dummy_failure_jump.\n");
5275 /* It doesn't matter what we push for the string here. What 5275 /* It doesn't matter what we push for the string here. What
5276 the code at `fail' tests is the value for the pattern. */ 5276 the code at `fail' tests is the value for the pattern. */
5277 PUSH_FAILURE_POINT (NULL, NULL, -2); 5277 PUSH_FAILURE_POINT ((void *) 0, (void *) 0, -2);
5278 goto unconditional_jump; 5278 goto unconditional_jump;
5279 5279
5280 5280
5281 /* At the end of an alternative, we need to push a dummy failure 5281 /* At the end of an alternative, we need to push a dummy failure
5282 point in case we are followed by a `pop_failure_jump', because 5282 point in case we are followed by a `pop_failure_jump', because
5285 requires that we match the `ab' alternative. */ 5285 requires that we match the `ab' alternative. */
5286 case push_dummy_failure: 5286 case push_dummy_failure:
5287 DEBUG_PRINT1 ("EXECUTING push_dummy_failure.\n"); 5287 DEBUG_PRINT1 ("EXECUTING push_dummy_failure.\n");
5288 /* See comments just above at `dummy_failure_jump' about the 5288 /* See comments just above at `dummy_failure_jump' about the
5289 two zeroes. */ 5289 two zeroes. */
5290 PUSH_FAILURE_POINT (NULL, NULL, -2); 5290 PUSH_FAILURE_POINT ((void *) 0, (void *) 0, -2);
5291 break; 5291 break;
5292 5292
5293 /* Have to succeed matching what follows at least n times. 5293 /* Have to succeed matching what follows at least n times.
5294 After that, handle like `on_failure_jump'. */ 5294 After that, handle like `on_failure_jump'. */
5295 case succeed_n: 5295 case succeed_n: