compile_pattern_1 (cp, pattern, translate, regp, posix)
struct regexp_cache *cp;
Lisp_Object pattern;
- char *translate;
+ Lisp_Object *translate;
struct re_registers *regp;
int posix;
{
compile_pattern (pattern, regp, translate, posix)
Lisp_Object pattern;
struct re_registers *regp;
- char *translate;
+ Lisp_Object *translate;
int posix;
{
struct regexp_cache *cp, **cpp;
np = search_buffer (string, point, lim, n, RE,
(!NILP (current_buffer->case_fold_search)
- ? XSTRING (current_buffer->case_canon_table)->data : 0),
+ ? XCHAR_TABLE (current_buffer->case_canon_table)->contents
+ : 0),
(!NILP (current_buffer->case_fold_search)
- ? XSTRING (current_buffer->case_eqv_table)->data : 0),
+ ? XCHAR_TABLE (current_buffer->case_eqv_table)->contents
+ : 0),
posix);
if (np <= 0)
{
int lim;
int n;
int RE;
- register unsigned char *trt;
- register unsigned char *inverse_trt;
+ Lisp_Object *trt;
+ Lisp_Object *inverse_trt;
int posix;
{
int len = XSTRING (string)->size;
{
struct re_pattern_buffer *bufp;
- bufp = compile_pattern (string, &search_regs, (char *) trt, posix);
+ bufp = compile_pattern (string, &search_regs, trt, posix);
immediate_quit = 1; /* Quit immediately if user types ^G,
because letting this function finish
BM_tab[j] = dirlen - i;
/* A translation table is accompanied by its inverse -- see */
/* comment following downcase_table for details */
- while ((j = inverse_trt[j]) != k)
+ while ((j = (unsigned char) inverse_trt[j]) != k)
BM_tab[j] = dirlen - i;
}
else