DEBUG_PRINT2
DEBUG_PRINT2 ("\nPUSH_FAILURE_POINT #%u:\n", failure_id); \
DEBUG_PRINT2 (" Before push, next avail: %d\n", (fail_stack).avail);\
DEBUG_PRINT2 (" size: %d\n", (fail_stack).size);\
DEBUG_PRINT2 (" slots needed: %d\n", NUM_FAILURE_ITEMS); \
DEBUG_PRINT2 (" available: %d\n", REMAINING_AVAIL_SLOTS); \
DEBUG_PRINT2 ("\n Doubled stack; size now: %d\n", \
DEBUG_PRINT2 (" slots available: %d\n", REMAINING_AVAIL_SLOTS);\
DEBUG_PRINT2 (" Pushing reg: %d\n", this_reg); \
DEBUG_PRINT2 (" start: 0x%x\n", regstart[this_reg]); \
DEBUG_PRINT2 (" end: 0x%x\n", regend[this_reg]); \
DEBUG_PRINT2 (" info: 0x%x\n ", reg_info[this_reg]); \
DEBUG_PRINT2 (" match_null=%d", \
DEBUG_PRINT2 (" active=%d", IS_ACTIVE (reg_info[this_reg])); \
DEBUG_PRINT2 (" matched_something=%d", \
DEBUG_PRINT2 (" ever_matched=%d", \
DEBUG_PRINT2 (" Pushing low active reg: %d\n", lowest_active_reg);\
DEBUG_PRINT2 (" Pushing high active reg: %d\n", highest_active_reg);\
DEBUG_PRINT2 (" Pushing pattern 0x%x: ", pattern_place); \
DEBUG_PRINT2 (" Pushing string 0x%x: `", string_place); \
DEBUG_PRINT2 (" Pushing failure id: %u\n", failure_id); \
DEBUG_PRINT2 (" Before pop, next avail: %d\n", fail_stack.avail); \
DEBUG_PRINT2 (" size: %d\n", fail_stack.size); \
DEBUG_PRINT2 (" Popping failure id: %u\n", failure_id); \
DEBUG_PRINT2 (" Popping string 0x%x: `", str); \
DEBUG_PRINT2 (" Popping pattern 0x%x: ", pat); \
DEBUG_PRINT2 (" Popping high active reg: %d\n", high_reg); \
DEBUG_PRINT2 (" Popping low active reg: %d\n", low_reg); \
DEBUG_PRINT2 (" Popping reg: %d\n", this_reg); \
DEBUG_PRINT2 (" info: 0x%x\n", reg_info[this_reg]); \
DEBUG_PRINT2 (" end: 0x%x\n", regend[this_reg]); \
DEBUG_PRINT2 (" start: 0x%x\n", regstart[this_reg]); \
DEBUG_PRINT2 ("\n0x%x: ", p);
DEBUG_PRINT2 ("%u registers pushed.\n", num_regs_pushed);
DEBUG_PRINT2 ("Returning %d from re_match_2.\n", mcnt);
DEBUG_PRINT2 ("EXECUTING exactn %d.\n", mcnt);
DEBUG_PRINT2 (" Matched `%d'.\n", *d);
DEBUG_PRINT2 ("EXECUTING charset%s.\n", not ? "_not" : "");
DEBUG_PRINT2 (" old_regstart: %d\n",
DEBUG_PRINT2 (" regstart: %d\n", POINTER_TO_OFFSET (regstart[*p]));
DEBUG_PRINT2 (" old_regend: %d\n",
DEBUG_PRINT2 (" regend: %d\n", POINTER_TO_OFFSET (regend[*p]));
DEBUG_PRINT2 ("EXECUTING duplicate %d.\n", regno);
DEBUG_PRINT2 ("EXECUTING maybe_pop_jump %d.\n", mcnt);
DEBUG_PRINT2 ("EXECUTING jump %d ", mcnt);
DEBUG_PRINT2 ("(to 0x%x).\n", p);
DEBUG_PRINT2 ("EXECUTING succeed_n %d.\n", mcnt);
DEBUG_PRINT2 (" Setting two bytes from 0x%x to no_op.\n", p+2);
DEBUG_PRINT2 ("EXECUTING jump_n %d.\n", mcnt);
DEBUG_PRINT2 ("EXECUTING syntaxspec %d.\n", mcnt);
DEBUG_PRINT2 ("EXECUTING notsyntaxspec %d.\n", mcnt);