Lines Matching defs:stack
475 match. This can be spectacularly expensive and may run out of stack
511 #define BT_STACK_MBSTATE_IN stack->item.mbstate = (mbstate)
512 #define BT_STACK_MBSTATE_OUT (mbstate) = stack->item.mbstate
527 if (!stack->next) \
542 s->prev = stack; \
557 stack->next = s; \
558 stack = s; \
561 stack = stack->next; \
562 stack->item.pos = (_pos); \
563 stack->item.str_byte = (_str_byte); \
564 stack->item.state = (_state); \
565 stack->item.state_id = (_state_id); \
566 stack->item.next_c = (_next_c); \
568 stack->item.tags[i] = (_tags)[i]; \
577 assert(stack->prev); \
578 pos = stack->item.pos; \
579 str_byte = stack->item.str_byte; \
580 state = stack->item.state; \
581 next_c = stack->item.next_c; \
583 tags[i] = stack->item.tags[i]; \
585 stack = stack->prev; \
627 /* Memory allocator to for allocating the backtracking stack. */
630 /* The backtracking stack. */
631 tre_backtrack_t stack;
643 stack = tre_bt_mem_alloc(mem, sizeof(*stack));
644 if (!stack)
649 stack->prev = NULL;
650 stack->next = NULL;
726 stack->item.tags[*tmp++] = pos;
844 push this transition in the backtracking stack so we can
851 stack->item.tags[*tmp] = pos;
854 the stack small! */
875 if (stack->prev)
877 if (stack->item.state->assertions & ASSERT_BACKREF)
879 states_seen[stack->item.state_id] = 0;