Mercurial > emacs
view src/s/ptx4.h @ 28203:c10ee0e6982b
(RE_STRING_CHAR): New macro.
(GET_CHAR_AFER_2): Remove.
(RE_TRANSLATE, RE_TRANSLATE_P): New macros moved from regex.h.
(enum re_opcode_t): Remove on_failure_jump_exclusive.
(print_partial_compiled_pattern, re_compile_fastmap)
(re_match_2_internal): Remove on_failure_jump_exclusive.
(regex_compile): Turn optimizable P+ loops into PP*, so that the
optimization only need to work for * (ie. can use of_keep_string_jump).
Remove the special case for .*\n since it is now covered by the general
optimization.
(re_search_2): Don't bother with `room'.
(skip_one_char): New function.
(skip_noops): Simplify since `memory' is not needed any more.
(mutually_exclusive_p): Restructure slightly to use `switch' and
add handling for "all" remaining cases.
(re_match_2_internal): Change on_failure_jump_smart to use
on_failure_keep_string_jump (and redirect the end-of-loop jump)
rather than on_failure_jump_exclusive.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Sun, 19 Mar 2000 23:22:06 +0000 |
parents | 566fd2a966aa |
children | 695cf19ef79e |
line wrap: on
line source
/* s/ file for Sequent "ptx 4", which is a modified SVR5.4. */ /* Tell usg5-4.h not to include filio.h. */ #define NO_FILIO_H #include "usg5-4.h" /* Marcus Daniels <marcus@sysc.pdx.edu> says that SIGINFO is defined on ptx4 but it is not a signal. Prevent process.c from doing the wrong thing. */ #define BROKEN_SIGINFO /* pae@dim.com (Phil Ernhardt) says this correction to the definition in usg5-4.h is needed to prevent all asynchronous subprocesses from exiting right away. */ /* James Youngman <jay@gnu.org> found that on "DYNIX/ptx ARNIE 4.0 * V4.4.2 i386", the push of the ttcompat module would fail. It seems * that PTX 4.4.2 doesn't have that module, so if the push fails we * don't kill ourselves. While this version lacks ttcompat, it also * has ptem, but the manual page for ptem indicates that it should * be pushed onto the slave side before the line discipline module. * See also the streampty manual page, if you're curious (and have * a ptx system). */ /* rms: I hope that older versions which do have ttcompat will not get confused by the code to use ptem. */ #undef SETUP_SLAVE_PTY #define SETUP_SLAVE_PTY \ if (ioctl (xforkin, I_PUSH, "ptem") == -1 && errno != EINVAL) \ fatal ("ioctl I_PUSH ptem", errno); \ if (ioctl (xforkin, I_PUSH, "ldterm") == -1) \ fatal ("ioctl I_PUSH ldterm", errno); \ if (ioctl (xforkin, I_PUSH, "ttcompat") == -1 && errno != EINVAL) \ fatal ("ioctl I_PUSH ttcompat", errno);