Compare commits

..
Author SHA1 Message Date
dgp 6c7e545b80 These edits make all tests outside of socket-14.* pass on OSX Mavericks.
Several socket-14.* tests failing there, and those that pass are very slow
about it.  Firewall or poor networking configuration may be playing a role.
2014-06-03 02:26:07 +00:00
dgp 004361c91d These edits make the tests socket-14.11.[01] stop hanging, but also introduce
a whole raft of test failures.  WIP.
2014-06-02 20:03:14 +00:00
max 744e7bfe51 Improve robustness of the socket tests against systems that support IPv6, but don't resolve localhost to ::1 (and vice versa for IPv4 and 127.0.0.1). 2014-06-02 10:57:38 +00:00
dgp 9b701fdae7 Correct the interest masks in the Tcl_CreateFileHandler() calls in PipeWatchProc(). When we are interested in both readable and writable events of a command pipeline channel, we only want the readable from the read end of the pipe, and the writable from the write end of the pipe. 2014-05-31 02:40:00 +00:00
dgp 1f197f004a Correct the interest masks in the Tcl_CreateFileHandler() calls in
PipeWatchProc().  When we are interested in both readable and writable
events of a command pipeline channel, we only want the readable from
the read end of the pipe, and the writable from the write end of the pipe.
2014-05-31 02:30:53 +00:00
dgp 3dcb02dc07 Refinements of FlushChannel() and its callers. Notably includes removal of the flag BUFFER_READY. 2014-05-29 15:04:52 +00:00
andreask 329c85106b Merged the workarounds and fixes for wrapped executables on various
platforms into the trunk. For details see the merged revision and its
ancestor.
2014-05-28 19:21:35 +00:00
dgp 334ffdfa50 Refinements of FlushChannel() and its callers. Notably includes removal
of the flag BUFFER_READY.
2014-05-28 18:58:51 +00:00
dgp 4b98569f89 Update comment to explain assumptions. 2014-05-28 18:49:02 +00:00
dgp 0fe50b37a2 Further simplifications to FlushChannel(). This makes clear the
BUFFER_READY flag serves no necessary purpose, so it is removed.
2014-05-28 18:24:56 +00:00
dgp c08a9df4d6 Expand the IsBufferFull() macro to check non-NULL bufPtr.. 2014-05-28 17:14:11 +00:00
dgp a60da763ba Increase size of test io-29.34 so that it more portably tests the case where
the OS networking machinery gets backed up and blocks.
Added several TODO comments on potential simplifications.
2014-05-28 16:54:02 +00:00
dgp 88ab76b3b8 Move code that can only matter in the first loop iteration out of the loop. 2014-05-27 13:28:41 +00:00
dgp 5f8f27387d Comment out lines of test io-53.4 that appear to do nothing of any value. 2014-05-24 19:56:37 +00:00
andreask ceae73bd28 Followup on [72c54e1659]. Removed unused variable. 2014-05-23 17:17:35 +00:00
jan.nijtmans a74fb9ea31 eliminate two unused variables. 2014-05-23 14:59:03 +00:00
andreask cc63d97f54 Workarounds and fixes for wrapped executables on various platforms
regarding the handling of wrapped dynamic libraries.

The basic flow of operation is to copy such libraries into a temp
file, hand them to the OS loader for processing, and then to delete
them immediately, to prevent them from being accessible to other
executables. On platforms where that is not possible the library is
left in place and things are arranged to delete it on regular process
exit.

An example of the latter are older revisions of HPUX which report that
the file is busy when trying to delete it. Younger revisions of HPUX
have changed to allow the deletion, but are also buggy, the OS loader
mangles its data structures so that a second library loaded in this
manner fails.

More recently it was found that Linux which is usually ok with
deleting the file and gets everything right shows the same trouble as
modern HPUX when the "docker" containerization system is involved, or
more specifically the AUFS in use there. Deleting the loaded library
file mangles data structures and breaks loading of the following
libraries. For a demonstration which does not involve Tcl at all see
the ticket

     https://github.com/dotcloud/docker/issues/1911

in the docker tracker.

This of course breaks the use of wrapped executables within docker
containers.

This commit introduces the function TclSkipUnlink() which centralizes
the handling of such exceptions to unlinking the library after unload,
and provides code handling the known cases. IOW HPUX is generally
forced to not unlink, and ditto when we detect that the copied library
file resides within an AUFS.

The latter must however be explicitly activated by setting the define
-DTCL_TEMPLOAD_NO_UNLINK during build. We still need proper configure
tests to set it on the relevant platforms (i.e. Linux).

The AUFS detection and handling can be overridden by the environment
variable TCL_TEMPLOAD_NO_UNLINK which can force the behaviour either
way (skip or not). In case the user knows best, or wishes to test if
the problem with AUFS has been fixed.
2014-05-22 17:17:12 +00:00
andy 461b9f3322 Ditto [dict append], [dict incr], and [dict lappend]. Update description of [dict create] to explicitly state that it returns the new dictionary. 2014-05-21 22:00:52 +00:00
andy 47089ed2b3 Ditto [dict unset]. 2014-05-21 21:40:09 +00:00
andy ff04f434c4 Update dict man page to state that [dict set] returns the updated dictionary value. 2014-05-21 21:32:44 +00:00
jan.nijtmans e55620ed06 Fix gcc warning (signed-unsigned compare) 2014-05-21 14:37:57 +00:00
max 052f13167e Fix c&p errors in test descriptions 2014-05-21 10:37:10 +00:00
dgp 6fb8bfc715 Rework the management of the CHANNEL_BLOCKED and CHANNEL_EOF flags, in particular not allowing them to leak between multiple layers of a stacked channel. Much common code refactored into ChanRead(). 2014-05-20 15:17:11 +00:00
dgp f19d7ab302 Rework the management of the CHANNEL_BLOCKED and CHANNEL_EOF flags, in
particular not allowing them to leak between multiple layers of a stacked
channel.  Much common code refactored into ChanRead().
2014-05-20 15:00:50 +00:00
oehhar 3eb4868d33 Fix and improve socket -async [13d3af3ad5] 2014-05-20 14:46:37 +00:00
dgp 090475cc9c Same improvements to the zlib transform operations. 2014-05-19 18:29:26 +00:00
dgp 7f2205461c Simplify ReflectInput(). Also stop intruding on channel internals with
direct clearing of CHANNEL_EOF flag.
2014-05-19 18:08:05 +00:00
jan.nijtmans b1576079b7 [47d66253c9]: "lsearch -sorted -integer" on 64bit system
***POTENTIAL INCOMPATIBILITY***
Changes results of both [lsearch -integer] and [lsort -integer].
2014-05-17 07:01:22 +00:00
dgp 125a9f8a25 Simplify the inputProc of [testchannel transform]. 2014-05-17 03:38:28 +00:00
dgp 5b5dffa386 Simplify the inputProc of [testchannel transform]. 2014-05-17 03:32:27 +00:00
dgp 48b8a3755c Revise results of tests iogt-2.[123] to account for EOF flags no
longer leaking across channel stacks.
2014-05-17 03:05:36 +00:00
dgp 94d4975fa2 Repair broken tests iogt-2.[123].
What happened is that now that EOF flags no loger leak acros channel
stack layers, an EOF in the bottom channel isn't detected in the top one
until the ChanRead call at the top level actually returns 0 bytes.  This
causes one more query/ma
2014-05-17 02:53:34 +00:00
dgp 604007076c Merge flag changes. - Wow, no trouble with [chan push] demonstrated. 2014-05-16 23:17:15 +00:00
ferrieux 3afefe3d81 Let the generated Makefile be emacs-friendly by avoiding spurious empty lines and misplaced tabs. Useful e.g. to just set CFLAGS to debug and save. 2014-05-16 21:33:41 +00:00
dgp 5db8831fb0 Improved use of EOF state to avoid worthless allocations. 2014-05-16 19:11:49 +00:00
dgp 28721acb58 Move the resets and testings of the BLOCKED flag to where they make more sense. 2014-05-16 18:45:37 +00:00
dgp 6a8b9ef2d6 merge trunk 2014-05-16 15:23:26 +00:00
dgp 4715d60689 merge 8.5 2014-05-16 15:10:37 +00:00
dgp 539adc9f7f merge 8.5 2014-05-16 15:05:08 +00:00
dgp 5e1812e37c Fix for failing tests *io-32.11* 2014-05-16 14:59:45 +00:00
dgp 158ab27221 merge 8.5 2014-05-16 14:47:59 +00:00
dgp edb5d20cbf Merge completion of dgp-read-bytes branch. 2014-05-16 14:47:15 +00:00
dgp 47912a0cab Bug fix - accept consumption of the trailing newline in crlf with no
characters produced.  Also delete false assertions.
2014-05-16 14:40:39 +00:00
dgp d32b2d8171 More tests to demo the bug more directly. 2014-05-16 12:56:01 +00:00
dgp 61f362f9a4 Branch to demo bug introduced in the parent commit. 2014-05-15 18:38:22 +00:00
dgp b4ca74a562 Portable test to demo bug otherwise seen only on Windows. 2014-05-15 16:48:43 +00:00
jan.nijtmans 8eb9237e4a Minor bug-fix in [3118489] implementation: NUL in filenames. Filenames starting with <drive>: but without a following slash should be considered volume-relative i.e. the ':' is valid here. 2014-05-15 14:59:03 +00:00
jan.nijtmans c6cd29b3f9 Fix [3118489]: NUL in filenames. (On Windows, protect against invalid use of ':' in filenames as well) 2014-05-15 14:54:45 +00:00
dgp 3bb92ad005 Push the setting and clearing of CHANNEL_BLOCKED flag to the more inner
parts of the channel read machinery.
2014-05-15 11:04:35 +00:00
dgp eccb17258f merge trunk 2014-05-14 15:09:15 +00:00
dgp f57343eb42 merge 8.5 2014-05-14 14:52:42 +00:00
jan.nijtmans e55ee4d6cc Fix 3 test-cases which started failing on Windows 2014-05-14 09:19:26 +00:00
jan.nijtmans 2e71d669fe Fix 3 test-cases which started failing on Windows 2014-05-14 09:11:42 +00:00
dgp 07f07faf4b Refactored much management of the BLOCKED and EOF flags into ChanRead() then
began repairing some of the logic about them. Tests iogt-2.* now fail because
they've been crafted as experiments recording the fine detail of reflected
channel driver calls, and fixing the management of channel flags is changing
that. zlib-8.5 also needed adjustment to reflect that an EOF set must come
with an empty string read when flags are functioning properly.
2014-05-13 18:49:20 +00:00
dgp 63543e9ad0 Rework Tcl_ReadRaw() mostly taking things out of the loop that never repeat. 2014-05-13 18:24:23 +00:00
dgp 73ccc4ba86 Salvaged what was left of value in the dgp-read-bytes-detour branch.
Refactored much management of the BLOCKED and EOF flags into ChanRead()
then began repairing some of the logic about them.
Tests iogt-2.* now fail because they've been crafted as experiments recording
the fine detail of reflected channel driver calls, and fixing the management
of channel flags is changing that.
2014-05-13 16:42:07 +00:00
jan.nijtmans 9265507b2c [958bc05fbe]: Clarify "clock format" using "%R" 2014-05-13 11:25:26 +00:00
jan.nijtmans 7974460313 [958bc05fbe]: Clarify "clock format" using "%R" 2014-05-13 11:23:40 +00:00
dgp 5fedb4d01b Restore the largefileSupport constraint on Darwin, where tests (chan)io-34.21
take an unbearable 90 seconds each to complete.
2014-05-12 21:52:39 +00:00
dgp 29055898b0 Restore the largefileSupport constraint on Darwin, where tests (chan)io-34.21
take an unbearable 90 seconds each to complete.
2014-05-12 21:50:55 +00:00
dgp 7156085860 Have the [chan push] machinery ReadRaw() directly into the argument to be
passed to the read method of the channel transformation command.  Save a copy.
2014-05-12 17:19:16 +00:00
jan.nijtmans 5d76c6e6c0 Possible fix for [47d66253c92197d30bff280b02e0a9e62f07cee2|47d66253c9]: "lsearch -sorted -integer" on 64bit system 2014-05-12 13:09:00 +00:00
dkf a4eef46453 [6d2f249a01] Handle a failure to comprehend half-way through the compilation of a chain of compileable ensembles. 2014-05-11 10:39:14 +00:00
dgp 73f53667ed Repair another "impossible" test and the segfault it reveals. 2014-05-09 17:46:45 +00:00
dgp fbb32b908c Correct namespace bugs in normally skipped tests. Constrain them as "knownBug" rather than "unknownFailure". 2014-05-09 17:35:12 +00:00
dgp 1b7b5e839c Correct namespace bugs in normally skipped tests.
Constrain them as "knownBug" rather than "unknownFailure".
2014-05-09 16:55:34 +00:00
dgp 643d4e096b Added comment explaining the "knownBug" in iogt-6.1 2014-05-09 16:39:08 +00:00
dgp 8b4cb6f5d9 Added comment explaining the "knownBug" in iogt-6.1 2014-05-09 16:38:23 +00:00
dgp 54a7fb1431 Tests (chan)io-34.21 are constrained for largefileSupport, and that's disabled by default, which means never tested, which means the ridiculous bugs in them are never found and fixed.
Fixed the bugs, changed the default. Large File Suppport (4GB) is commonplace now. Let those without it suffer a few failing tests reporting that fact to them.
2014-05-09 16:33:58 +00:00
dgp d7461d07ad Tests (chan)io-34.21 are constrained for largefileSupport, and that's
disabled by default, which means never tested, which means the ridiculous
bugs in them are never found and fixed.

Fixed the bugs, changed the default.  Large File Suppport (4GB) is
commonplace now.  Let those without it suffer a few failing tests reporting
that fact to them.
2014-05-09 16:31:06 +00:00
dgp f4401162e8 Test iocmd-32.1 is not "impossible" but after writing it properly it does segfault trying to use a deleted interp. Fixed. 2014-05-09 13:33:27 +00:00
dgp a84b51c1b4 Test iocmd-32.1 is not "impossible" but after writing it properly it
does segfault trying to use a deleted interp.  Fixed.
2014-05-09 13:19:30 +00:00
jan.nijtmans e538095963 Fix [3389978]: Support for paths longer than MAX_PATH on Windows. 2014-05-09 12:03:58 +00:00
jan.nijtmans 99a5afc6e0 Make Cygwin's "configure" work from another directory than /unix. (Not everything works this way!) 2014-05-09 10:10:20 +00:00
jan.nijtmans 61c463f55f Make Cygwin's "configure" work from another directory than /unix. (Not everything works this way!) 2014-05-09 10:08:56 +00:00
dgp 2ff193dc57 Merge the reforms of dgp-trunk-read branch into trunk. (port of dgp-read-bytes)
Large overhaul of I/O read operations
	- Protects integer overflow of buffers, reusing append machinery
	- Forces -buffersize changes to take place when commanded
	- Uses assertions to simplify code in "can't happen" situations
	- Eliminated duplication of -translation processing
		- Fixes bugs io-35.18b and io-35.20
2014-05-08 17:38:09 +00:00
dgp 7d850a310d Merge the reforms of dgp-read-bytes branch into 8.5+ releases.
Large overhaul of I/O read operations
	- Protects integer overflow of buffers, reusing append machinery
	- Forces -buffersize changes to take place when commanded
	- Uses assertions to simplify code in "can't happen" situations
	- Eliminated duplication of -translation processing
		- Fixes bugs io-35.18b and io-35.20
2014-05-08 17:30:32 +00:00
dgp 95eec569fd merge trunk 2014-05-08 16:21:45 +00:00
dgp fa53de3d90 silence compiler warning 2014-05-08 16:21:12 +00:00
dgp f1ace09e64 merge trunk 2014-05-08 16:12:35 +00:00
dgp f54edc88cf Fix the panic in iogt-2.5.
Back in 2011, Bugs 3384654 and 3393276 first noticed troubles with
ChannelBuffer sharing, but the magnitude of the problem wasn't truly
grasped.  A fix was applied that turned out to be more of a band-aid
workaround.  Now that the real fix is in place, the band-aid is actually
preventing it working properly in thie case.  Rip it off!
2014-05-08 16:03:50 +00:00
dgp 04fbce15ca Revert the iogt-2.5 fix. For now one panic is better than widespread
memory leaks.
2014-05-08 13:01:47 +00:00
jan.nijtmans e083b8e9bb More efficient/robust implementation of function TclNativeCreateNativeRep().
- No more intermediate results in a Tcl_DString, just allocate space directly. 
- Let MultiByteToWideChar() do all the difficult work, inclusive checking for invalid byte sequences.
- Handled extended win32 paths, inclusive UNC paths.
Implementation for a great deal taken over from fossil.
2014-05-08 12:46:47 +00:00
dgp 65baa666b5 merge trunk 2014-05-08 03:28:56 +00:00
dgp 22c5cd91eb Merge 8.5. 2014-05-08 03:13:01 +00:00
dgp 48ecb1a2ee Merge 8.5. 2014-05-08 02:55:47 +00:00
dgp 75e37a235a Stop leak in iocmd-21.22. 2014-05-08 02:38:52 +00:00
dkf e29e8eee24 Corrected description of where tcl_platform(user) comes from on Unix. 2014-05-07 22:22:02 +00:00
dkf 84a26717ef Corrected description of where tcl_platform(user) comes from on Unix. 2014-05-07 22:19:30 +00:00
dgp 643b20e2b2 Stop leaks of cloned Tcl_ChannelTypes. 2014-05-07 03:30:55 +00:00
dgp 68f4187dd1 Stop leak in io-53.5. 2014-05-07 02:28:56 +00:00
dgp 01ccb9ccaa Stop leak in io-33.7. 2014-05-06 23:51:32 +00:00
dgp 3fd76e6ba7 Stop memory leak in io-29.34 2014-05-06 23:23:43 +00:00
dgp 7218e5967c Stop memory leak in io-29.27. 2014-05-06 22:34:45 +00:00
dgp cc1b3e8ddc Symptom relief. Make test stop panicking.
This is not the proper final answer.  ChannelBuffer management in
FlushChannel is simply not robustly correct yet.
2014-05-06 17:33:55 +00:00
dgp c4669a8b0c Add Panic call to better identify where iogt-2.5 goes wrong. 2014-05-06 15:23:43 +00:00
dgp a0d540327f Merge 8.5. New test iogt-2.5 panics. 2014-05-06 14:43:19 +00:00
dgp 2d6278c829 merge 8.5 2014-05-06 14:10:57 +00:00
dgp ba89a15d53 Have to manage the lifetime of the self handle in testchannel transform. 2014-05-06 13:56:29 +00:00
jan.nijtmans d8b36a0216 Start working on [3389978]. Appears to work, but some clean-up needed. 2014-05-06 11:17:28 +00:00
dgp b8c001575a Segfaulting test (backport of iortrans-5.11). 2014-05-05 17:18:51 +00:00
dgp 681e50da88 Merge GotFlag() backport from 8.5. Conflicts galore! 2014-05-05 13:23:20 +00:00
jan.nijtmans b04c31eecb merge-mark 2014-05-05 09:18:42 +00:00
jan.nijtmans acdf0e593a Backport "GotFlag" macro from Tcl 8.6. Makes code more readable. No change in functionality. 2014-05-05 09:17:46 +00:00
dgp 3c51a58c1e merge trunk 2014-05-02 15:58:03 +00:00
dgp acce1f902b merge 8.5 2014-05-02 15:41:45 +00:00
jan.nijtmans 9888275261 Re-apply [3010352], bringing back the symbol exports of shared libraries as it was in 8.6.0/8.6.1. 2014-05-02 15:35:14 +00:00
dgp 01f9f84db5 Bring back self restacking support. Channel tests all passing now. 2014-05-02 15:29:41 +00:00
dgp 9bed70dea4 Fixup restacking tests to expect the right results. 2014-05-02 15:19:57 +00:00
dgp 3ab2f65ec6 Backport channel self restacking support. (Test iogt-2.4). 2014-05-02 15:06:57 +00:00
dgp 322ea4d71d Add some comments about possible other self-restacking troubles. 2014-05-02 14:45:03 +00:00
dgp fd83709b45 Fully restore topChan resetting to accommodate self-restacking channels. 2014-05-02 13:02:48 +00:00
dgp c09e2ded08 Re-enable buffer recycling. 2014-05-02 12:39:14 +00:00
dgp 8e5e88f4db Stop the segfault in iogt-2.4. First by changing the UpdateInterest()
call that triggers it.  "downChanPtr" may no longer be the right argument
at that point.  Second, after ending the segfault, the test became an 
infinite loop (nested unstacking?!  whoa.), so revised the test to one
that terminates (and passes).  Left behind a comment that the recursive
unstacking case may require more examination.
2014-05-01 16:33:39 +00:00
dgp d3c1978e07 merge trunk 2014-05-01 15:13:46 +00:00
dgp fb36ca1b18 merge trunk 2014-05-01 15:00:40 +00:00
dgp 27ce96cd71 merge 8.5 2014-05-01 14:52:13 +00:00
dgp abd9269a04 We must Preserve channels if we're going to use TclChanCaughtErrorBypass() to get error information after channel routines are called (and have possibly called for the channel to go away). 2014-05-01 14:36:34 +00:00
dgp aacc275d30 We must Preserve channels if we're going to use TclChanCaughtErrorBypass()
to get error information after channel routines are called (and have possibly
called for the channel to go away).
2014-05-01 14:18:35 +00:00
dkf 0b7940e00e make doubly sure that things which should be unshared stay unshared 2014-05-01 09:11:09 +00:00
jan.nijtmans 183a28c109 merge-mark 2014-05-01 07:44:34 +00:00
jan.nijtmans c4f8c1063c Fix more corner-cases like [0e92c404f19ede5b2eb06e6db27647d3138cc56|0e92c404f1]: The only place where a type of &tclByteArrayType can be trusted is when determining its length, because the character length of a (UTF-8) string is always equal to the byte length of the byte array. 2014-05-01 07:38:27 +00:00
dgp 438b6b5009 Merge in the fixes for improper ChannelBuffer sharing via recycling. 2014-05-01 01:26:04 +00:00
dgp a95f198d2e missing constraint 2014-05-01 01:15:42 +00:00
jan.nijtmans 87d82b22e7 Better (safer) fix for [0e92c404f1] 2014-04-30 21:59:00 +00:00
dkf e0c1d41f5e [82e7f67325] Fix an evil refcount problem in compiled [string replace]. 2014-04-30 21:24:39 +00:00
dgp 1a41595e06 Stop the segfaults in [close] during [gets] tests.
Not sure this is the right behavior, but it's better than crashing.
2014-04-30 19:54:51 +00:00
dgp 2d4cef6d56 Panic message to pinpoint the cause of iocmd-21.23 segfault. 2014-04-30 19:33:21 +00:00
dgp f8ff5f9f13 Another segfault demo test, this one with [close] during [gets]. 2014-04-30 19:12:37 +00:00
dgp 210aa9605a Make sure no shared ChannelBuffers get recycled. 2014-04-29 17:40:15 +00:00
dgp 19292d74bf merge trunk 2014-04-29 17:04:33 +00:00
dgp ab5b2feda0 Fix bug exposed when buffer recycling is disabled. 2014-04-29 16:47:48 +00:00
dgp 35a41cd0d6 Fix bug exposed when buffer recycling is disabled. 2014-04-29 16:36:39 +00:00
dgp 9873314d0d Revise the logic for setting TCL_ENCODING_END in the outputEncodingFlags
so it does not rely on buffer recycling.
2014-04-29 15:54:03 +00:00
ferrieux f3f494358f Clarify fcopy manpage regarding its bidirectional uses. [1350564] 2014-04-28 20:28:10 +00:00
dgp 0c9e9be9e5 Disable buffer recycling to expose bugs for fixing. 2014-04-25 20:12:48 +00:00
dgp e024894c53 Disable buffer recycling, which creates mysteries. 2014-04-25 19:51:36 +00:00
dgp e3220aa631 Test iortrans-4.8.2 demos an infinite loop. Possible trouble with
pushback buffers.
2014-04-25 17:34:11 +00:00
dgp 47d1451282 merge trunk 2014-04-24 18:21:49 +00:00
dgp 5f636c9b81 merge 8.5 2014-04-24 18:14:36 +00:00
dgp 45659eebd2 Make sure the ReflectedChannel struct is freed in the handler thread,
where it was allocated.  This constraint allows the struct to safely
hold Tcl_Obj values, which has been convenient for storing callback commands.
2014-04-24 15:27:58 +00:00
dgp 3ec273770b [3493120] Plug memory leak in thread exit. 2014-04-24 04:34:01 +00:00
dgp c69e73e183 [3493120] Plug memory leak in thread exit. 2014-04-23 18:25:27 +00:00
sebres fa12c3782d *nix segfault cleared: we should reset a thread key after freeing of alloc cache (in tclUnixThrd.c) 2014-04-23 09:18:20 +00:00
dgp af15fe284a Merge the [testchannel transform] fixes. 2014-04-22 15:09:06 +00:00
dgp d7f092d1cf Add refcounting and preservation to [testchannel transform] to stop segfault
in test iogt-2.4.
2014-04-22 14:57:44 +00:00
sebres fea67060de Memory leak after thread exit, fixed (alloc cache released by exit), belong to ticket [3493120]
Moved over to branch bug-3493120.  This is not ready
for the core-8-5-branch.  Segfaults all over the place
in a thread-enabled build on a CentOS system.
2014-04-22 13:25:41 +00:00
dgp ea20dfbaae merge trunk 2014-04-21 20:02:39 +00:00
dgp da22d54b77 merge 8.5 2014-04-21 20:01:49 +00:00
dgp e4bf3a0afd Merge refcounting machinery for ChannelBuffer. 2014-04-21 19:04:08 +00:00
dgp 473f2fb8dd Added a refcounting mechanism to ChannelBuffers. Other edits to
stop segfaults in tests iocmd-21.2[12].
2014-04-21 18:55:41 +00:00
dgp 29d26aa2c1 Another test exposing another segfault. 2014-04-17 19:58:41 +00:00
dgp fecf0d5e64 merge 8.5 2014-04-17 19:17:33 +00:00
dgp b70fbe851c merge trunk 2014-04-17 19:11:47 +00:00
dgp 747725c1fc Merge reflected channel improvements. 2014-04-17 18:10:02 +00:00
dgp f60122dc91 Reflected channels. Keep a set of method names cached so we don't create
new each operation, and we can benefit from any lookup info cached in intreps.
2014-04-17 17:55:59 +00:00
dgp dfb3ea8358 Simplify reflected channels.
Instead of having two modes of Close operations and the need to choose
between them with a special value of the methods field, when the initialize
pass fails for some reason, simply do not create the channel so there's
nothing that needs closing.  Then the methods field no longer holds anything
used, so eliminate it.  All the methods checking is done by [chan create].
2014-04-17 16:05:06 +00:00
jan.nijtmans da5348ec0f Remove all win95-specific test-cases, since Windows 95 is not supported any more. 2014-04-17 14:01:14 +00:00
dgp 322bd5dd1f merge 8.5 2014-04-16 20:11:05 +00:00
dgp 9f8bc994a9 merge trunk 2014-04-16 17:35:08 +00:00
dgp a7101c49af [d19a30db57] More testing. 2014-04-16 15:40:09 +00:00
dgp ea3c325aa5 Repair new test so all parts will be effective. 2014-04-16 15:37:26 +00:00
sebres 9915e77374 Test for [d19a30db57] extended 2014-04-16 15:30:37 +00:00
dgp 9db9d4ff84 [d19a30db57] Fixed segfault in [clock] internals. Includes test. 2014-04-16 15:30:23 +00:00
dgp 335591836a Test for [d19a30db57]. 2014-04-16 15:17:14 +00:00
jan.nijtmans e9e54156fa Fix compiler warnings in win32/cygwin build 2014-04-16 14:12:19 +00:00
jan.nijtmans f91d3dd584 merge fork: Segmentation fault using some functions of tcl::clock, fixed, belong to ticket [d19a30db57] 2014-04-16 14:07:10 +00:00
jan.nijtmans 88d357a99c Fix compiler warnings in win32/cygwin build. 2014-04-16 14:04:02 +00:00
sebres c97d829e0c Segmentation fault using some functions of tcl::clock, fixed, belong to ticket [d19a30db57] 2014-04-16 13:18:56 +00:00
jan.nijtmans be0324597a Remove unused variable, don't use deprecated function, some formatting. 2014-04-16 11:20:54 +00:00
jan.nijtmans fcca5df8d6 Upgrade from Winsock 1.1 to Winsock 2.2, which is always available on Win2000+. See: [http://msdn.microsoft.com/en-us/library/windows/desktop/ms742213%28v=vs.85%29.aspx] for details.
Move winsock initialization to TclpInitPlatform(void), so we can be sure everywhere that we have an initialized winsock2. 
Stub entries for TclWinGetServByName/TclWinGetSockOpt/TclWinSetSockOpt are no longer necessary (will be removed in 9.0, but are kept in 8.x)
2014-04-16 09:44:12 +00:00
jan.nijtmans 7284ed46fb Upgrade from Winsock 1.1 to Winsock 2.2, which is always available on Win2000+. See: [http://msdn.microsoft.com/en-us/library/windows/desktop/ms742213%28v=vs.85%29.aspx] for details.
Move winsock initialization to TclpInitPlatform(void), so we can be sure everywhere that we have an initialized winsock2. 
Stub entries for TclWinGetServByName/TclWinGetSockOpt/TclWinSetSockOpt are no longer necessary (will be removed in 9.0, but are kept in 8.x)
2014-04-16 09:28:54 +00:00
dgp 5b2fb22633 Purge the (now unused) argc and argv fields. 2014-04-15 18:36:01 +00:00
dgp 16c608178f Purge (now unused) argc and argv fields. 2014-04-15 17:45:26 +00:00
dgp 924739ac23 [88aef05cda] Stop reentrancy segfault in reflected channels by managing
callbacks as (copies of) lists, not shared Tcl_Obj arrays. Still could use
cleanup and improvements.
2014-04-15 17:25:37 +00:00
dgp fdcd434e12 [88aef05cda] Stop reentrancy segfault in reflected channels by managing
callbacks as (copies of) lists, not shared Tcl_Obj arrays.  Still could
use cleanup and improvements.
2014-04-15 16:09:28 +00:00
jan.nijtmans 5d9aef7a4e Test-cases which pick up the completion of bug-fix [e663138a06d98e48b5fbb42cc015cf1698f486cd|e663138a06]. Thanks, Don! 2014-04-15 10:41:44 +00:00
dgp b497ad4e53 [e663138a06] Fix the new INST_NUM_TYPE instruction so that the boundary
cases of [string is] on integral values are computed right.  Code is now
correct, though still suffers from a large amount of ugly.
2014-04-14 18:45:04 +00:00
jan.nijtmans a95a8e4a9c Fix [3118489]: NUL in filenames, now fixed for both Windows and UNIX.
For consistancy, any NUL character in a filename prevents the native filesystem to generate a native file representation for it. Other filesystems than the native one may still accept it, but it's not recommended.
2014-04-11 09:55:15 +00:00
jan.nijtmans d10806530d Fix [3118489] for Windows only: NUL in filenames. This allows various characters to be used in win32 filenames which are normally invalid, as described here: [http://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-specialchars]. The Cygwin shell can handle those same filenames as well. In other shells (cmd.exe/mSys) or on the Windows desktop the filenames will look strange, but that's all. 2014-04-11 08:23:44 +00:00
jan.nijtmans c867dfd034 [792641f95b]: Normalized win32 paths should never contain backslash. 2014-04-10 13:59:13 +00:00
jan.nijtmans 601ecb35c8 [792641f95b]: Normalized win32 paths should never contain backslash. 2014-04-10 13:32:14 +00:00
jan.nijtmans 87fc10a8da Fix bug [e663138a06]: Test failures in "string is" 2014-04-10 07:57:18 +00:00
max 32d3c7b2a1 * Give clearer names to some of the state flags and sync them with Windows where it makes sense.
*  Rework WaitForConnect once more to always report ENOTCONN on I/O operations on failed async sockets.
  *  Fix synchronous connections to a server that only listens on IPv6 (or whatever comes later in the list returned by getaddrinfo(), socket-15.*)
  *  Fix spurious writable event on async sockets (socket-14.15).
2014-04-08 18:00:35 +00:00
oehhar 42143bf4e9 Beautify check for async connect reentry 2014-04-08 15:15:31 +00:00
jan.nijtmans a7350e3489 Provide full Tcl patchlevel to tcl.pc and move private libs to "Libs.private".
Record the fact that Tcl 8.6 requires Zlib 1.2.3 as a minimum. 
Supply both the shared library and the stub library to "Libs": Only one of them will actually be linked in, depending on whether -DUSE_TCL_STUBS is defined or not.
2014-04-08 15:02:27 +00:00
jan.nijtmans 8a33c02a15 Provide full Tcl patchlevel to tcl.pc and move private libs to "Libs.private". 2014-04-08 14:52:04 +00:00
oehhar 1abf8e4ad8 Changed error report logic, that an async connect error is only reported by 'fconfigure -error' and not by a possible last command terminating the async connect. The terminating command always returns "socket is not connected" on connect error. In addition, some flags were renamed: TCP_ASYNC_SOCKET to TCP_NONBLOCKING and also the new state flags. 2014-04-08 14:40:20 +00:00
max e92b34ab12 Rename error to connectError in struct TcpState. 2014-04-07 15:18:09 +00:00
max 59e40535f5 Rename CreateClientSocket to TcpConnect 2014-04-07 15:11:32 +00:00
oehhar 3d4fa09102 Renamed function CreateClientSocket to TcpConnect and variable error to connectError 2014-04-07 15:08:31 +00:00
jan.nijtmans 5e96fb5ee1 Merge-mark: Those two test-cases will arrive in trunk as soon as branch [http://core.tcl.tk/tcl/timeline?r=bug-13d3af3ad5|bug-13d3af3ad5] is merged. 2014-04-07 14:32:59 +00:00
oehhar d0e001a334 Return async connect error by first following read or write operation. 2014-04-07 12:34:18 +00:00
oehhar 8bf9869083 Moved tests socket-8.2 and socket-8.3 to socket-14.3 and socket-14.4 and made them robust against connect failures 2014-04-04 16:44:33 +00:00
oehhar 269a88ebaf Avoid multiple returns of connect errors 2014-04-04 16:27:39 +00:00
max 9757dd7eba Move tests 8.2 and 8.3 out of the IPv4/IPv6 loop to 14.13 and 14.14. 2014-04-04 15:56:48 +00:00
max 9365e418f3 Fix/improve tests. 2014-04-04 15:45:34 +00:00
max ebb15ded42 Add tests for bugs [336441ed59] and [581937ab1e] from core-8-5-branch. 2014-04-04 11:53:33 +00:00
oehhar 2f51a2e128 Fix for Bug [97069ea11a]: Set return message in close if a flush error is reported (which may be an error from a background flush) 2014-04-04 11:14:17 +00:00
max a5f9898e34 * Rework WaitForConnect() to fix synchronous completion of asynchronous connections.
*  Let TcpInputProc() and TcpOutputProc() fail before calling any I/O syscalls when an asynchronous connection has failed.
  *  Adjust the tests accordingly.
2014-04-04 10:02:47 +00:00
oehhar e2c7cfecc1 Fix for Bug [97069ea11a]: Set return message in close if a flush error is reported (which may be an error from a background flush) 2014-04-04 08:55:16 +00:00
max c736ad3e88 Make the naming of TcpState variables consistent 2014-04-04 08:51:58 +00:00
max 3d1b611f4c Revert the tests for bug#97069ea11a from socket.test, because it is hard to test with the socket command in a platform-independent way. As the bug is in tclIOChan.c and should be tested there with a dummy channel driver that can reliably reproduce the situation that suppresses the error message. 2014-04-04 08:29:51 +00:00
oehhar 6cfae752ff Fix bug [581937ab1e]: fire readable event on async socket connect failure 2014-04-02 13:33:29 +00:00
oehhar 253440c377 Fix bug [581937ab1e]: fire readable event on async socket connect failure 2014-04-02 12:43:29 +00:00
oehhar 61e5f733e5 Fix bug [336441ed59]: Win socket stall on quick termination of async socket connect 2014-04-02 10:02:18 +00:00
oehhar 77a33cf2ff Test to demonstrate bug [336441ed59]. Depends on timing and will not always fire but is better than nothing. Reliable for me. 2014-04-02 09:54:27 +00:00
oehhar 3756d27b06 Set all variables written by the notifier thread as volatile. 2014-04-02 08:35:02 +00:00
oehhar 551a220b1f Marked all communication variables which are set by notifier thread with "volatile". 2014-04-02 08:22:12 +00:00
max a529e32955 Centralize and clarify the user of 169.254.0.0 as a non-reachable address. 2014-04-01 14:00:04 +00:00
oehhar 2e6d32b5a8 Imported fix for bug [97069ea11a] from branch bug-97069ea11a: empty error message on stalled background flush after async socket connect fail 2014-04-01 13:06:22 +00:00
max 9bc964b5bb Add test cases for Bug [97069ea11a]. 2014-04-01 12:17:36 +00:00
oehhar daa585d846 Removed thread debugging printf messages 2014-04-01 12:16:39 +00:00
oehhar bc5c5261e5 Fix test failure socket-2.9: "1 {not owner}" instead of "1 {couldn't open socket address already in use}" by only setting returned error message if not jet set. 2014-04-01 11:31:49 +00:00
oehhar a2e8fa6c52 Set return message in close if a flush error is reported (which may be an error from a background flush). Ticket [97069ea11a] 2014-04-01 09:52:34 +00:00
jan.nijtmans 4fa18eaa12 Add missing @TCL_LIB_FLAG@ to tcl.pc.in (derived from ticket [5bcb5026ad]) 2014-03-31 18:44:55 +00:00
jan.nijtmans f9c41b4bcc Cherry-pick [c54059aaad] from trunk: Added support for reporting TEA-like info via pkg-config.
Add missing @TCL_LIB_FLAG@ (derived from ticket [5bcb5026ad])
2014-03-31 15:23:30 +00:00
dgp 8655555eb4 Merge minimal fix for iocmd-23.11.
Note that top channel regeneration is removed, so that Preserve/Release
call pairs are sure to operate on the same pointers.  Other bug fixes
may need to change that.
2014-03-28 20:29:03 +00:00
dgp 2a5a3323cb Minimal patch to fix iocmd-23.11. Might not be the best fix, but is *a* fix. 2014-03-27 21:35:57 +00:00
dgp 2d315899eb Test iocmd-23.11 demos another segfault. 2014-03-27 19:15:19 +00:00
dgp 6ac66b5476 Test iocmd-23.11 demos another segfault. 2014-03-27 19:14:01 +00:00
dgp 2b096d89a3 Test iogt-2.4 is another segfault demo for [721ec69271]. 2014-03-27 16:47:33 +00:00
dgp 4252a9c191 Test iogt-2.4 is another segfault demo for [721ec69271]. 2014-03-27 16:44:04 +00:00
dgp 52fe1455a7 New test iortrans-4.8.1 exposes segfault bug [721ec69271]. 2014-03-27 16:27:09 +00:00
jan.nijtmans 4c46afc6f5 Implement RFE [b42b208ba4]: file attributes -readonly (and -archive, -hidden, -system) on Cygwin. 2014-03-26 14:38:07 +00:00
jan.nijtmans 1673f7d67a Only write back file attributes if any of them really changed. 2014-03-26 14:34:56 +00:00
jan.nijtmans c6eeda71be Implementation of [b42b208ba4]: file attributes -readonly on Cygwin. For completeness, implemented -archive, -hidden and -system as well. 2014-03-26 10:37:57 +00:00
ferrieux 15df01c93d Add test io-53.12 to verify proper unbuffered sync-fcopy [Bug #3096275] 2014-03-24 21:42:56 +00:00
oehhar 1408478f56 Fire also readable event on final async connect failure. Armor WaitForSocketEvent by access signal against notifier thread access. 2014-03-24 11:03:04 +00:00
dgp 021c7456ff Merge the checkins of the dgp-read-bytes branch onto the trunk, up to
and including checkin a1e82fb63e .  Do not merge checkin bae1c688f2
which starts to take the dgp-read-bytes branch into directions apparently
unfriendly to stacked channels, which tests for [chan push] on the trunk
help us to detect.
2014-03-23 20:59:28 +00:00
oehhar 6eb3a60712 Be sure tsd pointer to the info structure is invalidated before memory free 2014-03-23 11:42:35 +00:00
oehhar 8837ed8935 Be shure tsd pointer to the info structure is invalidated before memory free 2014-03-23 11:31:59 +00:00
oehhar e5b53212a8 Bug [336441ed59]: Buffer infoPtr between socket creation and insertion into info structure in thread local memory. Backported fix from commit [65b320b464] from branch "bug-[13d3af3ad5]". 2014-03-22 16:14:26 +00:00
dgp 97ef11cb6e Added comments raising questions about possible updates to channel
drivers on Windows.
2014-03-21 17:11:32 +00:00
dgp 71680aec07 missing declaration 2014-03-21 14:45:00 +00:00
dgp 4d2bb24e84 Correct namespace bugs in normally skipped tests.
Constrain them as "knownBug" rather than "unknownFailure".
2014-03-21 14:07:40 +00:00
dgp 56214ea49a Added comment explaining the "knownBug" 2014-03-21 13:40:58 +00:00
dgp 88cddf0b80 Convert "impossible" test to a "knownBug" test. Exposes a segfault! 2014-03-21 13:20:06 +00:00
dgp 183b5fd257 Restore default suppression of large file test. 2014-03-21 12:58:29 +00:00
dgp ff8fef8c8d Fixup ChanRead() header. Note (dstSize > 0) precondition. 2014-03-21 12:57:58 +00:00
dgp 2a7cf86d30 io-34.21 - fix bugs in normally skipped test.
io-35.18b - knownBug is not buggy on this branch.
2014-03-21 12:56:46 +00:00
dgp 0530d01b63 Documentation header for ChanRead() 2014-03-21 02:36:47 +00:00
dgp e9bb48106a Both callers of ChanRead() have simlar epilogs. Shift that into ChanRead
and refactor.
2014-03-20 23:21:48 +00:00
dgp c6fabad70e Don't allow buffer recycling to prevent or delay buffersize shrinkage. 2014-03-20 20:18:20 +00:00
dgp 88abf586de Stop routine clearing of CHANNEL_EOF. Only clear when there's a reason
(seek, eofchar change, ungets).  Otherwise, once you hit EOF you stay there.
2014-03-20 19:25:11 +00:00
dgp 16dcfe4b5f Use assertions about the pushback buffers to simplify their handling.
Mark several things left TODO.  Some tidying.
2014-03-20 16:31:11 +00:00
dgp bce5a2ae75 merge 8.5 2014-03-20 14:45:05 +00:00
jan.nijtmans cb2a1e4c13 Fix [2f7cbd01c3]: tcl8.6.1 fails to build on FreeBSD 10.0 2014-03-20 10:10:04 +00:00
jan.nijtmans a62fd8466e Fix [2f7cbd01c3]: tcl8.6.1 fails to build on FreeBSD 10.0 2014-03-20 10:06:25 +00:00
jan.nijtmans c7a7120587 Proposed fix for [2f7cbd01c3]. 2014-03-20 09:22:29 +00:00
dgp 02d7d5af4c Let TranslateInputEOL handle the "\r$eofChar" sequence in CRLF mode. 2014-03-19 21:43:31 +00:00
dgp 3e8c032e35 Complete rewrite of DoRead(). 2014-03-19 20:32:37 +00:00
dgp b9409ecdff Remove long dead "BAD_BLOCKING" support code so it no longer confuses
people reading/editing this code.
2014-03-17 17:56:47 +00:00
oehhar 912913c340 WaitForConnection like tclUnixSock.c, new option [fconfigure -connecting] 2014-03-14 17:01:33 +00:00
oehhar ac3233bf36 file tclWinSock.c reorganized to minimize diff to tclUnixSock.c. No functional change 2014-03-14 16:59:25 +00:00
oehhar 934c12d4a4 Remove writable shortcut and errorneous workaround to get [connect -async] fail error to [fconfigure -error] 2014-03-14 14:36:14 +00:00
max d1f0a7b5f7 * More test improvements for async sockets.
*  Advance async connections whenever the channel is touched (e.g. by [chan configure]).
  *  Add a noblock argument to WaitForConnect(), so that advancing async connections from [chan configure] doesn't block even on a blocking socket.
2014-03-14 14:26:22 +00:00
oehhar ee1a8aed63 Remove writable shortcut and errorneous workaround to get [connect -async] fail error to [fconfigure -error] 2014-03-14 10:59:48 +00:00
oehhar 2a00313c29 Async connect terminates: fire fileevent by setting readyEvent, propage commit fail message to [fconfigure -error] 2014-03-14 09:12:13 +00:00
max b896860fbf * Hide transient errors of the internal iterations of [socket -async] from the script level.
*  More tests for corner cases.
2014-03-11 17:34:54 +00:00
dgp 6c5d496711 Compress code for better single screen viewing. 2014-03-11 16:51:38 +00:00
oehhar 66cf21eaaf No [fconfigure -error] error in connect process; gets after failed async connect returns connect error 2014-03-11 13:35:37 +00:00
dgp 47b0512591 Trial rewrite of AUTO input translation. 2014-03-11 03:38:55 +00:00
dgp 080aa64c3d .... and then the bug fix. 2014-03-10 19:30:22 +00:00
dgp f8cfd0ecd0 Test for the bug I just committed. 2014-03-10 19:29:54 +00:00
dgp ee4aa52d42 Rewrite CRLF translation to use more system calls. 2014-03-10 19:00:19 +00:00
max ca31b05c9d WaitForConnect may only call back to CreateClientSocket when the socket is writable or something. When it does so for a pending socket, it is falsely assumed to have succeeded and a subsequent read/write operation will fail. 2014-03-10 18:11:08 +00:00
dgp baf55bba6a Bring CRLF translation in parallel with others. 2014-03-10 17:58:32 +00:00
oehhar 75cae59053 Additional security for wrong pointer 2014-03-10 16:59:09 +00:00
oehhar 10a9e13e5d Fire write fileevent if async connect fails finally (test socket-14.2) 2014-03-10 15:38:21 +00:00
oehhar 3bb727a3c7 Also continue async connect without event loop if gets/puts is called (test socket-14.8.*) 2014-03-10 15:22:56 +00:00
oehhar e02a90c10d Workaround if FD_CONNECT notification comes before socket list registration in TcpThreadActionProc 2014-03-10 14:36:38 +00:00
max 5de4bf8981 * tclUnixSock.c: Fix WaitForConnect() for client sockets that have to try more than one address.
*  socket.test: Extend and improve tests for [socket -async]
  *  socket.test: Add latency measuring and calculation for Windows.
2014-03-10 12:08:44 +00:00
dgp 12a4d297b9 TranslateInputEOL doesn't need to return anything. No caller cares.
Other optimizations and simplifications.
2014-03-10 03:09:03 +00:00
jan.nijtmans bef17eed6a Merge core-8-5-branch (New tests covering INPUT_NEED_NL flag handling. One exposes a bug.) 2014-03-09 21:58:12 +00:00
jan.nijtmans 6bcc85f28e Mark io-35.18b test as knownBug 2014-03-09 21:55:51 +00:00
dgp 61e8875498 TranslateInputEOL() callers no longer need assert dstLen <= srcLen. 2014-03-07 20:15:12 +00:00
dgp 5350ed1efe Simplify the input eof char scan. Update some comments. 2014-03-07 19:43:16 +00:00
oehhar d08f5c564c Still incomplete info structure in event proc: try to protect with locks (unsuccesful). Probably locks in accept socket creation missing. 2014-03-07 07:40:30 +00:00
oehhar f5cb50339f More debug to chase different fd in struct than in callback 2014-03-06 18:21:40 +00:00
dgp f3343892a7 Variable "rawStart" serves no purpose. 2014-03-06 15:51:06 +00:00
oehhar 886199711d Terminate async connect synchronously by any blocking operation 2014-03-06 10:37:13 +00:00
dgp 57182d5ef3 Remove old dead code; silence compiler warnings; tidy up. 2014-03-05 19:41:51 +00:00
dgp 5fe3c1fbee Adapt CopyAndTranslateBuffer() to changes in TranslateInputEOL().
Notably no longer using the INPUT_NEED_NL flag.
2014-03-05 17:16:35 +00:00
oehhar bfa93a894c "gets" blocked after async cannect: SOCKET_ASYNC_CONNECT was not cleared 2014-03-05 15:15:43 +00:00
max 6ddf4c01d5 Refactor the error handling logic around connect() 2014-03-05 14:40:27 +00:00
dgp e5f7fb59c4 Merge repair to correct failing tests. 2014-03-05 14:23:38 +00:00
max fa81506a01 avoid warnings about uninitialized infoPtr in DEBUG 2014-03-05 13:12:13 +00:00
max 74ed570183 Print out the value of infoPtr in DEBUG, so that coexisting sockets can be distinguished in the output. 2014-03-05 13:09:22 +00:00
oehhar 3183209237 Next async connect try works. Reset error and move notifier before connect. 2014-03-05 10:20:09 +00:00
max 5bef69e253 * Use watchEvents only for read/write/close events of [chan event], don't mix with internal use of accept and connect events.
*  WIP: Refactor the tail of CreateClientSocket() to get notifications for completed async connects right.
2014-03-04 18:54:48 +00:00
oehhar 3f6201e538 Reverted move of WSAAsyncSelect before connect -> FD_Connect message does also fire if it exists on call. 2014-03-04 07:54:18 +00:00
oehhar 596cd02dba WIP: async open event now passes to SocketEventProc() and connects but does not finalyze that (I guess). 2014-03-03 15:57:56 +00:00
dgp ecec9dacef Fixups make the test suite almost pass (except *io-39.17) 2014-03-01 03:01:41 +00:00
dgp ece5f1377f Bring over the ReadChars rewrite for integration into the other I/O work. 2014-02-28 19:01:42 +00:00
dgp c98d055207 another coverage test. 2014-02-28 18:36:00 +00:00
dgp 45f1f60132 tidy up. 2014-02-28 18:28:16 +00:00
dgp ff27c27a27 More ReadChars rewriting. Test suite now passes.
Note that this reform simplifies ReadChars a fair bit (at least in my eyes).
Also it does away with the use of an INPUT_NEED_NL flag, using the same
strategy for partial \r\n sequences as is used for incomplete multibyte chars.
2014-02-28 18:25:20 +00:00
max 3e6fc11b81 Make printf debugging switchable, because it affects 'make test' 2014-02-28 11:05:35 +00:00
max e622e61b3a Broken intermediate state.
Calling back to CreateClientSocket() from the event loop works, but
the final failed or succeeded state of an asyncronous socket does not
get notified to the channel correctly.
2014-02-28 10:47:53 +00:00
dgp 2f73d6810c Work in progress attempting a ReadChars rewrite. 2014-02-27 20:21:10 +00:00
dgp 378008089c remove comment 2014-02-27 20:11:47 +00:00
dgp 8f2742b2f5 merge 8.5 2014-02-26 20:28:36 +00:00
dgp 4a58d3c00a New tests covering INPUT_NEED_NL flag handling. One exposes a bug. 2014-02-26 17:47:46 +00:00
jan.nijtmans 4840e7dbb4 Simplify macro handling in tclOO*Decls.h, just as already done in "novem" [0c37ab8944], itcl*Decls.h and tdbc*Decls.h.
This doesn't change the way symbols are exported. This simplifications were already present in the Tcl 8.6.2 headers, but those were buggy when tclOO was linked in statically without using stubs.
2014-02-26 13:16:18 +00:00
max e31901dcd5 Merge trunk 2014-02-26 12:44:12 +00:00
dgp 2207a65968 More coverage tests and bug fixes. 2014-02-26 11:26:00 +00:00
dkf 282de06cab [8d5f5b8034] Flush internal representations in [string tolower] of unshared obj 2014-02-25 15:49:52 +00:00
oehhar 8f14151916 Do not reopen a win serial channel for serial detection. There are issues with some Bluetooth virtual com. Fix bug [2413550], patch by Rolf Schroedter 2014-02-25 08:02:17 +00:00
dgp e8e909f1cd Reduce ReadBytes to simplest expression. 2014-02-24 21:25:08 +00:00
dgp 6733e57835 simplification trims 2014-02-24 21:01:07 +00:00
dgp 6978c989d7 merge 8.5 2014-02-24 20:53:57 +00:00
dgp d888a526f4 Merge the stricter binary mode experiment. 2014-02-24 19:11:37 +00:00
oehhar ada7d66e9f Do not reopen a win serial channel for serial detection. There are issues with some Bluetooth virtual com. Fix bug [2413550], patch by Rolf Schroedter 2014-02-24 17:25:08 +00:00
dkf 1a8dc819d6 [3597178]: Improve documentation of what's going on with encodings 2014-02-23 13:07:36 +00:00
dgp b3bfa3ee1d Simplify ReadBytes based on new constraints. 2014-02-21 15:12:16 +00:00
dgp b6212a88b3 fix type error 2014-02-21 15:02:35 +00:00
dgp 01eab1e2cd Switch consistently on the narrower def of binary mode. 2014-02-20 21:23:33 +00:00
dgp 90725c211b Can we send some binary reads down the char-reading path? 2014-02-20 20:31:55 +00:00
dgp 90d3294572 Refactoring repair to fix failing test. 2014-02-20 03:51:16 +00:00
dgp 6e09fe5ab9 [1230597] Update test comment. 2014-02-19 14:12:37 +00:00
dgp fa1ab4f740 [1230597] Update test comment. 2014-02-19 14:10:55 +00:00
dgp 3ac01c586f Next coverage test to expose another refactoring error. 2014-02-19 03:45:17 +00:00
dgp c65342141a Shortcut ReadBytes() when it's a no-op. 2014-02-19 03:36:15 +00:00
dgp 0e8e132aca Callers of TranslateInputEOL are expected to manage the INPUT_NEED_NL flag. 2014-02-18 23:20:06 +00:00
dgp d4cb991846 Another coverage test that reveals refactoring error. 2014-02-18 21:27:35 +00:00
dgp e51a0bd096 coverage test for -translation cr 2014-02-18 18:35:19 +00:00
dgp 521821debf Refactor correction exposed by coverage test. 2014-02-18 18:26:22 +00:00
dgp 06a0036a49 Coverage test for -translation auto handling of INPUT_SAW_CR flag.
Demonstrates refactor failure.
2014-02-18 17:54:06 +00:00
dkf c91f173c8b [9bf7e67b37]: minor documentation blooper 2014-02-16 08:18:29 +00:00
dgp ec145024fd merge 8.5 2014-02-12 18:46:03 +00:00
jan.nijtmans 47f1107ebc typo 2014-02-12 12:15:15 +00:00
jan.nijtmans 78bbf020ea typo 2014-02-12 12:13:32 +00:00
dgp 342aec6684 Refactor so that CopyAndTranslateBuffer() calls on TranslateInputEOL()
instead of duplicating so much of its function.  Note the testing gaps.
2014-02-11 19:53:41 +00:00
jan.nijtmans f0882154a8 Fix execute permission bit (should not be set) for *Decls.h files 2014-02-11 10:58:30 +00:00
oehhar 89583a6623 Changed position of flag evaluation as proposed by Phil Hoffman 2014-02-11 08:53:33 +00:00
jan.nijtmans 0258413bde Eliminate all usage of WIN32 and __WIN32__ macros: Some compilers (e.g. Clang/LLVM) don't define it, and _WIN32 is much more portable anyway.
See: [http://nadeausoftware.com/articles/2012/01/c_c_tip_how_use_compiler_predefined_macros_detect_operating_system#WindowsCygwinnonPOSIXandMinGW]
2014-02-10 11:59:22 +00:00
dgp e175773277 This patch is not pointless. Tests encoding-25.* demonstrate its utility. 2014-02-07 19:40:25 +00:00
dgp b6ae0212a1 [a4494e28ed] Use flag bit instead of NULL pointer to suppress
teardown list of imported commands when the original command
              gets re-created. This prevents the panic otherwise possible when
              the invalid state represented by the NULL pointer is encountered
              during a command delete trace.
2014-02-06 22:48:34 +00:00
dgp 5ff110b484 Change the flag value to avoid merge conflict with trunk. 2014-02-06 22:41:14 +00:00
dgp 438b687249 [a4494e28ed] Use flag bit instead of NULL pointer to suppress teardown list of
imported commands when the original command gets re-created.  This prevents the
panic otherwise possible when the invalid state represented by the NULL pointer
is encountered during a command delete trace.
2014-02-06 22:38:17 +00:00
jan.nijtmans 8c3bcfe950 check for existance of __BORLANDC__ before using its value 2014-02-06 21:45:29 +00:00
jan.nijtmans cacb796441 Check for existance of __BORLANDC__ before using its value 2014-02-06 21:44:43 +00:00
dgp cad363e97d Revised ReadChars to restore an attempt to make sure we do not short read
because of a false notion of limited storage space.
The test suite does not appear to demonstrate any case where this matters.
Could be an incomplete test suite, or an example of pointless code.
2014-02-06 19:04:36 +00:00
dgp f54081e9e5 merge 8.5 2014-02-06 16:33:24 +00:00
jan.nijtmans 40094302e0 Satisfy required position of __stdcall from VC++ 2014-02-04 21:52:46 +00:00
jan.nijtmans c7569e1c35 Satisfy required position of __stdcall from VC++ 2014-02-04 21:51:32 +00:00
jan.nijtmans ae659fdb12 Add missing __stdcall (which crashes on win32), and clean-up indenting 2014-02-04 21:33:13 +00:00
jan.nijtmans fc5e6debde remove duplicate declaration 2014-02-04 21:29:44 +00:00
jan.nijtmans 876dd3ac96 Add missing __stdcall (which crashes on win32), and clean-up indenting 2014-02-04 21:21:53 +00:00
dgp 8c665116c9 Simplify the core output operations of channels. Reduce duplicative and dead code. 2014-02-04 16:24:14 +00:00
dgp 1eb2dfe0fc Simplify the core output operations of channels. Reduce duplicative and
dead code.
2014-02-04 15:17:12 +00:00
dgp f53e4a7a0e Be sure to finalize the identity encoding. 2014-02-04 14:30:55 +00:00
dkf 5be047220d make the printing of source much less inclined to be fazed by non-ASCII chars 2014-02-04 09:02:23 +00:00
dkf 510244810f [971cb4f1db]: Make debugging traces less inclined to serious visual corruption 2014-02-04 08:15:52 +00:00
dgp 9f92115d2d merge 8.5 2014-02-03 22:58:36 +00:00
jan.nijtmans ad8e3dcb0a Fix [651e828a52]: Wrong Windows version reported for Windows 8.1 2014-02-03 15:19:26 +00:00
jan.nijtmans f77ffeb9b2 Fix [651e828a52]: Wrong Windows version reported for Windows 8.1 2014-02-03 14:43:52 +00:00
dkf c574af192d add compilation of [string is] 2014-02-02 16:01:21 +00:00
dkf fd4bc0f106 compilation of [string is] 2014-02-02 14:43:48 +00:00
dkf cca7f018e0 improve the disassembly 2014-02-02 14:42:12 +00:00
dgp e12cc95f12 Simplify macro typecasting. 2014-01-31 22:07:10 +00:00
dgp beb8c62dff The "channel" Tcl_ObjType is caching only. It never needs an UpdateString routine.
It's also static to the tclIO.c file.
2014-01-31 20:42:21 +00:00
dgp 684c2c9051 Do not call updateStringProc directly. We have TclGetString() for that. 2014-01-31 20:02:58 +00:00
jan.nijtmans 767efbf478 Fix [4b3b7a3082]: tcl8.5.15/generic/tclExecute.c:7713: array index before sanity check ? 2014-01-31 09:19:11 +00:00
jan.nijtmans b4b95b976a Fix [4b3b7a3082]: tcl8.5.15/generic/tclExecute.c:7713: array index before sanity check ? 2014-01-31 09:13:13 +00:00
dgp 2c59046c95 Refactor to eliminate the DoWriteChars() layer. 2014-01-30 20:10:21 +00:00
dgp f11f5780e0 Eliminate DoWrite(). It duplicates WriteBytes(). 2014-01-30 19:30:34 +00:00
dgp c00d7aa9b9 Trial: Implement DoWrite() as WriteBytes(). 2014-01-30 19:13:28 +00:00
dgp 050c8a639f Simplification and cleanup enabled by last commit. 2014-01-30 18:45:11 +00:00
dgp 248247d828 Refactor WriteChars() and WriteBytes() into simple wrappers of a common
routine Write().
2014-01-30 18:31:39 +00:00
oehhar 42f972d403 merge 8.5 2014-01-30 15:02:40 +00:00
dgp a92cc7b340 Eliminate the use of a staging buffer in WriteChars(). 2014-01-30 14:51:44 +00:00
jan.nijtmans b6ac569a5d Fix [22c10c8e79]: core-8-5: msvc6 build: "Side by Side" error 2014-01-30 14:50:22 +00:00
jan.nijtmans 2c00f457ae Fix [22c10c8e79]: core-8-5: msvc6 build: "Side by Side" error 2014-01-30 14:44:56 +00:00
dgp 4a8456e406 Eliminate the use of a staging buffer in WriteChars(). 2014-01-30 14:31:17 +00:00
oehhar 63d77c0046 win/tclWinChan.c Tcl_InitNotifier: Bug [2413550] Avoid reopening of serial channels which causes issues with Bluetooth virtual com. Patch by Rolf Schroedter. 2014-01-30 11:02:51 +00:00
andreask cc6eaf6308 Squashed C99 syntax breaking the native AIX cc. 2014-01-29 23:18:58 +00:00
dkf 6597355ad8 Compile [string is] with character classes in a non-awful way. Needs more work to make resulting bytecode disassemble nicely. 2014-01-29 13:59:32 +00:00
dgp c53002fe3b The outputStage field is now unused, so never allocate it. 2014-01-28 20:23:26 +00:00
dgp 2c2a7d737a tidy things up 2014-01-28 20:19:39 +00:00
dgp d250eba26d Working code with no staging buffer use. 2014-01-28 18:51:59 +00:00
dgp 2585021472 WIP 2014-01-28 11:04:57 +00:00
dgp 518e457db3 merge 8.5 2014-01-27 17:58:10 +00:00
dgp 7afa150e2f merge 8.5 2014-01-27 17:35:53 +00:00
dgp 490384e3e7 Revise the Tcl_Append* machinery to tolerate NULL bytes to append.
Then have ReadChars() use that machinery to resize buffer receiving input,
rather than invent its own version.  Simplify ReadChars() callers.
2014-01-27 17:35:27 +00:00
jan.nijtmans 4e83fe1049 sync tcl.m4 with Tk version 2014-01-25 21:41:48 +00:00
jan.nijtmans 5d9939831c sync tcl.m4 with Tk version 2014-01-25 21:41:12 +00:00
dkf f4549b8fc4 merge principal development branch 2014-01-25 09:02:30 +00:00
dgp d7803bcb41 merge 8.5 2014-01-24 22:33:30 +00:00
dgp c25181bd7d In WriteChars(), eliminate the copy step through a staging buffer when it
is not required for channel translation.
2014-01-24 21:52:59 +00:00
dgp 2ceb7a6077 In WriteChars(), eliminate the copy step through a staging buffer when
it is not required for channel translation.
2014-01-24 21:45:39 +00:00
dgp e3bde55a0f Eliminate the copy to a staging buffer when that serves no functional purpose. 2014-01-24 17:38:59 +00:00
dkf 834d5da992 improved tidy-up from branch 2014-01-22 19:33:03 +00:00
jan.nijtmans 2be298f89d remove unused variable 2014-01-22 13:48:16 +00:00
dkf c9ae8d64d3 minor tidying up 2014-01-22 09:14:57 +00:00
dkf 477af49f88 add compilation for [nextto] and [yieldto]; fix [a90d9331bc] 2014-01-22 09:11:07 +00:00
dkf 7716fd3e46 [a90d9331bc]: must not crash when yieldto called in vanishing namespace 2014-01-22 09:07:45 +00:00
dgp e99699b008 There is no need for ReadBytes() or its caller(s) to track how many bytes
are actually stored in objPtr.  The ByteArray Tcl_ObjType already has the
machinery to take care of this.
2014-01-21 22:08:16 +00:00
dgp 72fa9a96c8 Backport of bytearray append machinery to support bug fixes in ReadBytes. 2014-01-21 21:32:53 +00:00
dgp 8fc4750efc merge mark 2014-01-21 18:17:14 +00:00
dgp 78b4196767 Silence compiler warnings. 2014-01-21 18:16:37 +00:00
dgp 1e9a5591d9 [2992970] Restore safety of Tcl_AppendObjToObj(x, x) for bytearrays. 2014-01-21 17:25:41 +00:00
dkf 128e4211ae implementation of [yieldto] in bytecode 2014-01-21 15:07:59 +00:00
dkf 88b2f7f06e added compilation for [nextto] 2014-01-19 18:39:24 +00:00
dgp a994cc42f5 [2992970] Restore the safety of Tcl_AppendObjToObj(x, x) for bytearrays.
Also moves overflow checking to TclAppendBytesToByteArray() and adds
the ability to call TABTBA() with bytes==NULL, for appending unspecified
bytes.  That is, the string grows, but the new bytes are of undetermined
value.  Like Tcl_NewByteArrayObj(NULL, length) this option is useful
for manipulating buffers.  The TABTBA growth algorithm is also enhanced
a bit, copying over a fuller implementation from GrowStringBuffer()
in tclStringObj.c
2014-01-15 19:04:52 +00:00
dkf 12945e9a16 extend [string is] to booleans 2014-01-13 08:06:43 +00:00
dkf 2803a8a055 a different approach 2014-01-10 15:58:41 +00:00
dkf 29ae06c2d3 use compact form 2014-01-09 10:49:04 +00:00
jan.nijtmans 48459b2357 Make DEFAULT_TRIM_SET a MODULE_SCOPE string constant, so its value can be shared in tclCmdMZ.o and TclCompCmdsSZ.o
and it no longer pollutes the tclStringTrim.h header file.
2014-01-08 11:04:44 +00:00
dkf 8f95efa4cf merge main working branch 2014-01-07 14:25:22 +00:00
dkf c8e62b1cfa Add compilations for the following commands:
* concat
 * linsert
 * namespace origin
 * next
 * string replace
 * string tolower
 * string totitle
 * string toupper
 * string trim
 * string trimleft
 * string trimright
2014-01-07 14:19:04 +00:00
dkf cbc312324e make function static once more; not needed outside of source file 2014-01-07 14:13:37 +00:00
dkf 03ecb591a6 reduce the overhead of NR-enabled TclOO [next] 2014-01-07 13:59:30 +00:00
dkf 6bb7b1e15d factor out a common stanza 2014-01-05 17:31:38 +00:00
dkf a2e12b4377 merge main working branch 2014-01-05 17:00:15 +00:00
dkf 6d9846f8c9 merge trunk 2014-01-05 16:57:05 +00:00
mig 666deab1ea fix arraySet compiler to set -errorcode instead of -errorCode in return options 2014-01-05 15:01:52 +00:00
mig bb9e19e6eb skip the switch(result) on returning TCL_OK from a proc 2014-01-05 14:10:42 +00:00
mig ea8a9ba071 reducing TEBCdata: pc and cleanup now passed in the NREcallback 2014-01-05 12:01:04 +00:00
dkf 430c9bc178 redevelop code to have more in common with the interpreted [string is] and to remove non-working types 2014-01-02 15:30:53 +00:00
jan.nijtmans e7e7bafe96 merge-mark 2014-01-02 10:11:42 +00:00
dkf 9c349ce2e2 more fixes to instruction tracing; ensure all places that need DECACHE_STACK_INFO have it 2014-01-02 10:01:35 +00:00
dkf e7f9c9c822 merge main working branch 2014-01-02 09:38:03 +00:00
dkf 83fcae9bbe implement TclOO's [next] in bytecode 2014-01-02 09:17:07 +00:00
dkf d5961a83e0 merge main working branch; made opcode work by getting callback ordering right 2014-01-02 09:15:18 +00:00
dkf 9c6b83d5b1 merge trunk 2014-01-02 08:51:04 +00:00
dkf 8a115927af ... and more silly errors 2014-01-02 08:50:08 +00:00
dkf 68cab10668 merge trunk 2014-01-02 08:35:48 +00:00
dkf c28c2d5b9a oops... 2014-01-02 08:35:01 +00:00
dkf 78f85049ff merge main working branch 2014-01-02 08:32:36 +00:00
dkf a30f092ea3 merge trunk 2014-01-02 03:27:16 +00:00
dkf 4f13f826e4 more fixes to instruction tracing; ensure all places that need DECACHE_STACK_INFO have it. jan.nijtmans: Branch moved aside an hidden, so future bisects are not affected by this branch mistakes. 2014-01-02 03:10:43 +00:00
dkf 1c54736c0d factor out a common peephole stanza 2014-01-01 16:19:14 +00:00
dkf f9dd75e79c another jump peephole, this time with string comparisons 2013-12-31 23:34:57 +00:00
dkf d423ce0c06 more cleaning up of error-case instruction tracing 2013-12-31 17:28:16 +00:00
dkf 76b954ec41 merge trunk 2013-12-31 16:28:15 +00:00
dkf c45f1130d1 more peephole optimizations in TEBC, and better instruction execution traces 2013-12-31 16:26:55 +00:00
mig 0891bbbcbb clarify the resume sequence in TEBCresume; make checkInterp a local variable, remove it from the saved struct 2013-12-31 12:14:50 +00:00
dkf 05feb2c73f merge trunk 2013-12-31 10:49:07 +00:00
dkf 0e49a49b8f remove ill-advised change to assembler
What made sense for the compiler does not for the assembler, as that can (and does) build code blocks entirely out of order.
2013-12-31 10:47:19 +00:00
dgp 57dc79f34e merge trunk 2013-12-30 16:36:12 +00:00
dkf 413a0c2501 put the other definition of a trim set in the header file too 2013-12-30 11:56:54 +00:00
dkf 76007824cc Factor out the definition of the default string trim set; define it once only. 2013-12-30 11:40:44 +00:00
dkf db5995b2b8 merge main working branch 2013-12-30 10:24:20 +00:00
dkf 9083b5bf61 merge main working branch 2013-12-30 08:50:28 +00:00
dkf 4ad593f2bf implement [namespace origin] in bytecode 2013-12-30 08:37:49 +00:00
dkf cdacc33cbb allow generation by assembler 2013-12-30 08:16:21 +00:00
dkf f7157671ce corrected comment 2013-12-30 08:12:52 +00:00
dkf b004b21242 Improved general case of [string replace] implementation. 2013-12-29 18:49:20 +00:00
dkf 7319a7803b precondition was wrong, and needed to flush part of the string/internal rep 2013-12-29 18:48:09 +00:00
dkf 7a36091c38 use the new instruction 2013-12-29 16:59:15 +00:00
dkf 4ee64245d2 completed instruction implementation 2013-12-28 17:21:39 +00:00
dkf 24707208d7 interim commit; not yet working 2013-12-24 18:57:46 +00:00
dkf cbfb4c7624 merge trunk 2013-12-23 18:32:17 +00:00
mig 724d7b20d4 Added new tools for managing and verifying the stack depth during compilation. Used it in some spots in the compiler and in TclCompileCatchCommand. 2013-12-23 11:28:12 +00:00
mig c339e59205 remove unnecessary messing around INST_CONTINUE and INST_BREAK: local continue/break are already converted to jumps, so that these are either caught or returned - in either case, the stacks are cleaned up properly by TEBC itself. 2013-12-22 14:11:46 +00:00
mig 9b9e35d814 remove duplicate statement in previous commit 2013-12-22 13:03:19 +00:00
mig 0065bfd6bc fix stack counting bug in new catch compiler, commit 62a51cdb45. 2013-12-22 12:52:39 +00:00
mig 6bde9d5683 remove INST_TRY_CVT_TO_NUMERIC when it is known not be necessary (cherrypick from mig-optimize) 2013-12-20 21:59:28 +00:00
jan.nijtmans f324306fb2 Add TclRegisterLiteral() to internal stub table (from "mig-optimize" branch, looks like a good idea anyway) 2013-12-19 14:35:50 +00:00
dgp b23b38a551 [0b874c344d] Fix for nested coroutines ability to stitch together multiple
parts of the CmdFrame chain traversed by [info frame].
2013-12-18 18:23:20 +00:00
dgp cd07187c44 merge trunk 2013-12-18 18:20:56 +00:00
dgp b12d345ba7 Big simplification of the bug fix. 2013-12-18 18:09:09 +00:00
mig 7e06231c54 Making the optimizer pluggable by extensions 2013-12-18 16:06:22 +00:00
mig 1412caa12b Making the optimizer pluggable by extensions; please review for committing to trunk 2013-12-18 15:34:39 +00:00
dgp 4994878d50 Factor out the level offsetting into a final pass. Let the first
pass of the "chain" operation just stitch things together and count levels.
2013-12-17 21:19:36 +00:00
dgp fc27205f3f Refactoring work on the "chain" operation. 2013-12-16 21:01:35 +00:00
dkf 27e8904ab4 Improve descriptions of character escapes and ranges in Tcl.n.
Improve output format handlers to cope with added escape for en-dashes.
2013-12-15 17:49:53 +00:00
dgp 0011796c30 Simplify the coding of the unchain operation. 2013-12-13 18:39:12 +00:00
dkf f1a1245d74 simple compilation of [string replace] 2013-12-12 09:57:38 +00:00
dkf 03b5a36e45 merge trunk; document added instructions 2013-12-12 09:13:39 +00:00
dkf 19de6f5858 merge trunk 2013-12-12 08:09:45 +00:00
mig 7e2ce590ba simplification of the catch compiler and new test 2013-12-11 16:46:38 +00:00
mig 3ad596b1a5 comments 2013-12-11 16:43:26 +00:00
mig ac531cc463 comments 2013-12-11 16:33:21 +00:00
mig e8186595e3 comments 2013-12-11 16:27:59 +00:00
mig 51c5c21dee new test, and fix for bug 2013-12-11 15:55:28 +00:00
mig 411f830f50 simplify: remove the special case 2013-12-11 15:16:20 +00:00
mig 6f08bd3872 store options early: simplify compiler, reduce stack manipulations 2013-12-11 14:51:15 +00:00
mig 0cf62ad8a4 simplifying: drop early the evaled script 2013-12-11 13:49:20 +00:00
mig 6446b79fe2 fix stack computations for lmap 2013-12-10 12:05:06 +00:00
mig 1adbdd114b new INST_LMAP_COLLECT, speeds up lmap and eliminates the need for a temp var 2013-12-10 11:38:17 +00:00
mig 2e16688b51 change NULL to INT2PTR(0), for clarity 2013-12-06 15:58:12 +00:00
mig 0c65e944bb change NULL to INT2PTR(0), for clarity 2013-12-06 14:29:49 +00:00
mig 0e8f545071 merge trunk 2013-12-06 14:20:13 +00:00
jan.nijtmans b737753dbb Oops, wrong macro. 2013-12-06 10:17:58 +00:00
jan.nijtmans 43f960c3de Introducing a new union member in Tcl_Obj is not a good idea in a patch release, especially using "long".
Better allow iterNum and iterMax to grow to ssize_t (or size_t) in Tcl 9 (or 8.x, why not?). 
Usage of "long" in public API causes interoperability problems between Cygwin64 and Win64 (probably no-one cares except me).
2013-12-06 10:04:48 +00:00
dkf 2127f0af03 merge trunk 2013-12-06 09:33:14 +00:00
dkf fd4b837586 Stop printing undefined values in disassembled code. 2013-12-06 09:28:45 +00:00
mig e148764f60 3x speed improvement in foreach, via new compiler and opcodes. The old version remains for old .tbc sake, but is unused in the core. 2013-12-06 05:24:07 +00:00
mig bd2bdc1904 adapted the array-set compiler to use the new foreach opcodes 2013-12-06 01:07:10 +00:00
mig e839a385d8 tighter mem management in array-set compiler 2013-12-06 00:16:07 +00:00
mig 74ce54a69d tighter mem management 2013-12-06 00:02:16 +00:00
dgp a92abd2be9 Draft fix for Bug 0b874c344d. Includes test. 2013-12-05 20:45:45 +00:00
mig b195b45848 add comments on INST_FOREACH_* 2013-12-05 17:18:54 +00:00
mig d4c2352c27 add comments on field "misuse" 2013-12-05 16:01:16 +00:00
mig fe466d7e44 New compiler and bytecodes for foreach and lmap: 70% faster
* speed as measured by http://wiki.tcl.tk/39021: runs in <1/3 the time

   * still need to adapt array-set to use this

   * assemble.test-16.5 or 16.6 bombs in a purify/symbols build (?)

   * removing the old opcodes would force recompilation of old .tbc files or adaptation of tbcload
2013-12-05 15:15:23 +00:00
dkf f0e61b3c22 [a122627849] Improve stack trace from parray on not-array. 2013-11-24 18:35:01 +00:00
dkf 01b92615b5 [a122627849] Improve stack trace from parray on not-array. 2013-11-24 18:34:16 +00:00
jan.nijtmans 0e5086f719 revert accidental part of previous commit 2013-11-22 13:21:52 +00:00
jan.nijtmans 43ee8fffc8 Cygwin: Fix conflicting definition with _mingw_stat64.h, if included together with <tcl.h> 2013-11-22 13:17:43 +00:00
jan.nijtmans cec233a888 Cygwin: Fix conflicting definition with _mingw_stat64.h, if included together with <tcl.h> 2013-11-22 13:16:21 +00:00
jan.nijtmans dec33abc5a Modify makefile.vc for Windows 8.1 support 2013-11-21 16:22:34 +00:00
jan.nijtmans 6a67104caf Modify makefile.vc for Windows 8.1 support 2013-11-21 16:20:01 +00:00
jan.nijtmans c82de03edf Add support for Windows 8.1: See [http://msdn.microsoft.com/en-us/library/windows/desktop/dn302074.aspx] 2013-11-21 11:52:34 +00:00
jan.nijtmans 5709ed46ce Add support for Windows 8.1: See [http://msdn.microsoft.com/en-us/library/windows/desktop/dn302074.aspx] 2013-11-21 11:43:00 +00:00
jan.nijtmans c8f1a349c0 The only relyable way of changing environment variables to uppercase (e.g. env(ComSpec) to env(COMSPEC)) is unsetting the old one first. Long-standing bug, exposed by [219226]. 2013-11-21 09:24:59 +00:00
jan.nijtmans b89b27df42 The only relyable way of changing environment variables to uppercase (e.g. env(ComSpec) to env(COMSPEC)) is unsetting the old one first. Long-standing bug, exposed by [219226]. 2013-11-21 09:18:04 +00:00
jan.nijtmans d34df50ace Safer clean-up of environment variables: Do removal after insertions -> tcltest 2.3.7 2013-11-20 16:06:35 +00:00
jan.nijtmans 8422ebbd58 Safer clean-up of environment variables: Do removal after insertions -> tcltest 2.3.7 2013-11-20 16:04:43 +00:00
jan.nijtmans 6df3935a96 Starting with Windows 8 DSK, GetVersionExA is deprecated 2013-11-20 14:40:38 +00:00
jan.nijtmans 26ecd5e219 Starting with Windows 8 DSK, GetVersionExA is deprecated 2013-11-20 14:38:08 +00:00
jan.nijtmans 153e7dd764 Fix env-5.1 test-case on Cygwin (and probably other platforms which don't have iso8859-1 as system-encoding) 2013-11-20 12:58:35 +00:00
jan.nijtmans 3d8b62339c ... and don't break env-5.3 and env-5.5 test-cases. 2013-11-20 11:34:29 +00:00
jan.nijtmans 4043a96088 Bug Fix: EnvTraceProc() MUST always return NULL to indicate success. 2013-11-20 11:20:32 +00:00
dkf cdc8943683 merge trunk 2013-11-19 13:02:05 +00:00
jan.nijtmans 065d2c77e4 Some formatting 2013-11-19 11:50:03 +00:00
jan.nijtmans 2d9f60b950 Cygwin: Instead of checking whether the win32 part is configured properly, just configure it when needed.
Always build the stub library first (and - on Cygwin - configure win32 properly just before building the stub library)
2013-11-19 09:47:47 +00:00
jan.nijtmans ca48321a28 Revert [5215b8740c] (Enh [2959069]), as it turns out that -fvisibility=hidden only affects definitions and not declarations.
Therefore explicitely declaring each MODULE_SCOPE function as  __attribute__((__visibility__("hidden")) is much better. 
Suggested by Stuart Cassoff (Thanks!).
2013-11-19 09:09:42 +00:00
jan.nijtmans 36434499c3 Cygwin: Instead of checking whether the win32 part is configured properly, just configure it when needed.
Always build the stub library first (and - on Cygwin - configure win32 properly just before building the stub library)
2013-11-19 08:23:05 +00:00
max 2a15c7082e merge trunk 2013-11-18 13:37:16 +00:00
max bb220ac0ad Revert [3c0b0bbda6]. If this really is a problem, it needs to get fixed by other means than covering behind void pointers. 2013-11-18 13:32:30 +00:00
max 9901b732cc To prepare for completion of the [socket -async] implementation on Windows [13d3af3ad5]:
*  Move the server code from CreateSocket to Tcl_OpenTcpServer.
  *  Rename CreateSocket to CreateClientSocket.
  *  Unify the naming convention of socket channels with Unix (sock + hex representation of the state/info structure).
2013-11-18 12:35:58 +00:00
jan.nijtmans 317c7c6991 Eliminate some redundant Tcl_GetErrno() calls. 2013-11-18 11:00:51 +00:00
jan.nijtmans 114f20490f Fix [e832d2b08]: unnecessary code in Tcl_SetMaxBlockTime. 2013-11-16 21:06:46 +00:00
jan.nijtmans 8b83c2b467 Fix [e832d2b08]: unnecessary code in Tcl_SetMaxBlockTime. 2013-11-16 21:05:38 +00:00
jan.nijtmans 8feecdc04e Map WSAEWOULDBLOCK to EWOULDBLOCK. Suggested by Reinhard Max. 2013-11-16 20:33:17 +00:00
max 6529091343 Don't leak getaddrinfo() results 2013-11-15 16:13:53 +00:00
dkf 1be1a5dfa4 merge trunk 2013-11-14 10:25:33 +00:00
dkf 695df45b40 Grammar check... 2013-11-12 15:47:21 +00:00
dkf dba0465748 [528717] Slight rewording to clarify what the evaluation steps are. 2013-11-12 15:43:55 +00:00
max 4de413a551 socket-14.6 only makes sense where both, IPv4 and IPv6 are supported. 2013-11-12 13:12:21 +00:00
max 50b02bc49a Fix [5425f2c082]: [fconfigure -error] breaks the background processing of a pending [socket -async]. 2013-11-12 11:45:04 +00:00
jan.nijtmans 47d3e9dbac Fix [426679ef7d]: Having man.macros after .TH breaks rendering on OpenBSD and possibly others. 2013-11-05 12:39:47 +00:00
jan.nijtmans edd7296583 Fix [426679ef7d]: Having man.macros after .TH breaks rendering on OpenBSD and possibly others. 2013-11-05 12:36:17 +00:00
jan.nijtmans dd3a00dac4 Put extern "C" guards around all stub table struct definitions, so it is usable for C++ compilers as well without the danger of modifying the calling convention.
For tclDecls.h and tclOODecls.h it was no problem, because tcl.h and tclOO.h already contain those guards. But for the other *Decls.h files (e.g. tclTomMathDecls.h) it was not correct.
2013-11-04 10:13:59 +00:00
jan.nijtmans 010943474b Put extern "C" guards around all stub table struct definitions, so it is usable for C++ compilers as well without the danger of modifying the calling convention.
For tclDecls.h it was no problem, because tcl.h already contains those guards. But for the other *Decls.h files (e.g. tclTomMathDecls.h) it was not correct.
2013-11-04 10:02:58 +00:00
jan.nijtmans 9e746d7f58 Windows dll's should be executable. 2013-10-31 11:44:37 +00:00
dkf efa791f58b merge trunk 2013-10-29 20:08:41 +00:00
dkf bc84019495 Now do [string toupper], [string tolower] and [string totitle]. Only handles the no-indices case; that's the only case anyone actually commonly uses. 2013-10-29 20:07:56 +00:00
jan.nijtmans 89c02b35e1 Workaround for [414d10346b]: tcl 8.5.15/8.6.1(threaded build) hangs in exec on HP-UX 2013-10-29 08:17:19 +00:00
jan.nijtmans 71bc6d6f0a Workaround for [414d10346b]: tcl 8.5.15/8.6.1(threaded build) hangs in exec on HP-UX 2013-10-29 08:15:36 +00:00
jan.nijtmans 31d8fbb925 Don't fix eol-style for Makefile.in in "make dist", if the file system is case-insensitive/case-preserving. 2013-10-28 10:57:25 +00:00
jan.nijtmans c4047c81e6 Bump tcltest version to 2.3.6 (should have been done just before the 8.5.15 release, just as in Tcl 8.6.1).
Don't fix eol-style for Makefile.in in "make dist", if the file system is case-insensitive/case-preserving.
2013-10-28 10:55:37 +00:00
dkf b5a083c5f4 [01b77111e5]: Small fixes relating to this bug. In particular, the package name
mapping was not being distributed, and there were some small problems with what
the mappings were and how they were applied. Also prevented external URLs from
ending with a '.'; that's vanishingly rare...
2013-10-28 09:23:30 +00:00
dkf 504122c70e merge trunk 2013-10-27 08:32:38 +00:00
dkf fee9da8b41 [53a917d6c9]: Correction to macro for determining how to deprecate things.
Thanks to Raphael Kubo da Costa <rakuco@FreeBSD.org> for the patch.
2013-10-27 08:28:43 +00:00
dkf 9cc416d585 General [concat] compilation. 2013-10-26 08:25:02 +00:00
dkf f663a0f78d Change name of instruction to make way for future changes. 2013-10-26 07:50:08 +00:00
jan.nijtmans 0b75dbad3d Fix [3eb2ec1449]: Allow upper case scheme names in url. http -> 2.8.8 2013-10-25 13:08:04 +00:00
jan.nijtmans 216ade8493 Fix [3eb2ec1449]: Allow upper case scheme names in url. http -> 2.7.13 2013-10-25 12:57:19 +00:00
dkf edff530f8d First step in compiling [concat]: the trivial cases. 2013-10-24 07:21:14 +00:00
dgp ffb2a3d9b4 merge trunk 2013-10-23 15:34:01 +00:00
dgp c677a19c44 silence compiler warning 2013-10-23 15:32:58 +00:00
dkf cc5f831d90 Stack depth calculation correction. 2013-10-23 08:33:40 +00:00
dkf 905746921e [3556215]: Made [scan] match [format] better in what it accepts as a format
string, by allowing uppercase %X, %E and %G.
2013-10-22 18:58:49 +00:00
dkf 383f020ee8 [3556215]: Made [scan] match [format] better in what it accepts as a format
string, by allowing uppercase %X, %E and %G.
2013-10-22 18:55:02 +00:00
dkf 054a071db5 merge fixes from trunk 2013-10-22 17:36:22 +00:00
dkf 2ffe17a9b3 Fix for assemble.test; problem was a total assumption failure caused by way that the assembler works. 2013-10-22 17:34:55 +00:00
dkf fb7a292613 Fix problems in for.test 2013-10-22 14:29:03 +00:00
dkf 345c194b8e corrected trace printing 2013-10-22 09:18:19 +00:00
dgp 7a42d12716 silence compiler warnings 2013-10-21 14:35:02 +00:00
dkf e1e7fafd59 merge trunk 2013-10-20 18:44:22 +00:00
dkf 8d4b93ccb7 [2835313] Ensure correct stack balance when break and continue exceptions are about: the hard cases with potential concealed exception generation. 2013-10-20 18:15:08 +00:00
dkf d9096d1ada And the last bits that need fixing; the code is still less efficient than desired but should now not crash. 2013-10-20 18:11:35 +00:00
dkf fc106439d4 Fix handling of 'invokeExpanded' and start to do 'returnStk'. 2013-10-19 14:11:28 +00:00
dkf c0d3a447bc Added missing exception range finalize. 2013-10-19 12:29:06 +00:00
dkf 0981d85b0c Improve coverage of [error] compilation. 2013-10-19 11:20:46 +00:00
dkf 443ca84a71 Tackle evalStk by reusing existing machinery. 2013-10-18 07:08:46 +00:00
jan.nijtmans c10d93603c Fix execute permission on many files which shouldn't have it. 2013-10-17 09:40:27 +00:00
jan.nijtmans edbfaa468e Fix execute permission on many files which shouldn't have it. 2013-10-17 09:28:11 +00:00
jan.nijtmans 2d9a87e3f1 -I${BUILD_DIR}/.. doesn't work when BUILD_DIR != "unix".
Reported by Matthias Kraft
2013-10-15 21:09:19 +00:00
dkf 2aaf426036 Do jump generation at places where INST_RETURN_IMM might occur. 2013-10-15 00:27:56 +00:00
jan.nijtmans d6d11c65a3 Tcl_SetResult -> Tcl_SetObjResult in two places (for Cygwin64 only). 2013-10-14 08:34:48 +00:00
jan.nijtmans 87660da586 Fix comment in tclOO.decls: tclOOStubLib.c is not generated by "make genstubs".
In pkgooa.c, check whether the internal TclOO stub table is initialized correctly as well, some internal simplifications and improved comments.
2013-10-14 08:11:59 +00:00
dkf e15b769c9d Added the tests I want to pass... 2013-10-13 13:57:27 +00:00
dkf d197994bd2 update comments 2013-10-13 13:34:01 +00:00
dkf 19e7a90783 Stop crashing in interactive testing. (The unknown and history mechanisms tend
to exercise some parts of the bytecode compiler very well.)
2013-10-13 12:09:22 +00:00
jan.nijtmans 9ad995c1bb Allow loading of pkgooa.so in Tcl 8.5 for (regression) test purposes.
Better error messages in stead of crashes in some (hypothetical) error situations.
2013-10-13 10:45:08 +00:00
jan.nijtmans 31d188239f Even though TCLOO_PATCHLEVEL is equal to TCLOO_VERSION, using "patchlevel" is more appropriate in those two places. 2013-10-11 10:26:35 +00:00
dkf 976d7cab2f [98c8b3ec12] Use constraint to work around failing test; it's just a bug in the
underlying library, and one that appears fixed in later versions. Not our fault
if some OSes don't update. (It's also in a very esoteric spot.)
2013-10-10 21:24:15 +00:00
jan.nijtmans 74f3e06000 Fix for bug [f51efe99a7]: MinGW build fails on current checkin. And a new test-case which makes the problem visible on UNIX as well. 2013-10-10 14:13:51 +00:00
jan.nijtmans f4c238d6a7 Update to Unicode 6.3 tables 2013-10-09 22:03:28 +00:00
jan.nijtmans 9d1312440e Update to Unicode 6.3 tables 2013-10-09 21:57:26 +00:00
dkf daab595dea Working towards better handling of stack balance with break and continue exceptions. 2013-10-08 09:02:50 +00:00
jan.nijtmans f86d726f85 Fix for [d4e464ae48]: tcl 8.5.15/8.6.1 breaks python make check on darwin 2013-10-07 14:25:21 +00:00
jan.nijtmans 3ad87b0a02 Fix for [d4e464ae48]: tcl 8.5.15/8.6.1 breaks python make check on darwin 2013-10-07 14:23:00 +00:00
jan.nijtmans c83af8f8d4 First attempt to fix bug [d4e464ae48]: tcl 8.5.15/8.61 breaks python make check on darwin 2013-10-06 19:27:50 +00:00
dkf d6e62aeb84 [3381085] Improved way of detecting what version of the documentation to build.
Set the HTML_VERSION environment variable to override the (sensible) default.
2013-10-06 19:17:20 +00:00
dkf a1ae407099 Factor out some knowledge of immediate index encoding. 2013-10-06 13:21:10 +00:00
Kevin B Kenny eb7a25fe2b mark merge 2013-10-05 16:30:16 +00:00
Kevin B Kenny 560c2dcbe1 Advance to tzdata2013g 2013-10-05 16:28:52 +00:00
Kevin B Kenny 7413854f34 Advance to tzdata2013g 2013-10-05 16:22:16 +00:00
dkf e1e4f33ee4 merge trunk 2013-10-05 13:58:48 +00:00
dkf d9b2d9628a Added 'linsert' compiler. Factored out constant list index parser. 2013-10-05 13:53:30 +00:00
dkf 28552e2e35 Added missing documentation. Corrected result of Tcl_OOInitStubs in non-stub case. 2013-10-04 13:12:22 +00:00
jan.nijtmans c3651154a7 When compiling with MSVC++, no longer link the stub library with msvcrt??.dll.
This way, workarounds in extensions like [http://core.tcl.tk/itcl/info/a961f0729c] are no longer necessary.
2013-10-03 20:41:03 +00:00
jan.nijtmans 73b02508fa When compiling with MSVC++, no longer link the stub library with msvcrt??.dll.
This way, workarounds in extensions like [http://core.tcl.tk/itcl/info/a961f0729c] are no longer necessary.
2013-10-03 15:17:43 +00:00
dkf 7fc9ecd5ab cleaner and faster 'string trim' 2013-10-03 13:32:06 +00:00
dkf 638b28b372 merge trunk 2013-10-03 08:54:01 +00:00
dkf 4759be8760 minor: whitespace correction (my bad!) 2013-10-02 14:35:30 +00:00
dkf 4b54ec077b neater 2013-10-02 13:16:10 +00:00
dkf 76ca8e7008 silence warnings with clang 2013-10-02 13:14:29 +00:00
jan.nijtmans 31d38b0701 Fix compilation of Itcl and Tdbc 2013-10-02 10:30:19 +00:00
dkf e104cccd94 Turn Tcl_OOInitStubs into a no-op in non-stub-enabled usage. 2013-10-02 10:01:50 +00:00
dkf 8789461a94 Fix TclOO API export rules. 2013-10-02 09:41:01 +00:00
dkf 066dd2cb10 Expand subset of lreplace functionality that is compiled. 2013-10-02 08:46:29 +00:00
jan.nijtmans ec1dceef35 Fix compilation with latest MinGW-w64 version 3.0: Conflict on EXCEPTION_REGISTRATION typedef, which means something completely different in MinGW-w64. 2013-10-02 08:08:10 +00:00
jan.nijtmans 5e1eaa44bc Fix compilation with latest MinGW-w64 version 3.0: Conflict on EXCEPTION_REGISTRATION typedef, which means something completely different in MinGW-w64. 2013-10-02 07:58:50 +00:00
jan.nijtmans a403e2663e Disable command line globbing on MinGW compiles: this saves startup time, since the result of the glob is not used anywhere. 2013-09-30 14:07:20 +00:00
jan.nijtmans c5f68dde5c Disable command line globbing on MinGW compiles: this saves startup time, since the result of the glob is not used anywhere. 2013-09-30 14:03:56 +00:00
jan.nijtmans 868c2951dc Restore copyright assignments and some improved comments in tclOO.decls: previous commit was a blind revert of [371bcd0714], but those changes should not have been reverted. 2013-09-30 09:38:49 +00:00
jan.nijtmans e438509c68 Fix [f51efe99a7] by reverting [371bcd0714] 2013-09-30 09:03:20 +00:00
dkf 93595c68aa First attempt at [string trim] compilation. 2013-09-30 03:00:06 +00:00
dkf 324cc442eb merge trunk 2013-09-30 01:05:48 +00:00
dkf 4f19f86513 typo; spotted by stu 2013-09-28 22:52:11 +00:00
dkf fd38147f32 [dfc08326e3]: Corrected symbol export for TclOO to match Tcl so things work as
expected in a static build.
2013-09-28 21:10:22 +00:00
dgp ce33f01bf1 Fix test source-4.1 2013-09-27 17:33:17 +00:00
dgp bfb7ea0e46 merge 8.5 2013-09-27 16:10:43 +00:00
dgp 694bd3ba73 Merge forward new test, marked as knownBug, so other merges are no longer held back. 2013-09-27 15:34:09 +00:00
dkf 067ef1dcea [219226]: Rewrote how ::env is synchronized to the environment so it no longer
smashes the array or its elements flat, This affects traces on env, links to
env, and iterations over env: it makes them work as naïvely expected.
2013-09-27 10:29:43 +00:00
jan.nijtmans 878c0cff52 Cherrypick [87d1313df3] from trunk:
Workaround for [http://sourceforge.net/p/mingw/bugs/2065/|MinGW bug #2065]. 
Both MinGW and MinGW-w64 (32-bit) are affected. 
Even though Win64 is not affected, adding -static-libgcc doesn't harm there, and we don't want to distrubute additional dll's with MinGW-compiled Tcl anyway.
2013-09-27 09:35:05 +00:00
jan.nijtmans 9bdcf8e201 Workaround for [http://sourceforge.net/p/mingw/bugs/2065/|MinGW bug #2065].
Both MinGW and MinGW-w64 (32-bit) are affected. 
Even though Win64 is not affected, adding -static-libgcc doesn't harm there, and we don't want to distrubute additional dll's with MinGW-compiled Tcl anyway.
2013-09-27 09:18:36 +00:00
jan.nijtmans 09a4760ba3 Tcl_SetResult -> Tcl_SetObjResult 2013-09-26 14:27:37 +00:00
dkf ce9b84204c [d614d63989] Ensure that there are no trailing colons as that causes chaos when a deleteProc is specified. 2013-09-25 22:54:29 +00:00
dgp e929b91222 Test demonstrating need for "adjust" manipulation in TclSubstTokens. 2013-09-25 16:39:26 +00:00
dgp 1d119413f6 revert mistaken commit of experiment 2013-09-23 12:18:45 +00:00
jan.nijtmans 1fce20754c workaround for mingw bug [http://comments.gmane.org/gmane.comp.gnu.mingw.user/41724] 2013-09-23 11:27:47 +00:00
jan.nijtmans 96fec1a88c workaround for mingw bug [http://comments.gmane.org/gmane.comp.gnu.mingw.user/41724] 2013-09-23 11:12:12 +00:00
dkf 967d113043 merge trunk 2013-02-04 22:02:53 +00:00
dkf 0eb33efc7a merge main dev branch 2013-01-03 14:08:49 +00:00
dkf 53baa9e5c4 merge main dev branch 2013-01-03 14:07:24 +00:00
dkf af735a0ba9 merge main dev branch 2012-12-19 11:43:40 +00:00
dkf a7b60b26f1 merge main dev branch 2012-12-19 11:42:46 +00:00
dkf d6bd07fecc merge dkf-compile-misc-info 2012-11-20 12:14:18 +00:00
dkf f497ce9a95 merge dkf-compile-misc-info 2012-11-20 12:13:43 +00:00
dkf 414163addc merge main dev branch 2012-11-05 21:56:13 +00:00
dkf 71fd534215 merge main dev branch 2012-11-05 21:55:40 +00:00
dkf b8bcc352ea merge main dev branch 2012-11-05 15:33:44 +00:00
dkf f04eef80d7 merge main dev branch 2012-11-05 15:28:01 +00:00
dkf 2de2d8678f reorder to preserve main BC development branch sequence better 2012-11-02 20:39:10 +00:00
dkf d5e04d6200 merge dkf-compile-misc-info 2012-11-02 20:25:57 +00:00
dkf 6d14b815b2 Work on compilation of [string is].
Hit some problem edge cases with differences in strictness of edge cases that
will force a rethink ([string is boolean] is significantly more strict than
Tcl_GetBooleanFromObj).
2012-11-02 16:50:06 +00:00
dkf ed18777278 Working towards a BCCed [next].
This version <i>almost</i> works, except for a problem with restoring the
context namespace upon return (which produces very strange results!)
2012-11-01 20:40:55 +00:00
557 changed files with 11688 additions and 8025 deletions
Regular → Executable
View File
Regular → Executable
View File
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Access 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_Access, Tcl_Stat \- check file permissions and other attributes
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_AddErrorInfo 3 8.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_GetReturnOptions, Tcl_SetReturnOptions, Tcl_AddErrorInfo, Tcl_AppendObjToErrorInfo, Tcl_AddObjErrorInfo, Tcl_SetObjErrorCode, Tcl_SetErrorCode, Tcl_SetErrorCodeVA, Tcl_SetErrorLine, Tcl_GetErrorLine, Tcl_PosixError, Tcl_LogCommandInfo \- retrieve or record information about errors and other return options
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Alloc 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_Alloc, Tcl_Free, Tcl_Realloc, Tcl_AttemptAlloc, Tcl_AttemptRealloc, ckalloc, ckfree, ckrealloc, attemptckalloc, attemptckrealloc \- allocate or free heap memory
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_AllowExceptions 3 7.4 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_AllowExceptions \- allow all exceptions in next script evaluation
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_AppInit 3 7.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_AppInit \- perform application-specific initialization
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_SetAssocData 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_GetAssocData, Tcl_SetAssocData, Tcl_DeleteAssocData \- manage associations of string keys and user specified data with Tcl interpreters
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_AsyncCreate 3 7.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_AsyncCreate, Tcl_AsyncMark, Tcl_AsyncInvoke, Tcl_AsyncDelete, Tcl_AsyncReady \- handle asynchronous events
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_BackgroundError 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_BackgroundException, Tcl_BackgroundError \- report Tcl exception that occurred in background processing
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Backslash 3 "8.1" Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_Backslash \- parse a backslash sequence
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_BooleanObj 3 8.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_NewBooleanObj, Tcl_SetBooleanObj, Tcl_GetBooleanFromObj \- store/retrieve boolean value in a Tcl_Obj
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_ByteArrayObj 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_NewByteArrayObj, Tcl_SetByteArrayObj, Tcl_GetByteArrayFromObj, Tcl_SetByteArrayLength \- manipulate Tcl values as a arrays of bytes
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_CallWhenDeleted 3 7.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_CallWhenDeleted, Tcl_DontCallWhenDeleted \- Arrange for callback when interpreter is deleted
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Cancel 3 8.6 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_CancelEval, Tcl_Canceled \- cancel Tcl scripts
+1 -1
View File
@@ -3,8 +3,8 @@
'\"
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
.so man.macros
.TH Tcl_StackChannel 3 8.3 Tcl "Tcl Library Procedures"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+2 -2
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Class 3 0.1 TclOO "TclOO Library Functions"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
@@ -111,7 +111,7 @@ function. Note that the Tcl_Obj reference returned by \fBTcl_GetObjectName\fR
is a shared reference.
.PP
Instances of classes are created using \fBTcl_NewObjectInstance\fR, which
takes creates an object from any class (and which is internally called by both
creates an object from any class (and which is internally called by both
the \fBcreate\fR and \fBnew\fR methods of the \fBoo::class\fR class). It takes
parameters that optionally give the name of the object and namespace to
create, and which describe the arguments to pass to the class's constructor
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_CommandComplete 3 "" Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_CommandComplete \- Check for unmatched braces in a Tcl command
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Concat 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_Concat \- concatenate a collection of strings
+1 -1
View File
@@ -4,8 +4,8 @@
'\"
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
.so man.macros
.TH Tcl_CreateChannel 3 8.4 Tcl "Tcl Library Procedures"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_CreateChannelHandler 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_CreateCloseHandler 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_CreateCommand 3 "" Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_CreateCommand \- implement new commands in C
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_CreateFileHandler 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_CreateFileHandler, Tcl_DeleteFileHandler \- associate procedure callbacks with files or devices (Unix only)
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_CreateInterp 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_CreateInterp, Tcl_DeleteInterp, Tcl_InterpActive, Tcl_InterpDeleted \- create and delete Tcl command interpreters
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_CreateMathFunc 3 8.4 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_CreateMathFunc, Tcl_GetMathFuncInfo, Tcl_ListMathFuncs \- Define, query and enumerate math functions for expressions
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_CreateObjCommand 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_CreateObjCommand, Tcl_DeleteCommand, Tcl_DeleteCommandFromToken, Tcl_GetCommandInfo, Tcl_GetCommandInfoFromToken, Tcl_SetCommandInfo, Tcl_SetCommandInfoFromToken, Tcl_GetCommandName, Tcl_GetCommandFullName, Tcl_GetCommandFromObj \- implement new commands in C
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_CreateSlave 3 7.6 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_IsSafe, Tcl_MakeSafe, Tcl_CreateSlave, Tcl_GetSlave, Tcl_GetMaster, Tcl_GetInterpPath, Tcl_CreateAlias, Tcl_CreateAliasObj, Tcl_GetAlias, Tcl_GetAliasObj, Tcl_ExposeCommand, Tcl_HideCommand \- manage multiple Tcl interpreters, aliases and hidden commands
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_CreateTimerHandler 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_CreateTimerHandler, Tcl_DeleteTimerHandler \- call a procedure at a given time
+1 -1
View File
@@ -6,8 +6,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_CreateTrace 3 "" Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_CreateTrace, Tcl_CreateObjTrace, Tcl_DeleteTrace \- arrange for command execution to be traced
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_DString 3 7.4 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_DStringInit, Tcl_DStringAppend, Tcl_DStringAppendElement, Tcl_DStringStartSublist, Tcl_DStringEndSublist, Tcl_DStringLength, Tcl_DStringValue, Tcl_DStringSetLength, Tcl_DStringTrunc, Tcl_DStringFree, Tcl_DStringResult, Tcl_DStringGetResult \- manipulate dynamic strings
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_DetachPids 3 "" Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_DetachPids, Tcl_ReapDetachedProcs, Tcl_WaitPid \- manage child processes in background
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_DictObj 3 8.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_DoOneEvent 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_DoOneEvent \- wait for events and invoke event handlers
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_DoWhenIdle 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_DoWhenIdle, Tcl_CancelIdleCall \- invoke a procedure when there are no pending events
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_DoubleObj 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_NewDoubleObj, Tcl_SetDoubleObj, Tcl_GetDoubleFromObj \- manipulate Tcl values as floating-point values
+1 -1
View File
@@ -3,8 +3,8 @@
'\" Copyright (c) 2000 by Scriptics Corporation.
'\" All rights reserved.
'\"
.so man.macros
.TH "Tcl_DumpActiveMemory" 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_DumpActiveMemory, Tcl_InitMemory, Tcl_ValidateAllMemory \- Validated memory allocation interface
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_GetEncoding 3 "8.1" Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_GetEncoding, Tcl_FreeEncoding, Tcl_GetEncodingFromObj, Tcl_ExternalToUtfDString, Tcl_ExternalToUtf, Tcl_UtfToExternalDString, Tcl_UtfToExternal, Tcl_WinTCharToUtf, Tcl_WinUtfToTChar, Tcl_GetEncodingName, Tcl_SetSystemEncoding, Tcl_GetEncodingNameFromEnvironment, Tcl_GetEncodingNames, Tcl_CreateEncoding, Tcl_GetEncodingSearchPath, Tcl_SetEncodingSearchPath, Tcl_GetDefaultEncodingDir, Tcl_SetDefaultEncodingDir \- procedures for creating and using encodings
+1 -1
View File
@@ -6,8 +6,8 @@
'\"
'\" This documents the C API introduced in TIP#235
'\"
.so man.macros
.TH Tcl_Ensemble 3 8.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_CreateEnsemble, Tcl_FindEnsemble, Tcl_GetEnsembleFlags, Tcl_GetEnsembleMappingDict, Tcl_GetEnsembleNamespace, Tcl_GetEnsembleParameterList, Tcl_GetEnsembleUnknownHandler, Tcl_GetEnsembleSubcommandList, Tcl_IsEnsemble, Tcl_SetEnsembleFlags, Tcl_SetEnsembleMappingDict, Tcl_SetEnsembleParameterList, Tcl_SetEnsembleSubcommandList, Tcl_SetEnsembleUnknownHandler \- manipulate ensemble commands
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_PutEnv 3 "7.5" Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_PutEnv \- procedures to manipulate the environment
+1 -1
View File
@@ -6,8 +6,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Eval 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_EvalObjEx, Tcl_EvalFile, Tcl_EvalObjv, Tcl_Eval, Tcl_EvalEx, Tcl_GlobalEval, Tcl_GlobalEvalObj, Tcl_VarEval, Tcl_VarEvalVA \- execute Tcl scripts
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Exit 3 8.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_Exit, Tcl_Finalize, Tcl_CreateExitHandler, Tcl_DeleteExitHandler, Tcl_ExitThread, Tcl_FinalizeThread, Tcl_CreateThreadExitHandler, Tcl_DeleteThreadExitHandler, Tcl_SetExitProc \- end the application or thread (and invoke exit handlers)
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_ExprLong 3 7.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_ExprLong, Tcl_ExprDouble, Tcl_ExprBoolean, Tcl_ExprString \- evaluate an expression
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_ExprLongObj 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_ExprLongObj, Tcl_ExprDoubleObj, Tcl_ExprBooleanObj, Tcl_ExprObj \- evaluate an expression
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Filesystem 3 8.4 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_FSRegister, Tcl_FSUnregister, Tcl_FSData, Tcl_FSMountsChanged, Tcl_FSGetFileSystemForPath, Tcl_FSGetPathType, Tcl_FSCopyFile, Tcl_FSCopyDirectory, Tcl_FSCreateDirectory, Tcl_FSDeleteFile, Tcl_FSRemoveDirectory, Tcl_FSRenameFile, Tcl_FSListVolumes, Tcl_FSEvalFile, Tcl_FSEvalFileEx, Tcl_FSLoadFile, Tcl_FSUnloadFile, Tcl_FSMatchInDirectory, Tcl_FSLink, Tcl_FSLstat, Tcl_FSUtime, Tcl_FSFileAttrsGet, Tcl_FSFileAttrsSet, Tcl_FSFileAttrStrings, Tcl_FSStat, Tcl_FSAccess, Tcl_FSOpenFileChannel, Tcl_FSGetCwd, Tcl_FSChdir, Tcl_FSPathSeparator, Tcl_FSJoinPath, Tcl_FSSplitPath, Tcl_FSEqualPaths, Tcl_FSGetNormalizedPath, Tcl_FSJoinToPath, Tcl_FSConvertToPathType, Tcl_FSGetInternalRep, Tcl_FSGetTranslatedPath, Tcl_FSGetTranslatedStringPath, Tcl_FSNewNativePath, Tcl_FSGetNativePath, Tcl_FSFileSystemInfo, Tcl_GetAccessTimeFromStat, Tcl_GetBlockSizeFromStat, Tcl_GetBlocksFromStat, Tcl_GetChangeTimeFromStat, Tcl_GetDeviceTypeFromStat, Tcl_GetFSDeviceFromStat, Tcl_GetFSInodeFromStat, Tcl_GetGroupIdFromStat, Tcl_GetLinkCountFromStat, Tcl_GetModeFromStat, Tcl_GetModificationTimeFromStat, Tcl_GetSizeFromStat, Tcl_GetUserIdFromStat, Tcl_AllocStatBuf \- procedures to interact with any filesystem
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_FindExecutable 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_FindExecutable, Tcl_GetNameOfExecutable \- identify or return the name of the binary file containing the application
Executable → Regular
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_GetCwd 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_GetCwd, Tcl_Chdir \- manipulate the current working directory
+1 -1
View File
@@ -2,8 +2,8 @@
'\" Copyright (c) 1998-2000 by Scriptics Corporation.
'\" All rights reserved.
'\"
.so man.macros
.TH Tcl_GetHostName 3 8.3 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_GetHostName \- get the name of the local host
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_GetIndexFromObj 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_GetIndexFromObj, Tcl_GetIndexFromObjStruct \- lookup string in table of keywords
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_GetInt 3 "" Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_GetInt, Tcl_GetDouble, Tcl_GetBoolean \- convert from string to integer, double, or boolean
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_GetOpenFile 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_GetOpenFile \- Return a FILE* for a channel registered in the given interpreter (Unix only)
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_GetStdChannel 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_GetTime 3 8.4 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_GetTime, Tcl_SetTimeProc, Tcl_QueryTimeProc \- get date and time
Executable → Regular
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_GetVersion 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_GetVersion \- get the version of the library at runtime
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Hash 3 "" Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_InitHashTable, Tcl_InitCustomHashTable, Tcl_InitObjHashTable, Tcl_DeleteHashTable, Tcl_CreateHashEntry, Tcl_DeleteHashEntry, Tcl_FindHashEntry, Tcl_GetHashValue, Tcl_SetHashValue, Tcl_GetHashKey, Tcl_FirstHashEntry, Tcl_NextHashEntry, Tcl_HashStats \- procedures to manage hash tables
+1 -1
View File
@@ -2,8 +2,8 @@
'\" Copyright (c) 1998-2000 by Scriptics Corporation.
'\" All rights reserved.
'\"
.so man.macros
.TH Tcl_Init 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_Init \- find and source initialization script
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_InitStubs 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_InitStubs \- initialize the Tcl stubs mechanism
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_IntObj 3 8.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_NewIntObj, Tcl_NewLongObj, Tcl_NewWideIntObj, Tcl_SetIntObj, Tcl_SetLongObj, Tcl_SetWideIntObj, Tcl_GetIntFromObj, Tcl_GetLongFromObj, Tcl_GetWideIntFromObj, Tcl_NewBignumObj, Tcl_SetBignumObj, Tcl_GetBignumFromObj, Tcl_TakeBignumFromObj \- manipulate Tcl values as integers
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Interp 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_Interp \- client-visible fields of interpreter structures
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_LimitCheck 3 8.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_LimitAddHandler, Tcl_LimitCheck, Tcl_LimitExceeded, Tcl_LimitGetCommands, Tcl_LimitGetGranularity, Tcl_LimitGetTime, Tcl_LimitReady, Tcl_LimitRemoveHandler, Tcl_LimitSetCommands, Tcl_LimitSetGranularity, Tcl_LimitSetTime, Tcl_LimitTypeEnabled, Tcl_LimitTypeExceeded, Tcl_LimitTypeReset, Tcl_LimitTypeSet \- manage and check resource limits on interpreters
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_LinkVar 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_LinkVar, Tcl_UnlinkVar, Tcl_UpdateLinkedVar \- link Tcl variable to C variable
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_ListObj 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_ListObjAppendList, Tcl_ListObjAppendElement, Tcl_NewListObj, Tcl_SetListObj, Tcl_ListObjGetElements, Tcl_ListObjLength, Tcl_ListObjIndex, Tcl_ListObjReplace \- manipulate Tcl values as lists
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Load 3 8.6 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_LoadFile, Tcl_FindSymbol \- platform-independent dynamic library loading
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Method 3 0.1 TclOO "TclOO Library Functions"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH NRE 3 8.6 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_NRCreateCommand, Tcl_NRCallObjProc, Tcl_NREvalObj, Tcl_NREvalObjv, Tcl_NRCmdSwap, Tcl_NRExprObj, Tcl_NRAddCallback \- Non-Recursive (stackless) evaluation of Tcl scripts.
+1 -1
View File
@@ -7,8 +7,8 @@
'\" Note that some of these functions do not seem to belong, but they
'\" were all introduced with the same TIP (#139)
'\"
.so man.macros
.TH Tcl_Namespace 3 8.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_AppendExportList, Tcl_CreateNamespace, Tcl_DeleteNamespace, Tcl_Export, Tcl_FindCommand, Tcl_FindNamespace, Tcl_ForgetImport, Tcl_GetCurrentNamespace, Tcl_GetGlobalNamespace, Tcl_GetNamespaceUnknownHandler, Tcl_Import, Tcl_SetNamespaceUnknownHandler \- manipulate namespaces
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Notifier 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_CreateEventSource, Tcl_DeleteEventSource, Tcl_SetMaxBlockTime, Tcl_QueueEvent, Tcl_ThreadQueueEvent, Tcl_ThreadAlert, Tcl_GetCurrentThread, Tcl_DeleteEvents, Tcl_InitNotifier, Tcl_FinalizeNotifier, Tcl_WaitForEvent, Tcl_AlertNotifier, Tcl_SetTimer, Tcl_ServiceAll, Tcl_ServiceEvent, Tcl_GetServiceMode, Tcl_SetServiceMode, Tcl_ServiceModeHook, Tcl_SetNotifier \- the event queue and notifier interfaces
+54
View File
@@ -0,0 +1,54 @@
'\"
'\" Copyright (c) 2012 Donal K. Fellows
'\"
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.TH Tcl_OOInitStubs 3 1.0 TclOO "TclOO Library Functions"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
Tcl_OOInitStubs \- initialize library access to TclOO functionality
.SH SYNOPSIS
.nf
\fB#include <tclOO.h>\fR
.sp
const char *
\fBTcl_OOInitStubs\fR(\fIinterp\fR)
.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp in
.AP Tcl_Interp *interp in
The Tcl interpreter that the TclOO API is integrated with and whose C
interface is going to be used.
.BE
.SH DESCRIPTION
.PP
When an extension library is going to use the C interface exposed by TclOO, it
should use \fBTcl_OOInitStubs\fR to initialize its access to that interface
from within its \fI*\fB_Init\fR (or \fI*\fB_SafeInit\fR) function, passing in
the \fIinterp\fR that was passed into that routine as context. If the result
of calling \fBTcl_OOInitStubs\fR is NULL, the initialization failed and an
error message will have been left in the interpreter's result. Otherwise, the
initialization succeeded and the TclOO API may thereafter be used; the
version of the TclOO API is returned.
.PP
When using this function, either the C #define symbol \fBUSE_TCLOO_STUBS\fR
should be defined and your library code linked against the Tcl stub library,
or that #define symbol should \fInot\fR be defined and your library code
linked against the Tcl main library directly.
.SH "BACKWARD COMPATIBILITY NOTE"
.PP
If you are linking against the Tcl 8.5 forward compatibility package for
TclOO, \fIonly\fR the stub-enabled configuration is supported and you should
also link against the TclOO independent stub library; that library is an
integrated part of the main Tcl stub library in Tcl 8.6.
.SH KEYWORDS
stubs
.SH "SEE ALSO"
Tcl_InitStubs(3)
.\" Local variables:
.\" mode: nroff
.\" fill-column: 78
.\" End:
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Obj 3 8.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_NewObj, Tcl_DuplicateObj, Tcl_IncrRefCount, Tcl_DecrRefCount, Tcl_IsShared, Tcl_InvalidateStringRep \- manipulate Tcl values
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_ObjType 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_RegisterObjType, Tcl_GetObjType, Tcl_AppendAllObjTypes, Tcl_ConvertToType \- manipulate Tcl value types
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_OpenFileChannel 3 8.3 Tcl "Tcl Library Procedures"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_OpenTcpClient 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+1 -1
View File
@@ -2,8 +2,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Panic 3 8.4 Tcl "Tcl Library Procedures"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_ParseArgsObjv 3 8.6 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_ParseArgsObjv \- parse arguments according to a tabular description
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_ParseCommand 3 8.3 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_ParseCommand, Tcl_ParseExpr, Tcl_ParseBraces, Tcl_ParseQuotedString, Tcl_ParseVarName, Tcl_ParseVar, Tcl_FreeParse, Tcl_EvalTokens, Tcl_EvalTokensStandard \- parse Tcl scripts and expressions
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_PkgRequire 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_PkgRequire, Tcl_PkgRequireEx, Tcl_PkgRequireProc, Tcl_PkgPresent, Tcl_PkgPresentEx, Tcl_PkgProvide, Tcl_PkgProvideEx \- package version control
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Preserve 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_Preserve, Tcl_Release, Tcl_EventuallyFree \- avoid freeing storage while it is being used
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_PrintDouble 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_PrintDouble \- Convert floating value to string
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_RecordAndEvalObj 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_RecordAndEvalObj \- save command on history list before evaluating
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_RecordAndEval 3 7.4 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_RecordAndEval \- save command on history list before evaluating
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_RegisterConfig 3 8.4 Tcl "Tcl Library Procedures"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+1 -1
View File
@@ -6,8 +6,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_RegExpMatch 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_RegExpMatch, Tcl_RegExpCompile, Tcl_RegExpExec, Tcl_RegExpRange, Tcl_GetRegExpFromObj, Tcl_RegExpMatchObj, Tcl_RegExpExecObj, Tcl_RegExpGetInfo \- Pattern matching with regular expressions
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_SaveResult 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_SaveInterpState, Tcl_RestoreInterpState, Tcl_DiscardInterpState, Tcl_SaveResult, Tcl_RestoreResult, Tcl_DiscardResult \- save and restore an interpreter's state
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_SetChannelError 3 8.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_SetErrno 3 8.3 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_SetErrno, Tcl_GetErrno, Tcl_ErrnoId, Tcl_ErrnoMsg \- manipulate errno to store and retrieve error codes
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_SetRecursionLimit 3 7.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_SetRecursionLimit \- set maximum allowable nesting depth in interpreter
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_SetResult 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_SetObjResult, Tcl_GetObjResult, Tcl_SetResult, Tcl_GetStringResult, Tcl_AppendResult, Tcl_AppendResultVA, Tcl_AppendElement, Tcl_ResetResult, Tcl_TransferResult, Tcl_FreeResult \- manipulate Tcl result
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_SetVar 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_SetVar2Ex, Tcl_SetVar, Tcl_SetVar2, Tcl_ObjSetVar2, Tcl_GetVar2Ex, Tcl_GetVar, Tcl_GetVar2, Tcl_ObjGetVar2, Tcl_UnsetVar, Tcl_UnsetVar2 \- manipulate Tcl variables
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_SignalId 3 8.3 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_SignalId, Tcl_SignalMsg \- Convert signal codes
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_Sleep 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_Sleep \- delay execution for a given number of milliseconds
+1 -1
View File
@@ -2,8 +2,8 @@
'\" Copyright (c) 1998-2000 by Scriptics Corporation.
'\" All rights reserved.
'\"
.so man.macros
.TH Tcl_SourceRCFile 3 8.3 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_SourceRCFile \- source the Tcl rc file
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_SplitList 3 8.0 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_SplitList, Tcl_Merge, Tcl_ScanElement, Tcl_ConvertElement, Tcl_ScanCountedElement, Tcl_ConvertCountedElement \- manipulate Tcl lists
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_SplitPath 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_SplitPath, Tcl_JoinPath, Tcl_GetPathType \- manipulate platform-dependent file paths
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_StaticPackage 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_StaticPackage \- make a statically linked package available via the 'load' command
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH "Standard Channels" 3 7.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
+1 -1
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_StringMatch 3 8.5 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_StringMatch, Tcl_StringCaseMatch \- test whether a string matches a pattern
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_StringObj 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_NewStringObj, Tcl_NewUnicodeObj, Tcl_SetStringObj, Tcl_SetUnicodeObj, Tcl_GetStringFromObj, Tcl_GetString, Tcl_GetUnicodeFromObj, Tcl_GetUnicode, Tcl_GetUniChar, Tcl_GetCharLength, Tcl_GetRange, Tcl_AppendToObj, Tcl_AppendUnicodeToObj, Tcl_AppendObjToObj, Tcl_AppendStringsToObj, Tcl_AppendStringsToObjVA, Tcl_AppendLimitedToObj, Tcl_Format, Tcl_AppendFormatToObj, Tcl_ObjPrintf, Tcl_AppendPrintfToObj, Tcl_SetObjLength, Tcl_AttemptSetObjLength, Tcl_ConcatObj \- manipulate Tcl values as strings
+1 -1
View File
@@ -4,8 +4,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl_SubstObj 3 8.4 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
Tcl_SubstObj \- perform substitutions on Tcl values
+1 -1
View File
@@ -3,8 +3,8 @@
'\" Copyright (c) 2000 by Scriptics Corporation.
'\" All rights reserved.
'\"
.so man.macros
.TH TCL_MEM_DEBUG 3 8.1 Tcl "Tcl Library Procedures"
.so man.macros
.BS
.SH NAME
TCL_MEM_DEBUG \- Compile-time flag to enable Tcl memory debugging
+24 -19
View File
@@ -5,8 +5,8 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
.so man.macros
.TH Tcl n "8.6" Tcl "Tcl Built-In Commands"
.so man.macros
.BS
.SH NAME
Tcl \- Tool Command Language
@@ -28,7 +28,7 @@ First, the Tcl interpreter breaks the command into \fIwords\fR
and performs substitutions as described below.
These substitutions are performed in the same way for all
commands.
The first word is used to locate a command procedure to
Secondly, the first word is used to locate a command procedure to
carry out the command, then all of the words of the command are
passed to the command procedure.
The command procedure is free to interpret each of its words
@@ -108,8 +108,8 @@ Variable substitution may take any of the following forms:
\fIName\fR is the name of a scalar variable; the name is a sequence
of one or more characters that are a letter, digit, underscore,
or namespace separators (two or more colons).
Letters and digits are \fIonly\fR the standard ASCII ones (\fB0\fR\-\fB9\fR,
\fBA\fR\-\fBZ\fR and \fBa\fR\-\fBz\fR).
Letters and digits are \fIonly\fR the standard ASCII ones (\fB0\fR\(en\fB9\fR,
\fBA\fR\(en\fBZ\fR and \fBa\fR\(en\fBz\fR).
.TP 15
\fB$\fIname\fB(\fIindex\fB)\fR
.
@@ -117,8 +117,8 @@ Letters and digits are \fIonly\fR the standard ASCII ones (\fB0\fR\-\fB9\fR,
the name of an element within that array.
\fIName\fR must contain only letters, digits, underscores, and
namespace separators, and may be an empty string.
Letters and digits are \fIonly\fR the standard ASCII ones (\fB0\fR\-\fB9\fR,
\fBA\fR\-\fBZ\fR and \fBa\fR\-\fBz\fR).
Letters and digits are \fIonly\fR the standard ASCII ones (\fB0\fR\(en\fB9\fR,
\fBA\fR\(en\fBZ\fR and \fBa\fR\(en\fBz\fR).
Command substitutions, variable substitutions, and backslash
substitutions are performed on the characters of \fIindex\fR.
.TP 15
@@ -158,25 +158,25 @@ handled specially, along with the value that replaces each sequence.
.RS
.TP 7
\e\fBa\fR
Audible alert (bell) (0x7).
Audible alert (bell) (Unicode U+000007).
.TP 7
\e\fBb\fR
Backspace (0x8).
Backspace (Unicode U+000008).
.TP 7
\e\fBf\fR
Form feed (0xc).
Form feed (Unicode U+00000C).
.TP 7
\e\fBn\fR
Newline (0xa).
Newline (Unicode U+00000A).
.TP 7
\e\fBr\fR
Carriage-return (0xd).
Carriage-return (Unicode U+00000D).
.TP 7
\e\fBt\fR
Tab (0x9).
Tab (Unicode U+000009).
.TP 7
\e\fBv\fR
Vertical tab (0xb).
Vertical tab (Unicode U+00000B).
.TP 7
\e\fB<newline>\fIwhiteSpace\fR
.
@@ -194,8 +194,9 @@ Backslash
\e\fIooo\fR
.
The digits \fIooo\fR (one, two, or three of them) give a eight-bit octal
value for the Unicode character that will be inserted, in the range \fI000\fR
- \fI377\fR. The parser will stop just before this range overflows, or when
value for the Unicode character that will be inserted, in the range
\fI000\fR\(en\fI377\fR (i.e., the range U+000000\(enU+0000FF).
The parser will stop just before this range overflows, or when
the maximum of three digits is reached. The upper bits of the Unicode
character will be 0.
.TP 7
@@ -203,23 +204,27 @@ character will be 0.
.
The hexadecimal digits \fIhh\fR (one or two of them) give an eight-bit
hexadecimal value for the Unicode character that will be inserted. The upper
bits of the Unicode character will be 0.
bits of the Unicode character will be 0 (i.e., the character will be in the
range U+000000\(enU+0000FF).
.TP 7
\e\fBu\fIhhhh\fR
.
The hexadecimal digits \fIhhhh\fR (one, two, three, or four of them) give a
sixteen-bit hexadecimal value for the Unicode character that will be
inserted. The upper bits of the Unicode character will be 0.
inserted. The upper bits of the Unicode character will be 0 (i.e., the
character will be in the range U+000000\(enU+00FFFF).
.TP 7
\e\fBU\fIhhhhhhhh\fR
.
The hexadecimal digits \fIhhhhhhhh\fR (one up to eight of them) give a
twenty-one-bit hexadecimal value for the Unicode character that will be
inserted, in the range U+0000..U+10FFFF. The parser will stop just
inserted, in the range U+000000\(enU+10FFFF. The parser will stop just
before this range overflows, or when the maximum of eight digits
is reached. The upper bits of the Unicode character will be 0.
.RS
.PP
The range U+010000..U+10FFFD is reserved for the future.
The range U+010000\(enU+10FFFD is reserved for the future.
.RE
.PP
Backslash substitution is not performed on words enclosed in braces,
except for backslash-newline as described above.

Some files were not shown because too many files have changed in this diff Show More