limits.h missing constants

Eric Blake ericblake@comcast.net
Sat Apr 15 16:12:00 GMT 2006


CVS gettext had a compilation warning due to a missing value
for CHARCLASS_NAME_MAX.  Cygwin regex currently only supports
char-class names of up to 6 characters (for example, "[:xdigit:]"),
but POSIX requires a minimum of 14 when locales are free to
define their own char-class names.  While I was at it, I
noticed that several of the limits.h constants that are required
to be the same across all platforms were missing or incorrect.
And we might as well publicize our limit for declaring ELOOP on
symlink chains, rather than keeping it hidden in path.h.

2006-04-15  Eric Blake  <ebb9@byu.net>

	* include/limits.h (_POSIX_*, _POSIX2_*, _XOPEN_*): Define missing
	standard constants, and correct invalid ones.
	(CHARCLASS_NAME_MAX): Define.
	(SYMLOOP_MAX): Define.
	* path.h (MAX_LINK_DEPTH): Define in terms of SYMLOOP_MAX.
	* regex/regcomp.c (p_b_cclass): Limit length of char class name.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cygwin.patch
Type: application/octet-stream
Size: 3963 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin-patches/attachments/20060415/327c3952/attachment.obj>


More information about the Cygwin-patches mailing list