diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2008-02-14 17:33:37 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2008-02-14 17:33:37 +0000 |
commit | df1e965e12cdd48c11057ee6e15346ee2b8b02f5 (patch) | |
tree | ca6644f5fc9e7b0c6d21432cddbe90d7ac8ddd14 /src/include | |
parent | 423abf4d6aef113501c880edd3e41975860f2a31 (diff) | |
download | postgresql-df1e965e12cdd48c11057ee6e15346ee2b8b02f5.tar.gz postgresql-df1e965e12cdd48c11057ee6e15346ee2b8b02f5.zip |
Sync our regex code with upstream changes since last time we did this, which
was Tcl 8.4.8. The main changes are to remove the never-fully-implemented
code for multi-character collating elements, and to const-ify some stuff a
bit more fully. In combination with the recent security patch, this commit
brings us into line with Tcl 8.5.0.
Note that I didn't make any effort to duplicate a lot of cosmetic changes
that they made to bring their copy into line with their own style
guidelines, such as adding braces around single-line IF bodies. Most of
those we either had done already (such as ANSI-fication of function headers)
or there is no point because pgindent would undo the change anyway.
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/regex/regcustom.h | 6 | ||||
-rw-r--r-- | src/include/regex/regguts.h | 18 |
2 files changed, 8 insertions, 16 deletions
diff --git a/src/include/regex/regcustom.h b/src/include/regex/regcustom.h index 8471fb0b1cc..269f926be85 100644 --- a/src/include/regex/regcustom.h +++ b/src/include/regex/regcustom.h @@ -25,7 +25,7 @@ * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $PostgreSQL: pgsql/src/include/regex/regcustom.h,v 1.6 2007/10/06 16:01:51 tgl Exp $ + * $PostgreSQL: pgsql/src/include/regex/regcustom.h,v 1.7 2008/02/14 17:33:37 tgl Exp $ */ /* headers if any */ @@ -47,9 +47,9 @@ /* internal character type and related */ typedef pg_wchar chr; /* the type itself */ typedef unsigned uchr; /* unsigned type that will hold a chr */ -typedef int celt; /* type to hold chr, MCCE number, or NOCELT */ +typedef int celt; /* type to hold chr, or NOCELT */ -#define NOCELT (-1) /* celt value which is not valid chr or MCCE */ +#define NOCELT (-1) /* celt value which is not valid chr */ #define CHR(c) ((unsigned char) (c)) /* turn char literal into chr literal */ #define DIGITVAL(c) ((c)-'0') /* turn chr digit into its value */ #define CHRBITS 32 /* bits in a chr; must not use sizeof */ diff --git a/src/include/regex/regguts.h b/src/include/regex/regguts.h index 327808338a0..52f2157535a 100644 --- a/src/include/regex/regguts.h +++ b/src/include/regex/regguts.h @@ -27,7 +27,7 @@ * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $PostgreSQL: pgsql/src/include/regex/regguts.h,v 1.6 2008/01/03 20:47:55 tgl Exp $ + * $PostgreSQL: pgsql/src/include/regex/regguts.h,v 1.7 2008/02/14 17:33:37 tgl Exp $ */ @@ -181,7 +181,7 @@ union tree #define tcolor colors.ccolor #define tptr ptrs.pptr -/* internal per-color structure for the color machinery */ +/* internal per-color descriptor structure for the color machinery */ struct colordesc { uchr nchrs; /* number of chars of this color */ @@ -228,11 +228,11 @@ struct colormap #endif - /* * Interface definitions for locale-interface functions in locale.c. - * Multi-character collating elements (MCCEs) cause most of the trouble. */ + +/* Representation of a set of characters. */ struct cvec { int nchrs; /* number of chrs */ @@ -241,17 +241,9 @@ struct cvec int nranges; /* number of ranges (chr pairs) */ int rangespace; /* number of chrs possible */ chr *ranges; /* pointer to vector of chr pairs */ - int nmcces; /* number of MCCEs */ - int mccespace; /* number of MCCEs possible */ - int nmccechrs; /* number of chrs used for MCCEs */ - chr *mcces[1]; /* pointers to 0-terminated MCCEs */ - /* and both batches of chrs are on the end */ + /* both batches of chrs are on the end */ }; -/* caution: this value cannot be changed easily */ -#define MAXMCCE 2 /* length of longest MCCE */ - - /* * definitions for NFA internal representation |