From 3c6f95d1b67124c82147911f846eb1993443a39a Mon Sep 17 00:00:00 2001 From: Rafael Garcia-Suarez Date: Mon, 4 Dec 2006 17:22:02 +0000 Subject: [PATCH] The new regexp compilation function must be added to the engine structure. p4raw-id: //depot/perl@29458 --- ext/re/re.xs | 2 ++ ext/re/re_top.h | 1 + regcomp.h | 1 + regexp.h | 1 + 4 files changed, 5 insertions(+) diff --git a/ext/re/re.xs b/ext/re/re.xs index 88479019e403..284a4e93b3fc 100644 --- a/ext/re/re.xs +++ b/ext/re/re.xs @@ -12,6 +12,7 @@ START_EXTERN_C extern regexp* my_regcomp (pTHX_ char* exp, char* xend, PMOP* pm); +extern regexp* my_re_compile(pTHX_ char *exp, char *xend, PMOP *pm); extern I32 my_regexec (pTHX_ regexp* prog, char* stringarg, char* strend, char* strbeg, I32 minend, SV* screamer, void* data, U32 flags); @@ -32,6 +33,7 @@ END_EXTERN_C const struct regexp_engine my_reg_engine = { my_regcomp, + my_re_compile, my_regexec, my_re_intuit_start, my_re_intuit_string, diff --git a/ext/re/re_top.h b/ext/re/re_top.h index 178c43355b5b..9f12979b6c65 100644 --- a/ext/re/re_top.h +++ b/ext/re/re_top.h @@ -13,6 +13,7 @@ #define Perl_regprop my_regprop #define Perl_re_intuit_start my_re_intuit_start #define Perl_pregcomp my_regcomp +#define Perl_re_compile my_re_compile #define Perl_regfree_internal my_regfree #define Perl_re_intuit_string my_re_intuit_string #define Perl_regdupe_internal my_regdupe diff --git a/regcomp.h b/regcomp.h index 9cf03b44e4c3..e1b17e57bbda 100644 --- a/regcomp.h +++ b/regcomp.h @@ -405,6 +405,7 @@ EXTCONST regexp_engine PL_core_reg_engine; #else /* DOINIT */ EXTCONST regexp_engine PL_core_reg_engine = { Perl_pregcomp, + Perl_re_compile, Perl_regexec_flags, Perl_re_intuit_start, Perl_re_intuit_string, diff --git a/regexp.h b/regexp.h index a0ba5c7d17e1..abc744c38da8 100644 --- a/regexp.h +++ b/regexp.h @@ -110,6 +110,7 @@ typedef struct re_scream_pos_data_s typedef struct regexp_engine { regexp* (*comp) (pTHX_ char* exp, char* xend, PMOP* pm); + regexp* (*compile) (pTHX_ char *exp, char *xend, PMOP *pm); I32 (*exec) (pTHX_ regexp* prog, char* stringarg, char* strend, char* strbeg, I32 minend, SV* screamer, void* data, U32 flags);