+2000-02-14 Stefan Monnier <monnier@cs.yale.edu>
+
+ * regex.h (RE_SYNTAX_EMACS): Add RE_CHAR_CLASSES and RE_INTERVALS
+ to Emacs' syntax. Also fix the comment about set/not-set meanings
+ since Emacs syntax is not the value 0 any more.
+ * search.c (compile_pattern_1): Remove RE_CHAR_CLASSES from the syntax
+ since it's now part of RE_SYNTAX_EMACS.
+
2000-02-12 Dave Love <fx@gnu.org>
* frame.h (SELECTED_FRAME): Use NULL, not 0 to avoid warnings on
/* The following bits are used to determine the regexp syntax we
- recognize. The set/not-set meanings are chosen so that Emacs syntax
- remains the value 0. The bits are given in alphabetical order, and
+ recognize. The set/not-set meanings where historically chosen so
+ that Emacs syntax had the value 0.
+ The bits are given in alphabetical order, and
the definitions shifted by one from the previous bit; thus, when we
add or remove a bit, only one other definition need change. */
typedef unsigned reg_syntax_t;
\f
/* Define combinations of the above bits for the standard possibilities.
(The [[[ comments delimit what gets put into the Texinfo file, so
- don't delete them!) */
+ don't delete them!) */
/* [[[begin syntaxes]]] */
-#define RE_SYNTAX_EMACS 0
+#define RE_SYNTAX_EMACS (RE_CHAR_CLASSES | RE_INTERVALS)
#define RE_SYNTAX_AWK \
(RE_BACKSLASH_ESCAPE_IN_LISTS | RE_DOT_NOT_NULL \
cp->posix = posix;
cp->buf.multibyte = multibyte;
BLOCK_INPUT;
- old = re_set_syntax (RE_SYNTAX_EMACS | RE_CHAR_CLASSES
+ old = re_set_syntax (RE_SYNTAX_EMACS
| (posix ? 0 : RE_NO_POSIX_BACKTRACKING));
val = (char *) re_compile_pattern ((char *)raw_pattern,
raw_pattern_size, &cp->buf);