summaryrefslogtreecommitdiffstats
path: root/generic/tclParse.c
Commit message (Collapse)AuthorAgeFilesLines
* Get rid of "register" keyword, forbidden in c++20.jan.nijtmans2020-11-261-22/+22
| | | Fix some more warnings, discovered in c20/c++20 mode
* Many more internal master/slave -> parent/child renamingsjan.nijtmans2020-09-011-1/+1
|
* Addendum to [60fab362ce]: "Also don't allow surrogates in \U??????". This ↵jan.nijtmans2020-07-101-0/+2
| | | | change was only meant for builds with TCL_UTF_MAX > 3.
* merge 8.5sebres2020-06-021-19/+16
|\
| * avoid segfault if Tcl_FreeParse, if parse structure remains uninitialized ↵sebres2020-06-021-19/+16
| | | | | | | | (parse.tokenPtr may be used uninitialized, for instance it returns from Tcl_ParseCommand etc with error before TclParseInit gets called)
* | Merge 8.5. More usage of UCHAR() macro.jan.nijtmans2020-05-061-1/+1
|\ \ | |/
* | Re-join utf-6.93.0 and utf-6.93.1 (please disregard comment in previous ↵jan.nijtmans2020-05-031-13/+10
| | | | | | | | | | commit, it was not correct). Perfectionalize TclUtfToUCS4()/TclUCS4Complete() and new (internal) function TclUCS4ToUtf(). They can help preventing bugs regarding splitting/joining surrogates. Used them in a few more places.
* | Merge 8.5jan.nijtmans2020-04-281-2/+2
|\ \ | |/
| * Fix [b6038e5bc8]: mis-parse of surrogate pair escapes. Thanks Don!jan.nijtmans2020-04-281-2/+2
| |\
| | * Proposed fix.dgp2020-04-281-2/+2
| | |
| | * Merge 8.6 (Except encoding-12.6 test-case still to be handled)jan.nijtmans2020-04-241-6/+8
| | |\
| | * \ Merge 8.6jan.nijtmans2020-04-141-1/+1
| | |\ \
| | * \ \ Merge 8.6jan.nijtmans2020-03-181-1/+1
| | |\ \ \
| | * \ \ \ Merge 8.7jan.nijtmans2020-02-131-1/+1
| | |\ \ \ \
| | | * \ \ \ Merge 8.7jan.nijtmans2019-12-031-5/+18
| | | |\ \ \ \
| | | * | | | | Merge 8.7jan.nijtmans2019-11-151-1/+1
| | | | | | | |
| | * | | | | | Merge 8.7jan.nijtmans2019-12-031-5/+18
| | |\ \ \ \ \ \ | | | | |/ / / / | | | |/| | | |
| | | * | | | | Merge 8.6jan.nijtmans2019-12-031-8/+13
| | | |\ \ \ \ \
| | | * \ \ \ \ \ Merge 8.6jan.nijtmans2019-12-021-0/+8
| | | |\ \ \ \ \ \ | | | | |_|/ / / / | | | |/| | | | |
| | * | | | | | | Merge tip-548jan.nijtmans2019-08-151-22/+22
| | |\ \ \ \ \ \ \ | | | |/ / / / / /
| | | * | | | | | Merge 8.7jan.nijtmans2019-08-141-2/+1
| | | |\ \ \ \ \ \
| | | * | | | | | | Eliminate "register" keyword _everywhere_ in Tcl. This keyword is deprecated ↵jan.nijtmans2019-07-171-22/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in C++ (removed in C++17, even), and essentially does nothing with most modern compilers.
| | * | | | | | | | Merge tip-548 (since using the *WChar* functions leads to less type-casts in ↵jan.nijtmans2019-08-031-2/+1
| | |\ \ \ \ \ \ \ \ | | | | |/ / / / / / | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | c++) Als finish implementaton for MacOSX
| | | * | | | | | | Document that the *Backslash parsing functions output maximum 4 bytes, ↵jan.nijtmans2019-08-021-2/+1
| | | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | irrespectable of the TCL_UTF_MAX setting: It could be 4 for the "\Uxxxxxx" construct, but never more. Move <stddef.h> and <locale.h> to tclInt.h, so the can be removed from various other places.
| | * | | | | | | Merge 8.7, and continue implementation. Almost donejan.nijtmans2019-07-101-2/+2
| | |\ \ \ \ \ \ \ | | | |/ / / / / /
| | * | | | | | | Experiment: compile Tcl with C++ compiler. WIPjan.nijtmans2019-07-041-3/+3
| | |/ / / / / /
| | * | | | | | Make all internal small buffer related to Tcl_UtfBackslash() length 4, not ↵jan.nijtmans2019-03-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TCL_UTF_MAX: For TCL_UTF_MAX=6 it was overkill, for TCL_UTF_MAX=3 not enough. Prove that this works by adding a Travis CI build configuration using TCL_UTF_MAX=3
| | * | | | | | Fix [bd94500678e837d7]: SEGFAULT by conversion of unicode (out of BMP) to ↵jan.nijtmans2019-02-271-4/+4
| | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | byte-array
| | | * | | | | | Finish complete fix, all corner-cases correct now. Also spurious UTF-8 ↵jan.nijtmans2019-02-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | testcase failure (as seen on travis) fixed now.
| | | * | | | | | Minor optimizationsjan.nijtmans2019-02-191-3/+3
| | | | | | | | |
| | * | | | | | | More use of (efficient) TclHasIntRep() macro. Also eliminate many (size_t) ↵jan.nijtmans2019-02-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and (unsigned) type-casts, which don't make sense any more.
| | * | | | | | | Merge 8.6jan.nijtmans2019-02-191-1/+1
| | |\ \ \ \ \ \ \ | | | |/ / / / / / | | |/| | | | | |
| | * | | | | | | Merge 8.6. Also reduce tclCharTypeTable[] to 256 entries, as this table is ↵jan.nijtmans2019-01-261-44/+3
| | |\ \ \ \ \ \ \ | | | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | always addressed with unsigned chars now. Eliminate some useless end-of-line spacing that slipped in.
| | * | | | | | | comment typo'sjan.nijtmans2018-11-241-3/+3
| | | | | | | | |
| | * | | | | | | Fix "string tolower" and friends for handling unpaired surrogates correctly. ↵jan.nijtmans2018-06-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also add test-cases for those situations. Various typo's in comments.
| | * | | | | | | Merge 8.6. And add more documentation and test-cases regarding the behavior ↵jan.nijtmans2018-06-181-6/+4
| | |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of Tcl_UniCharToUtf()
| | * \ \ \ \ \ \ \ merge 8.6jan.nijtmans2018-06-171-0/+6
| | |\ \ \ \ \ \ \ \
| | * \ \ \ \ \ \ \ \ merge core-8-6-branchjan.nijtmans2017-08-181-1/+1
| | |\ \ \ \ \ \ \ \ \
| | * \ \ \ \ \ \ \ \ \ merge core-8-6-branchjan.nijtmans2017-05-291-2/+2
| | |\ \ \ \ \ \ \ \ \ \
| | * \ \ \ \ \ \ \ \ \ \ Merge core-8-6-branchjan.nijtmans2017-03-071-1/+1
| | |\ \ \ \ \ \ \ \ \ \ \
| | * \ \ \ \ \ \ \ \ \ \ \ ParseTokens failed to fully respect its numBytes argument.dgp2017-02-271-1/+4
| | |\ \ \ \ \ \ \ \ \ \ \ \
| | * | | | | | | | | | | | | Micro-optimization: Use TclGetStringFromObj in stead of Tcl_GetStringFromObj ↵jan.nijtmans2016-07-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in many places where possible.
| | * | | | | | | | | | | | | Tcl_SetVar -> Tcl_SetVar2 and comparable replacements, eliminating functions ↵jan.nijtmans2016-06-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | which are deprecated.
| | * | | | | | | | | | | | | Re-order loop for fewer gotos.dgp2016-06-271-46/+36
| | | | | | | | | | | | | | |
| | * | | | | | | | | | | | | Stop parsing white space where there cannot be any.dgp2016-06-271-41/+28
| | | | | | | | | | | | | | |
| | * | | | | | | | | | | | | Streamline comment parsing.dgp2016-06-271-34/+33
| | | | | | | | | | | | | | |
* | | | | | | | | | | | | | | Merge 8.5jan.nijtmans2020-04-281-3/+3
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / / / / | | | | | | | | | | | | | | / | |_|_|_|_|_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | |
| * | | | | | | | | | | | | Backport parsing of surrogate-pair change from 8.6 (only for TCL_UTF_MAX=4)jan.nijtmans2020-04-281-3/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adapt test-cases accordingly. Renumber and split testcases, making the numbering more equal to the numbering in 8.6/8.7/9.0
* | | | | | | | | | | | | | Merge from 8.5. Failing tests encoding-12.6, reg-13.3[34] appear to be realdgp2020-04-241-6/+8
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / / / | | | | | | | | | | | | | / | |_|_|_|_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | failures reporting first contact with tests and code.
| * | | | | | | | | | | | Add protections against overflow in Unicode values. Backported from 8.6. ↵jan.nijtmans2020-04-241-64/+88
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also remove some out-of-date comments.