summaryrefslogtreecommitdiff
path: root/lib/libc/regex
Commit message (Collapse)AuthorAgeFilesLines
* Diff reduction against other *BSDs: ANSIfy functionXin LI2007-06-114-141/+66
| | | | | | | prototypes. No function changes. Notes: svn path=/head/; revision=170528
* Const'ify and ANSIfy the internal interfaces of regex(3).Xin LI2007-05-251-109/+100
| | | | | | | | This is the final change that makes libc to compile with WERROR on my amd64 crashbox. Notes: svn path=/head/; revision=169982
* Use C comments since we now preprocess these files with CPP.Daniel Eischen2007-04-291-1/+3
| | | | Notes: svn path=/head/; revision=169092
* Test cases for back references.Xin LI2007-03-051-0/+24
| | | | | | | Obtained from: OpenBSD Notes: svn path=/head/; revision=167223
* Only stop evaluation of a back reference if the match length isXin LI2007-03-051-15/+17
| | | | | | | | | zero and the recursion level is too deep. Obtained from: OpenBSD Notes: svn path=/head/; revision=167222
* Avoid infinite recursion on:Xin LI2007-03-051-0/+2
| | | | | | | | | echo "foo foo bar bar bar baz" | sed 's/\([^ ]*\)\( *\1\)*/\1/g' Obtained from: OpenBSD via NetBSD (rev. 1.18) Notes: svn path=/head/; revision=167216
* Per Regents of the University of Calfornia letter, remove advertisingWarner Losh2007-01-099-36/+0
| | | | | | | | | clause. # If I've done so improperly on a file, please let me know. Notes: svn path=/head/; revision=165903
* Add each directory's symbol map file to SYM_MAPS.Daniel Eischen2006-03-131-0/+2
| | | | Notes: svn path=/head/; revision=156613
* Add symbol maps and initial symbol version definitions to libc.Daniel Eischen2006-03-131-0/+8
| | | | | | | Reviewed by: davidxu Notes: svn path=/head/; revision=156608
* Use prototypes for CHIN1() and CHIN().Stefan Farfeleder2005-09-121-6/+2
| | | | Notes: svn path=/head/; revision=150053
* Fix a boundary condition error in slow() and fast() in multibyte locales:Tim J. Robbins2005-08-171-6/+7
| | | | | | | | we must allow the character beginning at "p" to be converted to a wide character for the purposes of EOL processing and word-boundary matching. Notes: svn path=/head/; revision=149180
* Document the fact that word-boundary matching does not workTim J. Robbins2005-08-171-1/+3
| | | | | | | properly in multibyte locales. Notes: svn path=/head/; revision=149179
* Change OUT from -2 to CHAR_MIN-1, making it impossible for it toTim J. Robbins2005-08-131-1/+1
| | | | | | | | | | | | inadvertently match a negative char in the RE being compiled. This fixes compilation of "\376" (as an ERE) and "\376\376" (as a BRE). PR: 84740 MFC after: 1 week Notes: svn path=/head/; revision=149009
* Remove unused file.Xin LI2005-04-251-63/+0
| | | | | | | | | | Confirmed by: tjr [1] [1] PERFORCE CHANGESET 57044: http://perforce.freebsd.org/changeView.cgi?CH=57044 Notes: svn path=/head/; revision=145493
* Expand *n't contractions.Ruslan Ermilov2005-02-131-3/+3
| | | | Notes: svn path=/head/; revision=141846
* Sort sections.Ruslan Ermilov2005-01-201-8/+8
| | | | Notes: svn path=/head/; revision=140505
* Plug memory leak.Diomidis Spinellis2004-12-301-0/+4
| | | | | | | | PR: bin/75656 MFC after: 2 weeks Notes: svn path=/head/; revision=139437
* Fix computation of the 'n' argument to mbrtowc (through XMBRTOWC) to avoidTim J. Robbins2004-11-211-4/+4
| | | | | | | | | | | | | reading past 'stop' in various places when converting multibyte characters. Reading too far caused truncation to not be detected when it should have been, eventually causing regexec() to loop infinitely in with certain combinations of patterns and strings in multibyte locales. PR: 74020 MFC after: 4 weeks Notes: svn path=/head/; revision=137959
* Directly include <runetype.h> for _CurrentRuneLocale, <_ctype.h> doesn'tStefan Farfeleder2004-10-031-0/+1
| | | | | | | include it in all cases. Notes: svn path=/head/; revision=136091
* Fix two problems with REG_ICASE that were introduced with the addition ofTim J. Robbins2004-09-051-13/+10
| | | | | | | | | | | | | | multibyte character support: - In CHadd(), avoid writing past the end of the character set bitmap when the opposite-case counterpart of wide characters with values less than NC have values greater than or equal to NC. - In CHaddtype(), fix a braino that caused alphabetic characters to be added to all character classes! (but only with REG_ICASE) PR: 71367 Notes: svn path=/head/; revision=134802
* Update paths to reg*.c and regex2.h. Add a target to build regex.h.Tim J. Robbins2004-07-191-1/+3
| | | | Notes: svn path=/head/; revision=132390
* Update for removal of cclass.h. Trim some useless targets. Invoke mkhTim J. Robbins2004-07-191-34/+6
| | | | | | | with "sh mkh" so it works if the script is not executable. Notes: svn path=/head/; revision=132389
* Update for recent changes to struct re_guts. Disable printing the contentsTim J. Robbins2004-07-191-38/+5
| | | | | | | of OANYOF sets for the moment. Notes: svn path=/head/; revision=132388
* Remove unused files.Tim J. Robbins2004-07-192-12/+0
| | | | Notes: svn path=/head/; revision=132387
* Remove an entry from the BUGS section: we have multibyte characterTim J. Robbins2004-07-121-2/+0
| | | | | | | support now. Notes: svn path=/head/; revision=132031
* Make regular expression matching aware of multibyte characters. The generalTim J. Robbins2004-07-125-324/+478
| | | | | | | | | | | | | | | | | | | | idea is that we perform multibyte->wide character conversion while parsing and compiling, then convert byte sequences to wide characters when they're needed for comparison and stepping through the string during execution. As with tr(1), the main complication is to efficiently represent sets of characters in bracket expressions. The old bitmap representation is replaced by a bitmap for the first 256 characters combined with a vector of individual wide characters, a vector of character ranges (for [A-Z] etc.), and a vector of character classes (for [[:alpha:]] etc.). One other point of interest is that although the Boyer-Moore algorithm had to be disabled in the general multibyte case, it is still enabled for UTF-8 because of its self-synchronizing nature. This greatly speeds up matching by reducing the number of multibyte conversions that need to be done. Notes: svn path=/head/; revision=132019
* Add a new error code, REG_ILLSEQ, to indicate that a regular expressionTim J. Robbins2004-07-122-1/+5
| | | | | | | contains an illegal multibyte character sequence. Notes: svn path=/head/; revision=132017
* Remove incomplete support for multi-character collating elements. RemoveTim J. Robbins2004-07-112-262/+8
| | | | | | | unused character category calculations. Notes: svn path=/head/; revision=131973
* Document incorrect handling of multibyte characters.Tim J. Robbins2004-07-061-1/+3
| | | | Notes: svn path=/head/; revision=131692
* Mechanically kill hard sentence breaks.Ruslan Ermilov2004-07-022-3/+3
| | | | Notes: svn path=/head/; revision=131504
* mdoc(7): Use the new feature of the .In macro.Ruslan Ermilov2003-09-081-1/+1
| | | | Notes: svn path=/head/; revision=119893
* Eliminate 61 warnings emitted at WARNS=2 (leaving 53 to go).Jacques Vidrine2003-02-163-6/+6
| | | | | | | | | | Only warnings that could be fixed without changing the generated object code and without restructuring the source code have been handled. Reviewed by: /sbin/md5 Notes: svn path=/head/; revision=111010
* mdoc(7) police: "The .Fa argument.".Ruslan Ermilov2002-12-191-2/+6
| | | | Notes: svn path=/head/; revision=108087
* mdoc(7) police: "The .Fn function".Ruslan Ermilov2002-12-181-10/+31
| | | | Notes: svn path=/head/; revision=108037
* libc_r wasn't so tied to libc for 22 months.Ruslan Ermilov2002-11-181-3/+1
| | | | Notes: svn path=/head/; revision=107052
* Add restrict type-qualifier.Mike Barcroft2002-10-024-14/+15
| | | | Notes: svn path=/head/; revision=104358
* Replace various spelling with FALLTHROUGH which is lint()ablePhilippe Charnier2002-08-251-1/+1
| | | | Notes: svn path=/head/; revision=102411
* Fix the style of the SCM ID's.David E. O'Brien2002-03-226-1/+5
| | | | | | | I believe have made all of libc .h's as consistent as possible. Notes: svn path=/head/; revision=92991
* Fix the style of the SCM ID's.David E. O'Brien2002-03-226-12/+16
| | | | | | | I believe have made all of libc .c's as consistent as possible. Notes: svn path=/head/; revision=92986
* Back out last commit (rev 1.2). I thought I caught this file in timeDavid E. O'Brien2002-03-221-1/+1
| | | | | | | when deP'ing. But I guess not. Notes: svn path=/head/; revision=92971
* Remove __P() usage.David E. O'Brien2002-03-214-54/+54
| | | | Notes: svn path=/head/; revision=92905
* Remove 'register' keyword.David E. O'Brien2002-03-218-330/+334
| | | | Notes: svn path=/head/; revision=92889
* Fix a typo I made in revision 1.5.Ruslan Ermilov2002-01-221-1/+1
| | | | | | | Submitted by: trevor Notes: svn path=/head/; revision=89647
* The algorithm that computes the tables used in the BM search algorithm sometimesDaniel C. Sobral2001-11-091-1/+2
| | | | | | | | | | | | | access an array beyond it's length. This only happens in the last iteration of a loop, and the value fetched is not used then, so the bug is a relatively innocent one. Fix this by not fetching any value on the last iteration of said loop. Submitted by: MKI <mki@mozone.net> MFC after: 1 week Notes: svn path=/head/; revision=86208
* mdoc(7) police: Use the new .In macro for #include statements.Ruslan Ermilov2001-10-011-2/+2
| | | | Notes: svn path=/head/; revision=84306
* mdoc(7) police: protect trailing full stops of abbreviationsRuslan Ermilov2001-08-101-1/+1
| | | | | | | with a trailing zero-width space: `e.g.\&'. Notes: svn path=/head/; revision=81449
* mdoc(7) police:Ruslan Ermilov2001-08-071-4/+2
| | | | | | | | | | Avoid using parenthesis enclosure macros (.Pq and .Po/.Pc) with plain text. Not only this slows down the mdoc(7) processing significantly, but it also has an undesired (in this case) effect of disabling hyphenation within the entire enclosed block. Notes: svn path=/head/; revision=81251
* Remove whitespace at EOL.Dima Dorfman2001-07-151-2/+2
| | | | Notes: svn path=/head/; revision=79754
* MAN[1-9] -> MAN.Ruslan Ermilov2001-03-271-2/+2
| | | | Notes: svn path=/head/; revision=74870
* mdoc(7) police: fixed the weird construct.Ruslan Ermilov2001-02-091-3/+1
| | | | Notes: svn path=/head/; revision=72205