summaryrefslogtreecommitdiffstats
path: root/generic
Commit message (Collapse)AuthorAgeFilesLines
* add missing compile functionality (TclPreserveByteCode/TclReleaseByteCode ↵sebres2017-05-091-0/+19
| | | | back-ported as inline from trunk)
* back-ported branch sebres_trunk_timerate (new command "timerate" for 8.6)sebres2017-05-094-8/+365
|\
| * timerate: don't calculate threshold by too few iterations, because sometimes ↵sebres2017-03-071-0/+7
| | | | | | | | first iteration(s) can be too fast (cached, delayed clean up, etc).
| * merge trunksebres2017-03-0629-366/+473
| |\
| | * Fix for Ticket [71c0878b71] + test casesavl2017-03-051-1/+1
| | |
| | * ParseTokens failed to fully respect its numBytes argument.dgp2017-02-271-1/+4
| | |\
| | * \ [25842c161f] Ensure that finalization of a zlib stream works.dkf2017-02-261-2/+2
| | |\ \
| | * | | More internal use of size_t in stead of int, e.g. for epoch'sjan.nijtmans2017-02-157-14/+14
| | | | |
| | * | | On Windows, Cygwin and 64-bit platforms, no need to handle 'long' in ↵jan.nijtmans2017-02-142-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | tclLink.c, since its size is equal to either 'int' or 'Tcl_WideInt'. This enhances interoperabilty between win64 extensions loaded in cygwin64 using Tcl_LinkVar(), whill still being 100% compatible. init.tcl: unnecessary spacing.
| | * | | TIP #459 feedback from FlightAware: Add package-related pkgIndex.tcl file to ↵jan.nijtmans2017-02-081-0/+18
| | |\ \ \ | | | | | | | | | | | | | | | | | | "package files" output.
| | | * | | FlightAware feedback: "Aside: Any way to find out what the pkgIndex.tcl file ↵package_filesjan.nijtmans2017-02-081-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a package was defined in was, or does that happen at too high a level?" Answer: Even though the name of the pkgIndex file is available earlier, it is very well possible to remember it and store it with the other files. This commit does exactly that.
| | * | | | Shortcut in TclParseNumber(): If obj is a dict or list, don't bother to ↵jan.nijtmans2017-02-082-13/+19
| | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | generate the string representation if we know already beforehand that the parsing will fail. Use TCL_NO_DEPRECATED in stead of KILL_OCTAL for removing the (deprecated un-prefixed) octal support. Adapt test-cases, so they work without octal support as well.
| | * | | Code cleanup (based on feedback from René Zaumseil): Only call ↵jan.nijtmans2017-02-071-102/+79
| | |\ \ \ | | | | | | | | | | | | | | | | | | GetInvalidIntFromObj() when Tcl_GetIntFromObj() fails.
| | * | | | Split tclEmptyStringRep declaration over two lines. Otherwise gcc warning.jan.nijtmans2017-02-031-1/+3
| | | | | |
| | * | | | TIP #459 remaining part of implementation. Makes "package require Tk" give ↵jan.nijtmans2017-02-031-3/+27
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | the right (... at least ... the expected ...) answer.
| | | * \ \ \ Merge trunkjan.nijtmans2017-01-237-51/+82
| | | |\ \ \ \
| | | * \ \ \ \ Merge trunkjan.nijtmans2017-01-061-9/+11
| | | |\ \ \ \ \
| | | * \ \ \ \ \ Merge trunkjan.nijtmans2017-01-052-24/+21
| | | |\ \ \ \ \ \
| | | * \ \ \ \ \ \ Merge trunk. Improve test-case. Bring back "source -nopkg", but only as ↵jan.nijtmans2017-01-051-3/+27
| | | |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | undocumented internal helper for ::tcl::Pkg::source.
| | | * | | | | | | | In stead of "source -nopkg" use a ::tcl::Pkg::source utility function.jan.nijtmans2017-01-041-25/+3
| | | | | | | | | | |
| | | * | | | | | | | Merge trunk. First steps in eliminating "source -nopkg". Some test-cases ↵jan.nijtmans2017-01-0424-171/+471
| | | |\ \ \ \ \ \ \ \ | | | | |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | still fail.
| | * | | | | | | | | In TclGetNumberFromObj() macro (tclExecute.c): Don't fill in type if ↵jan.nijtmans2017-02-0311-32/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TCL_ERROR is returned: The caller doesn't do anything with this. Don't access (non-const) variable tclEmptyStringRep any more, use its value (&tclEmptyString) directly. Only keep it in tclPkg.c, for error checking.
| | * | | | | | | | | Fix [d0f7ba56f0e8f93b7efb5b09ebc30a824bdd577a|d0f7ba56f0]: INST_EQ ↵jan.nijtmans2017-02-011-18/+4
| | |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | first-argument NaN shortcut is too aggressive
| | * \ \ \ \ \ \ \ \ \ Update documentation on recent changes in Tcl_LinkVar.jan.nijtmans2017-01-312-18/+21
| | |\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | Minor code clean-up. No functional changes.
| | * | | | | | | | | | | Some code cleanup: More internal use of size_t, less type casts (because of ↵jan.nijtmans2017-01-273-53/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this). No functional changes.
| | * | | | | | | | | | | If TCL_NO_DEPRECATED is defined, remove the "case" statement, and use much ↵jan.nijtmans2017-01-259-74/+123
| | | |_|_|_|_|_|/ / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | less interp->result. Implementation mostly taken over from "novem". If TCL_NO_DEPRECATED is not defined, nothing changes.
| | * | | | | | | | | | Fix [39f6304c2e90549c209cd11a7920dc9921b9f48e|39f6304c2e] follow-up: Make ↵jan.nijtmans2017-01-201-3/+4
| | |\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tcl_LinkVar toleranto to the empty string as well
| | * \ \ \ \ \ \ \ \ \ \ Introduce new function TclInitThreadAlloc(), symmetric with ↵notifierjan.nijtmans2017-01-133-11/+39
| | |\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TclFinalizeThreadAlloc()
| | * | | | | | | | | | | | Patch from Zoran Vasiljevic, fix for missing proper initialization of the ↵jan.nijtmans2017-01-132-3/+1
| | |/ / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | threaded allocator in some situations.
| | * | | | | | | | | | | Use more Tcl_AppendResult(), in order to prevent the use of a (char *) type ↵jan.nijtmans2017-01-111-28/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | case.
| | * | | | | | | | | | | Merge core-8-6-branch. jan.nijtmans2017-01-113-31/+35
| | |\ \ \ \ \ \ \ \ \ \ \ | | | |_|_|_|_|_|_|/ / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | Do gcc-compiles with the option -Wwrite-strings, so we can detect mis-usage of "const". Make Tcl_AddErrorInfo() and Tcl_AddObjErrorInfo() a macro.
| * | | | | | | | | | | | [win] accomplished winTime module using very fast wide clicks, with ↵sebres2017-02-091-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | denominator scale to/from microseconds, and therefore more precise "timerate" results under windows (using similar mechanisms as by Mac OSX). Especially multi-threaded, because it works without lock opposite to microseconds (that use crictical section, because of the calibration thread). The reason for usage of wide clicks instead microseconds explains following example (shows 20% performance deference): % timerate -calibrate {} % timerate {clock microseconds} 5000 0.297037 µs/# 14465901 # 3366585 #/sec 4296.906 nett-ms % timerate {clock clicks} 5000 0.247797 µs/# 16869084 # 4035554 #/sec 4180.116 nett-ms
| * | | | | | | | | | | | [timerate] bug fix: missing scale conversion by Mac OSX on platform where ↵sebres2017-02-093-15/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | high resolution clicks are not microseconds based; [win] use high resolution timer for the wide clicks and microseconds directly, prevent several forwards/backwards conversions; [win, unix, mac-osx] normalize some functions for common usage in different time units (clicks, micro- and nanoseconds)
| * | | | | | | | | | | | resolve warning: enumeration value ‘TMRT_LAST’ not handled in switch ↵sebres2017-02-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (impossible to handle in switch because of break);
| * | | | | | | | | | | | missing entry of tclInt.h addedsebres2017-01-091-0/+3
| | | | | | | | | | | | |
| * | | | | | | | | | | | New performance measurement routine "timerate" in opposition to "time" the ↵sebres2017-01-092-1/+333
| |/ / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | execution limited by fixed time (in milliseconds) instead of repetition count (more precise results, to prevent very long execution time it is no more necessary to estimate repetition count) Syntax: timerate ?-direct? ?-calibrate? ?-overhead double? command ?time?
| * | | | | | | | | | | Make TclGetLoadedPackagesEx() work with other than the only current ↵jan.nijtmans2017-01-051-9/+11
| | |_|_|_|_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | interpreter (didn't really think about that earlier ... ). Actually slightly more correct.
| * | | | | | | | | | Fix [7c7d3b4481d4e4e86420b54031f4abd1df18d64|7c7d3b4481]: load test ↵jan.nijtmans2017-01-052-24/+21
| | |_|_|_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | failures. There's a difference between "" and NULL as interpreter name.
| * | | | | | | | | TIP [http://www.tcl.tk/cgi-bin/tct/tip/459|459] implementation, but (for ↵jan.nijtmans2017-01-046-18/+182
| |\ \ \ \ \ \ \ \ \ | | | |_|_|_|/ / / / | | |/| | | | | | | | | | | | | | | | | now) without the "source -nopkg" part.
| | * | | | | | | | Bring back stub table in original state.jan.nijtmans2016-12-0820-194/+419
| | |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | Merge trunk
| | * | | | | | | | | Implement the "package forget" part, which was still missing. Handle the ↵jan.nijtmans2016-11-291-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | case that a filename contains spaces.
| | * | | | | | | | | slightly simplerjan.nijtmans2016-11-281-2/+1
| | | | | | | | | | |
| | * | | | | | | | | Complete implementation, tests and documentationjan.nijtmans2016-11-284-13/+58
| | | | | | | | | | |
| | * | | | | | | | | Merge trunk.jan.nijtmans2016-11-2516-74/+100
| | |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Implementation looks complete. Still missing: test-cases and documentation.
| | * \ \ \ \ \ \ \ \ \ merge trunkjan.nijtmans2016-11-241-2/+2
| | |\ \ \ \ \ \ \ \ \ \
| | * | | | | | | | | | | Starting implementing the "package files" command. TIP still to be written.jan.nijtmans2016-11-243-10/+91
| | | | | | | | | | | | |
| * | | | | | | | | | | | TIP [http://www.tcl.tk/cgi-bin/tct/tip/456|456] implementation: Extend the C ↵tip_456jan.nijtmans2017-01-047-18/+125
| |\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | API to Support Passing Options to TCP Server Creation
| | * | | | | | | | | | | | Make the code slightly more pleasing to the eyes.limeboy2017-01-011-2/+10
| | | | | | | | | | | | | |
| | * | | | | | | | | | | | Make options -reuseaddr/-reuseport forbidden without -server, no matter the ↵jan.nijtmans2016-12-201-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | value being true or false. Some additional test-cases.
| | * | | | | | | | | | | | merge forkjan.nijtmans2016-12-201-15/+11
| | |\ \ \ \ \ \ \ \ \ \ \ \