X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/cc601c3163078dbee18369839db37a81c9f1d02a..13414bd57a95312231e2bee41d173b09580d2351:/regcomp.h diff --git a/regcomp.h b/regcomp.h index dbf55f5..6a2a22d 100644 --- a/regcomp.h +++ b/regcomp.h @@ -1,7 +1,7 @@ /* regcomp.h * * Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - * 2000, 2001, 2002, 2003, by Larry Wall and others + * 2000, 2001, 2002, 2003, 2005 by Larry Wall and others * * You may distribute under the terms of either the GNU General Public * License or the Artistic License, as specified in the README file. @@ -154,15 +154,9 @@ struct regnode_charclass_class { /* has [[:blah:]] classes */ #undef NEXT_OFF #undef NODE_ALIGN -#ifndef lint -# define NEXT_OFF(p) ((p)->next_off) -# define NODE_ALIGN(node) -# define NODE_ALIGN_FILL(node) ((node)->flags = 0xde) /* deadbeef */ -#else /* lint */ -# define NEXT_OFF(p) 0 -# define NODE_ALIGN(node) -# define NODE_ALIGN_FILL(node) -#endif /* lint */ +#define NEXT_OFF(p) ((p)->next_off) +#define NODE_ALIGN(node) +#define NODE_ALIGN_FILL(node) ((node)->flags = 0xde) /* deadbeef */ #define SIZE_ALIGN NODE_ALIGN @@ -309,15 +303,11 @@ struct regnode_charclass_class { /* has [[:blah:]] classes */ /* * Utility definitions. */ -#ifndef lint #ifndef CHARMASK -#define UCHARAT(p) ((int)*(U8*)(p)) +# define UCHARAT(p) ((int)*(const U8*)(p)) #else -#define UCHARAT(p) ((int)*(p)&CHARMASK) +# define UCHARAT(p) ((int)*(p)&CHARMASK) #endif -#else /* lint */ -#define UCHARAT(p) PL_regdummy -#endif /* lint */ #define EXTRA_SIZE(guy) ((sizeof(guy)-1)/sizeof(struct regnode)) @@ -337,7 +327,7 @@ START_EXTERN_C EXTCONST U8 PL_varies[]; #else EXTCONST U8 PL_varies[] = { - BRANCH, BACK, STAR, PLUS, CURLY, CURLYX, REF, REFF, REFFL, + BRANCH, BACK, STAR, PLUS, CURLY, CURLYX, REF, REFF, REFFL, WHILEM, CURLYM, CURLYN, BRANCHJ, IFTHEN, SUSPEND, CLUMP, 0 }; #endif @@ -369,7 +359,7 @@ typedef struct re_scream_pos_data_s /* .what is a character array with one character for each member of .data * The character describes the function of the corresponding .data item: - * f - start-class data for regstclass optimization + * f - start-class data for regstclass optimization * n - Root of op tree for (?{EVAL}) item * o - Start op for (?{EVAL}) item * p - Pad for (?{EVAL} item @@ -485,9 +475,8 @@ typedef struct _reg_trie_data reg_trie_data; #define DO_TRIE 1 #define TRIE_DEBUG 1 - -#define TRIE_SIMPLE_MAX_BUFF 65536 -#define RE_TRIE_MAXBUFF "\022E_TRIE_MAXBUFF" +#define RE_TRIE_MAXBUF_INIT 65536 +#define RE_TRIE_MAXBUF_NAME "\022E_TRIE_MAXBUF" #define RE_DEBUG_FLAGS "\022E_DEBUG_FLAGS" /* If you change these be sure to update ext/re/re.pm as well */ @@ -529,7 +518,7 @@ typedef struct _reg_trie_data reg_trie_data; #ifdef DEBUGGING -#define GET_RE_DEBUG_FLAGS_DECL SV *re_debug_flags; GET_RE_DEBUG_FLAGS; +#define GET_RE_DEBUG_FLAGS_DECL SV *re_debug_flags = NULL; GET_RE_DEBUG_FLAGS; #else #define GET_RE_DEBUG_FLAGS_DECL #endif