| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
variables
|
|
|
|
| |
Implement TclpIsAtty, Cygwin only
doc/dde.n: doc fix
|
|
|
|
|
|
| |
table this is no longer necessary
implement TclpInetNtoa for win32
Let cygwin share stub table with win32
|
|
|
| |
Simplify stub tables for functions which work on both UNIX and windows
|
|\
| |
| |
| | |
Implement TclWinGetSockOpt, TclWinGetServByName
and TclWinCPUID for Cygwin
|
| |
| |
| | |
(should work, but not yet tested on UNIX)
|
| |
| |
| |
| | |
for win64 compatibility with future cygwin64
correctly use win32 as default when cross-compiling under cygwin
|
|/ |
|
|\ |
|
| |
| |
| |
| | |
so a diff can show us the real signature differences
Remove the TclpGetTZName implementation for Cygwin, from previous commit
|
|/
|
|
| |
Implement TclWinGetTclInstance, TclpGetTZName,
and various others for Cygwin
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
(works on cygwin, on other UNIX not yet complete)
|
|
|
| |
Some void -> VOID transitions
|
|
|
| |
more harm than good. Purged them.
|
|
|
|
|
|
|
|
|
| |
* generic/tclInt.h: to get the correct type signature
* unix/tclUnixPort.h: for TclpLocaltime and TclpGmtime.
* unix/tclUnixTime.c: CONST TclpTime_t is a 'time_t *CONST'
* win/tclWinTime.c: and not a 'CONST time_t*'!
* generic/tclIntDecls.h: [Bug 1677275]
* generic/tclIntPlatDecls.h: Regenerated.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
build works again.
* generic/tclInt.decls: Changes to the tests for
* generic/tclIntPlatDecls.h: clock frequency in Tcl_WinTime
* generic/tclStubInit.c: so that any clock frequency
* tests/platform.test (platform-1.3): is accepted provided that
* win/tclWin32Dll.c (TclWinCPUID): all CPU's in the system share
* win/tclWinTest.c (TestwincpuidCmd): a common chip, and hence,
* win/tclWinTime.c (Tcl_GetTime): presumably, a common clock. This
change necessitated a small burst of assembly code to read CPU ID
information, which was added as TclWinCPUID in the internal Stubs. To
test this code in the common case of a single-processor machine, a
'testwincpuid' command was added to tclWinTest.c, and a test case in
platform.test. Thanks to Jeff Godfrey and Richard Suchenwirth for
reporting this bug. [Bug #976722]
|
|
|
|
|
|
|
| |
* generic/tclIntPlatDecls.h: places where it appeared before the
* unix/tclUnixPort.h changes of 14 May, because use of
* unix/tclUnixTime.h native time_t in its place requires
* win/tclWinTime.h: the 8.5 header reforms. [Bug #955146]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclInt.decls: Promoted TclpLocaltime and TclpGmtime
* generic/tclIntDecls.h: from Unix-specific stubs to the generic
* generic/tclIntPlatDecls.h: internal Stubs table. Reran 'genstubs'
* generic/tclStubInit.c:
* unix/tclUnixPort.h:
* generic/tclClock.c: Changed a buggy 'GMT' timezone specification
to the correct 'GMT0'. [Bug #922848]
* unix/tclUnixThrd.c: Moved TclpGmtime and TclpLocaltime to
unix/tclUnixTime.c where they belong.
* unix/tclUnixTime.c (TclpGmtime, TclpLocaltime, TclpGetTimeZone,
ThreadSafeGMTime [removed],
ThreadSafeLocalTime [removed],
SetTZIfNecessary, CleanupMemory):
Restructured to make sure that the same mutex protects
all calls to localtime, gmtime, and tzset. Added a check
in front of those calls to make sure that the TZ env var
hasn't changed since the last call to tzset, and repeat
tzset if necessary. [Bug #942078] Removed a buggy test
of the Daylight Saving Time information in 'gettimeofday'
in favor of applying 'localtime' to a known value.
[Bug #922848]
* tests/clock.test (clock-3.14): Added test to make sure that
changes to $env(TZ) take effect immediately.
* win/tclWinTime.c (TclpLocaltime, TclpGmtime):
Added porting layer for 'localtime' and 'gmtime' calls.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclCmdMZ.c (Tcl_StringObjCmd STR_MATCH):
* generic/tclUtf.c (TclUniCharMatch):
* generic/tclInt.decls: add private TclUniCharMatch function that
* generic/tclIntDecls.h: does string match on counted unicode
* generic/tclStubInit.c: strings. Tcl_UniCharCaseMatch has the
* tests/string.test: failing that it can't handle strings or
* tests/stringComp.test: patterns with embedded NULLs. Added
tests that actually try strings/pats with NULLs. TclUniCharMatch
should be TIPed and made public in the next minor version rev.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclIntPlatDecls.h: regen
* generic/tclInt.decls: added TclWinResetInterface
* win/tclWin32Dll.c (TclWinResetInterfaces):
* win/tclWinInit.c (TclpSetInitialEncodings, WinEncodingsCleanup):
add exit handler that resets the encoding information to a state
where we can reuse Tcl. Following these changes, it is possible
to reuse Tcl (following Tcl_FindExecutable or Tcl_CreateInterp)
following a Tcl_Finalize.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Split out functionality of TclInExit to make it
clear which one should be called in each situation.
* generic/tclInt.decls: Declare TclInThreadExit.
* generic/tclIntDecls.h: Regen.
* generic/tclStubInit.c: Regen.
* mac/tclMacChan.c (StdIOClose):
* unix/tclUnixChan.c (FileCloseProc):
* win/tclWinChan.c (FileCloseProc):
* win/tclWinConsole.c (ConsoleCloseProc):
* win/tclWinPipe.c (TclpCloseFile):
* win/tclWinSerial.c (SerialCloseProc): Invoke the
new TclInThreadExit method instead of TclInExit.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
generic as it is used on mac & aqua as well.
* generic/tclIntDecls.h:
* generic/tclStubInit.c: regen.
* generic/tclCompile.h: added prototype for TclCompileVariableCmd.
* mac/tclMacPort.h: removed incorrect <fcntl.h> definitions
and obsolete <stat.h> definitions.
* mac/tclMacChan.c: removed obsolete GetOpenMode() and replaced
associated constants with the <fcntl.h> analogues (they existing
defs were inconsistent with <fcntl.h> which was causing havoc when
Tcl_GetOpenMode was used instead of private GetOpenMode).
* mac/tclMacFCmd.c: removed GenerateUniqueName(), use equivalent
(and identiaclly named) routine from MoreFiles instead.
* mac/tclMacLoad.c: CONSTification, fixes to Vince's last changes.
* mac/tclMacFile.c:
* mac/tclMacTest.c:
* mac/tclMacUnix.c: CONSTification.
* mac/tclMacOSA.c: CONSTificcation, sprintf fixes, UH 3.4.x changes;
fix for missing autoname token from TclOSACompileCmd. (bdesgraupes)
* mac/AppleScript.html(AppleScript delete): doc fix. (bdesgraupes)
* mac/tcltkMacBuildSupport.sea.hqx: updated MoreFiles to 1.5.3,
updated build instructions for 8.4.
* mac/tclMacProjects.sea.hqx: rebuilt archive.
|
|
|
|
|
|
|
|
|
|
|
| |
* unix/tclUnixThrd.c: Added stubs and implementations for
non-threaded build for the tclUnixThrd.c procs TclpReaddir,
TclpLocaltime, TclpGmtime and TclpInetNtoa.
Fixes link errors in stubbed & threaded extensions that include
tclUnixPort.h and use any of the procs readdir, localtime,
gmtime or inet_ntoa (e.g. TclX 8.4) [Bug 589526]
* generic/tclIntPlatDecls.h:
* generic/tclStubInit.c: Regen.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/Concat.3: all remaining public interfaces of Tcl.
* doc/CrtCommand.3: Notably, the parser no longer writes on
* doc/CrtSlave.3: the string it is parsing, so it is no
* doc/CrtTrace.3: longer necessary for Tcl_Eval() to be
* doc/Eval.3: given a writable string. Also, the
* doc/ExprLong.3: refactoring of the Tcl_*Var* routines
* doc/LinkVar.3: by Miguel Sofer is included, so that the
* doc/ParseCmd.3: "part1" argument for them no longer needs
* doc/SetVar.3: to be writable either.
* doc/TraceVar.3:
* doc/UpVar.3: Compatibility support has been enhanced so
* generic/tcl.decls that a #define of USE_NON_CONST will remove
* generic/tcl.h all possible source incompatibilities with
* generic/tclBasic.c the 8.3 version of the header file(s).
* generic/tclCmdMZ.c The new #define of USE_COMPAT_CONST now does
* generic/tclCompCmds.c what USE_NON_CONST used to do -- disable
* generic/tclCompExpr.c only those new CONST's that introduce
* generic/tclCompile.c irreconcilable incompatibilities.
* generic/tclCompile.h
* generic/tclDecls.h Several bugs are also fixed by this patch.
* generic/tclEnv.c [Bugs 584051,580433] [Patches 585105,582429]
* generic/tclEvent.c
* generic/tclInt.decls
* generic/tclInt.h
* generic/tclIntDecls.h
* generic/tclInterp.c
* generic/tclLink.c
* generic/tclObj.c
* generic/tclParse.c
* generic/tclParseExpr.c
* generic/tclProc.c
* generic/tclTest.c
* generic/tclUtf.c
* generic/tclUtil.c
* generic/tclVar.c
* mac/tclMacTest.c
* tests/expr-old.test
* tests/parseExpr.test
* unix/tclUnixTest.c
* unix/tclXtTest.c
* win/tclWinTest.c
|
|
|
|
| |
and Tcl(Get|Set|Incr)ElementOfIndexedArray()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
pointers; definition of three new Tcl_Obj types to cache variable
name parsing and lookup for later reuse; modification of internal
functions to profit from the caching.
* generic/tclInt.decls:
* generic/tclInt.h:
* generic/tclIntDecls.h:
* generic/tclNamesp.c: adding CONST qualifiers to variable names
passed to Tcl_FindNamespaceVar and to variable resolvers; adding
CONST qualifier to the 'msg' argument to TclLookupVar. Needed to
avoid code duplication in the new tclVar.c code.
* tests/set-old.test:
* tests/var.test: slight modification of error messages due to the
modifications in the tclVar.c code.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/trace.n: execution tracing [FR #462580] (lavana).
* generic/tcl.h: This includes enter/leave tracing as well
* generic/tclBasic.c: as inter-procedure stepping.
* generic/tclCmdMZ.c:
* generic/tclCompile.c:
* generic/tclExecute.c:
* generic/tclInt.decls:
* generic/tclInt.h:
* generic/tclIntDecls.h:
* generic/tclStubInit.c:
* generic/tclVar.c:
* tests/trace.test:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclIntDecls.h:
* generic/tclStubInit.c:
* generic/tclUtf.c: added TclpUtfNcmp2 private command that
mirrors Tcl_UtfNcmp, but takes n in bytes, not utf-8 chars. This
provides a faster alternative for comparing utf strings internally.
(Tcl_UniCharNcmp, Tcl_UniCharNcasecmp): removed the explicit end
of string check as it wasn't correct for the function (by doc and
logic).
* generic/tclCmdMZ.c (Tcl_StringObjCmd): reworked the string equal
comparison code to use TclpUtfNcmp2 as well as short-circuit for
equal objects or unequal length strings in the equal case.
Removed the use of goto and streamlined the other parts.
* generic/tclExecute.c (TclExecuteByteCode): added check for
object equality in the comparison instructions. Added
short-circuit for != length strings in INST_EQ, INST_NEQ and
INST_STR_CMP. Reworked INST_STR_CMP to use TclpUtfNcmp2 where
appropriate, and only use Tcl_UniCharNcmp when at least one of the
objects is a Unicode obj with no utf bytes.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* compat/strftime.c:
* generic/tclClock.c:
* generic/tclInt.decls:
* generic/tclIntDecls.h:
* unix/tclUnixTime.c: fix for Windows msvcrt mem leak caused by
using an env(TZ) setting trick for in clock format -gmt 1. This
also makes %s seem to work correctly with -gmt 1 as well as
making it a lot faster by avoid the env(TZ) hack. TclpStrftime
now takes useGMT as an arg. [Bug #559376]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclInt.decls:
* generic/tclIntPlatDecls.h:
* generic/tclStubInit.c:
* mac/tclMacFCmd.c:
* mac/tclMacFile.c:
* mac/tclMacUtil.c: Modified TclpObjNormalizePath to be alias
file aware, and replaced various calls to FSpLocationFrom*Path
by calls to new alias file aware versions FSpLLocationFrom*Path.
The alias file aware routines don't resolve the last component of
a path if it is an alias. This allows [file copy/delete] etc. to
act correctly on alias files. (c.f. discussion in Bug #511666)
|
|
|
|
| |
to TIP 27. In particular, the "part2" arguments were CONSTified.
|
|
|
|
|
| |
This version builds clean on Solaris/SPARC, with GCC and CC, both with and
without threads and both in 32-bit and 64-bit mode.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclIntPlatDecls.h:
* mac/tclMacChan.c:
* mac/tclMacFCmd.c:
* mac/tclMacFile.c:
* mac/tclMacInit.c:
* mac/tclMacLoad.c:
* mac/tclMacResource.c:
* mac/tclMacSock.c: TIP 27 CONSTification induced changes
* tests/event.test:
* tests/main.test: added catches/constraints to test that
use features that don't exist on the mac.
|
|
|
|
| |
and generic/tclNamesp.c according to the guidelines of TIP 27.
|
|
|
|
|
|
|
|
|
|
|
| |
generic/tclIOUtil.c, generic/tclPipe.c, generic/tclResult.c,
generic/tclUtil.c, generic/tclVar.c and mac/tclMacResource.c according
to TIP 27. Tcl_TranslateFileName rewritten as wrapper around
VFS-aware version. Updated callers.
***POTENTIAL INCOMPATIBILITY***
Includes source incompatibilities: argv arguments of Tcl_Concat,
Tcl_JoinPath, Tcl_OpenCommandChannel, Tcl_Merge; argvPtr arguments of
Tcl_SplitList and Tcl_SplitPath.
|
|
|
|
| |
to the guidelines of TIP 27. Updated callers.
|
|
|
|
| |
according to the guidelines of TIP 27. Updated callers. [Patch 499196]
|
|
|
|
| |
of TIP 27.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclMain.c: Substantial rewrite and expanded documentation
of Tcl_Main to correct a number of bugs and flaws:
* Interactive Tcl_Main can now enter a main loop, exit
that loop and continue interactive operations. The loop
may even exit in the midst of interactive command typing
without loss of the partial command. [Bugs 486453, 474131]
* Tcl_Main now gracefully handles deletion of its master
interpreter.
* Interactive Tcl_Main can now operate with non-blocking stdin
* Interactive Tcl_Main can now detect EOF on stdin even in
mid-command. [Bug 491341]
* Added VFS-aware internal routines for managing the
startup script selection.
* Tcl variable 'tcl_interactive' is now linked to C variable
'tty' so that one can disable/enable interactive prompts
at the script level when there is no startup script. This
is meant for use by the test suite.
* Consistent use of the Tcl libraries standard channels as
returned by Tcl_GetStdChannel(); as opposed to the channels
named 'stdin', 'stdout', and 'stderr' in the master interp,
which can be different or unavailable.
* Tcl_Main now calls Tcl_Exit() if evaluation of [exit] in the
master interpreter returns, assuring Tcl_Main does not return. * Documented Tcl_Main's absence from public stub table
* Documented that Tcl_Main does not return.
* Documented Tcl variables set by Tcl_Main.
* All prompts are done from a single procedure, Prompt.
* Use of Tcl_Obj-enabled interfaces everywhere.
* generic/tclInt.decls (TclGetStartupScriptPath,
TclSetStartupScriptPath): New internal VFS-aware routines for
managing the startup script of Tcl_Main.
* generic/tclIntDecls.h:
* generic/tclStubInit.c: make genstubs
* generic/tclTest.c (TestsetmainloopCmd,TestexitmainloopCmd,
Tcltest_Init,TestinterpdeleteCmd):
* tests/main.test (new): Added new file to test suite that
thoroughly tests generic/tclMain.c; added some new test commands
for testing Tcl_SetMainLoop().
|
|
|
|
|
|
| |
** changes for 8.4, some already backported to 8.3.4 (patch #435658)
see ChangeLog for details
|
|
|
|
| |
This deprecates TclpGetTime in favor of new Tcl_GetTime.
|
|
|
|
|
|
| |
ability of the [lindex] command to have multiple index arguments,
and adds the [lset] command. Both commands are byte-code compiled.
[Patch #471874] (work by Kenny, commited by Hobbs)
|
|
|
|
|
|
|
|
|
|
| |
Added to internal stubs table. Tclcompiler (Tclpro project)
needs them if used as loadable package under Windows. Changed
signatures. We don't want to describe compiler internal
structures in "tclInt.h".
* generic/tclCompile.h: S.a. Removed function declarations.
* generic/tclCompile.c: S.a. Adapted to changed signatures.
|