Mercurial > emacs
view admin/notes/cpp @ 55690:daeeb5ef2d95
Add support for new '\_<' and '\_>' regexp operators, matching the
beginning and ends of symbols.
* regex.c (enum syntaxcode): Add Ssymbol.
(init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
(re_opcode_t): New opcodes `symbeg' and `symend'.
(print_partial_compiled_pattern): Print the new opcodes properly.
(regex_compile): Parse the new operators.
(analyse_first): Skip symbeg and symend (they match only the empty string).
(mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
\sw; `symbeg' is mutually exclusive with \S_ and \Sw.
(re_match_2_internal): Match symbeg and symend.
| author | Stefan Monnier <monnier@iro.umontreal.ca> |
|---|---|
| date | Wed, 19 May 2004 16:37:35 +0000 |
| parents | 695cf19ef79e |
| children | 375f2633d815 c3512b2085a0 |
line wrap: on
line source
ttn 2003-04-09 we use a C preprocesor not only in the normal compilation of .c files into object files, but also for creating src/Makefile lib-src/Makefile (delimited by comment "start of cpp stuff"). some cpp implementations insert whitespace in between tokens, which explains the "$(dot)$(dot)" and "UNEXEC_ALIAS" workarounds for unixoid systems and the bundled tradcpp/ for vms. [NOTE: tradcpp/ not yet checked in.] during makefile creation, the preprocessor symbol NOT_C_CODE is defined. this should not be defined for normal .c file compilation. there has been discussion on eliminating this use of cpp and relying solely on autoconf processing. rms says to leave it be. ;;; arch-tag: d654291e-9fc8-41b7-ab0c-d3cde842a8e0
