| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclBasic.c: conventions for functions with variable number
* generic/tclInt.h: of arguments. Support for varargs.h has been
* generic/tclPanic.c: implicitly gone for some time now. All
* generic/tclResult.c: TCL_VARARGS* macros purged from Tcl sources,
* generic/tclStringObj.c: leaving only some deprecated #define's
* tools/genStubs.tcl: in tcl.h for the sake of older extensions.
* generic/tclDecls.h: make genstubs
* doc/AddErrInfo.3: Replaced all documented requirement for use
* doc/Eval.3: of TCL_VARARGS_START() with requirement for
* doc/Panic.3: use of va_start().
* doc/SetResult.3:
* doc/StringObj.3:
|
|
|
|
| |
Still missing additional tests.
|
| |
|
| |
|
|
|
|
| |
It's crude (especially in the tests and docs department) and incomplete (no truncation on non-POSIX platforms).
|
| |
|
|
|
|
|
|
|
|
|
| |
cast of ClientData to (TraceCommandInfo *) when not warranted.
Thanks to Yuri Victorovich for the report. [Bug 1153871]
* generic/tcl.h: Moved flag values TCL_TRACE_ENTER_EXEC and
* generic/tclInt.h: TCL_TRACE_LEAVE_EXEC from public interface
into private. Should be used only by internal workings of
execution traces.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclDecls.h: Regenerated from tcl.decls.
* generic/tclStubInit.c:
* doc/CrtChannel.3: Documentation of extended API,
* generic/tcl.decls: extended testsuite, and
* generic/tcl.h: implementation. Removal of old
* generic/tclIO.c: driver-specific TclpCut/Splice
* generic/tclInt.h: functions. Replaced with generic
* tests/io.test: thread-action calls through the
* unix/tclUnixChan.c: new hooks. Update of all builtin
* unix/tclUnixPipe.c: channel drivers to version 4.
* unix/tclUnixSock.c: Windows drivers extended to
* win/tclWinChan.c: manage thread state in a thread
* win/tclWinConsole.c: action handler.
* win/tclWinPipe.c:
* win/tclWinSerial.c:
* win/tclWinSock.c:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclDecls.h: the modified tcl.decls (TIP #233, see below).
* doc/GetTime.3: Implemented TIP #233, i.e. the
* generic/tcl.decls: 'Virtualization of Tcl's Sense of Time'.
* generic/tcl.h: Declared, implemented, and documented the
* generic/tclInt.h: specified new API functions. Moved the
* unix/tclUnixEvent.c: native (OS) access to time information
* unix/tclUnixNotfy.c: into standard handler functions. Inserted
* unix/tclUnixTime.c: hooks calling on the handlers where native
* win/tclWinNotify.c: access was done before, and where scaling
* win/tclWinTime.c: between domains (real/virtual) is required.
|
|
|
|
| |
Ensembles now have a C API. :^)
|
|
|
|
|
| |
sees function pointer typedef linkage consistent with earlier Tcl
releases. [Bug 1082349].
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
data type Tcl_StatBuf relies on config information. For now,
disabled the use of the tclConfig.h file until its full impact
on Tcl's interface can be assessed.
* unix/configure: autoconf-2.57
* generic/tcl.h: Moved the #include "tclConfig.h" out of
* generic/tclInt.h: tcl.h. The config settings are not part of
* generic/tclPort.: the public interface, and having it there
breaks compiled against uninstalled Tcl and extensions using
autoconf-2.5*.
|
|
|
|
|
|
| |
* unix/configure.in: changed HAVE_CONFIG_H to HAVE_TCL_CONFIG_H.
* unix/configure: autoconf-2.57
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclBasic.c: Define [::tcl::Bgerror] in new interps.
* generic/tclEvent.c: Update Tcl_BackgroundError to make use
of the registered [interp bgerror] command.
* generic/tclInterp.c: New [interp bgerror] subcommand.
* tests/interp.test: syntax tests updated.
TIP #226 IMPLEMENTATION
* generic/tcl.decls: Stubs for Tcl_(Save|Restore|Discard)InterpState
* generic/tcl.h: New public opaque type, Tcl_InterpState.
* generic/tclInt.h: Drop old private declarations. Add
Tcl(Get|Set)BgErrorHandler
* generic/tclResult.c: Tcl_*InterpState implementations.
* generic/tclDictObj.c: Update callers.
* generic/tclIOGT.c:
* generic/tclTrace.c:
TIP #227 IMPLEMENTATION
* generic/tcl.decls: Stubs for Tcl_(Get|Set)ReturnOptions.
* generic/tclInt.h: Drop old private declarations.
* generic/tclResult.c: Tcl_*ReturnOptions implementations.
* generic/tclCmdAH.c: Update callers.
* generic/tclMain.c:
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclInt.h:
* unix/Makefile.in: include tclConfig.h from tcl.h and install it
as a public header. Normalized compiler include path order to
-I${BUILD_DIR} -I${UNIX_DIR} -I${GENERIC_DIR}.
* unix/dltest/Makefile.in: add ${BUILD_DIR}/.. to include path
to pick up tclConfig.h.
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclDecls.h: from tclInt.h of setting the
* generic/tclInt.h: TCL_STORAGE_CLASS macro to the
* generic/tclIntDecls.h: tcl*Decls.h files now that no
* generic/tclIntPlatDecls.h: use of EXTERN is left in tclInt.h.
* generic/tclPlatDecls.h: Proto for Tcl_Main moved in tcl.h
* win/tclWinPort.h: to prior the inclusion of the Stubs
headers as they are now resetting TCL_STORAGE_CLASS. Removed
extrainious reset from tclWinPort.h. [Patch 1055668]
|
| |
|
|
|
|
|
| |
coresponding closing block as it serves no purpose given that all
the function prototypes have the proper extern usage already.
|
|
|
|
|
| |
in a straw poll. Also made T_DODone;T_DONext a non-fatal sequence, leading
to simplified code.
|
|
|
|
|
| |
* generic/tclIOGT.c: Channel version fixed, must be 3, to have
wideseekProc. Thanks to David Graveraux <davygrvy@pobox.com>.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
build works again.
* generic/tclDecls.h: Changes to the tests for
* generic/tclInt.decls: clock frequency in
* generic/tclIntDecls.h: Tcl_WinTime
* generic/tclIntPlatDecls.h: so that any clock frequency
* generic/tclPlatDecls.h: is accepted provided that
* generic/tclStubInit.c: all CPU's in the system share
* tests/platform.test (platform-1.3): a common chip, and hence,
* win/tclWin32Dll.c (TclWinCPUID): presumably, a common clock.
* win/tclWinTest.c (TestwincpuidCmd) This change necessitated a
* win/tclWinTime.c (Tcl_GetTime): 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]
|
|
|
|
|
|
| |
rejecting the "fix" for "Bug" 945570. Tcl_FSSeek() needs the
values of SEEK_SET, etc. and too many extensions rely on tcl.h
providing stdio.h for them.
|
| |
|
| |
|
|
|
|
| |
* generic/tclInt.h: [Bugs 926459, 926486]
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* tools/tcl.wse.in: distinguish HEAD of CVS development
* unix/configure.in: from the recent 8.5a1 release.
* unix/tcl.spec:
* win/README.binary:
* win/configure.in:
* unix/configure: autoconf-2.57
* win/configure:
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
block. This alows us to build Tcl to check for deprecated functions in use, such
as panic() and Tcl_Ckalloc(). By request from DKF.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/Tcl.n: of the new leading {expand} syntax on words.
* generic/tcl.h: Parses such words as the new Tcl_Token type
* generic/tclBasic.c: TCL_TOKEN_EXPAND_WORD. Updated Tcl_EvalEx
* generic/tclCompile.c: and the bytecode compiler/execution engine
* generic/tclCompile.h: to recognize the new token type. New opcodes
* generic/tclExecute.c: INST_LIST_VERIFY and INST_INVOKE_EXP and a new
* generic/tclParse.c: operand type OPERAND_ULIST1 are defined. Docs
* generic/tclTest.c: and tests are included.
* tests/basic.test:
* tests/compile.test:
* tests/parse.test:
* library/auto.tcl: Replaced several [eval]s used to perform
* library/package.tcl: argument expansion with the new syntax.
* library/safe.tcl: In the test files lindex.test and lset.test,
* tests/cmdInfo.test: replaced use of [eval] to force direct
* tests/encoding.test: string evaluation with use of [testevalex]
* tests/execute.test: which more directly and robustly serves the
* tests/fCmd.test: same purpose.
* tests/http.test:
* tests/init.test:
* tests/interp.test:
* tests/io.test:
* tests/ioUtil.test:
* tests/iogt.test:
* tests/lindex.test:
* tests/lset.test:
* tests/namespace-old.test:
* tests/namespace.test:
* tests/pkg.test:
* tests/pkgMkIndex.test:
* tests/proc.test:
* tests/reg.test:
* tests/trace.test:
* tests/upvar.test:
* tests/winConsole.test:
* tests/winFCmd.test:
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* generic/tcl.h: Updated Tcl_ConvertCountedElement() to quote
* generic/tclUtil.c: the leading "#" character of all list elements
unless the TCL_DONT_QUOTE_HASH flag is passed in.
* generic/tclDictObj.c: Updated Tcl_ConvertCountedElement() callers
* generic/tclListObj.c: to pass in the TCL_DONT_QUOTE_HASH flags
* generic/tclResult.c: when appropriate.
|
|
|
|
| |
follow soon.
|
|
|
|
| |
has a bug in its preprocessor and can't build Tcl even with this minor patch.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
since it made the sizeof(Tcl_Obj) different for
regular vs mem debug builds.
* generic/tclInt.h: Define TclDecrRefCount in terms
of Tcl_DbDecrRefCount which removes one layer of
inderection.
* generic/tclObj.c (TclDbInitNewObj, Tcl_DbIncrRefCount,
Tcl_DbDecrRefCount, Tcl_DbIsShared):
Define ThreadSpecificData that contains a hashtable.
The table is used to ensure that a Tcl_Obj is only
acted upon in the thread that allocated it. This
checking code is enabled only when mem debug and
threads are enabled.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the ref count of a Tcl_Obj is the thread that
originally allocated the thread. This fail fast
behavior will catch programming errors that
allow a single Tcl_Obj to be accessed from multiple
threads.
* generic/tcl.h (Tcl_Obj): Add allocThread member
to Tcl_Obj. This member records the thread id the
Tcl_Obj was allocated. It is used to check that
any future ref count incr or decr is done from
the same thread that allocated the Tcl_Obj.
This member is defined only when threads and
mem debug are enabled.
* generic/tclInt.h (TclNewObj, TclDbNewObj,
TclDecrRefCount):
Define TclNewObj and TclDbNewObj using TclDbInitNewObj
when mem debug is enabled. This fixes a problem where
TclNewObj calls did not work the same as TclDbNewObj
when mem debug was enabled.
* generic/tclObj.c (TclDbInitNewObj, Tcl_DbIncrRefCount,
Tcl_DbDecrRefCount): Add new helper to init Tcl_Obj
members when mem debug is enabled. Init the allocThread
member in TclDbInitNewObj and check it in
Tcl_DbIncrRefCount and Tcl_DbDecrRefCount to make sure
a Tcl_Obj allocated in one thread is not being acted
upon in another thread.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
configure detects non-functional chflags(). [Bug 748946]
* macosx/Makefile: Rewrote buildsystem for Mac OS X framework build
to be purely make driven; in order to become independent of Apple's
closed-source IDE and build tool. The changes are intended to be
transparent to the Makefile user, all existing make targets and
cmd line variable overrides should continue to work.
Changed build to only include tcl specific html help in Tcl.framework,
the tk specific html help is now included in Tk.framework.
Added var to allow overriding of tclsh used during html help
building (Landon Fuller).
* macosx/Tcl.pbproj/project.pbxproj:
* macosx/Tcl.pbproj/jingham.pbxuser: Changed to purely call through
to the make driven buildsystem; Tcl.framework is no longer assembled
by ProjectBuilder.
Set default SYMROOT in target options to simplify setting up PB
(manually setting common build folder for tcl & tk no longer needed).
* tools/tcltk-man2html.tcl: Added options to allow building only the
tcl or tk html help files; the default behaviour with none of the new
options is to build both, as before.
* unix/Makefile.in: Added targets for building only the tcl or tk help.
* macosx/README (new): Tcl specific excerpts of tk/macosx/README.
* generic/tcl.h: Updated reminder comment about editing
macosx/Tcl.pbproj/project.pbxproj when version number changes.
|
|
|
|
|
| |
* generic/regcustom.h: make line to support UCS-4 mode. No config
arg at this time, as it is not the recommended build mode.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tcl.h: 'tip-59-implementation' branch into the CVS
* generic/tclBasic.c: head. Regenerated stub table. Regenerated
* generic/tclInt.h: the configure's scripts, with help from Joe
* generic/tclDecls.h English.
* generic/tclStubInit.c:
* generic/tclConfig.c:
* generic/tclPkgConfig.c:
* unix/Makefile.in:
* unix/configure.in: The changes in the windows section are not
* unix/tcl.m4: yet committed, they await feedback from
* unix/mkLinks: David Gravereaux.
* doc/RegConfig.3:
* mac/tclMacPkgConfig.c:
* tests/config.test:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclObj.c is defined on all platforms, even those where
* generic/tclPort.h TCL_WIDE_INT_IS_LONG is defined. Also made
the Tcl_Value struct have a wideValue field on all platforms. This is
a ***POTENTIAL INCOMPATIBILITY*** for TCL_WIDE_INT_IS_LONG platforms
because that struct changes size. This is the same TIP 72
incompatibility that was seen on other platforms at the 8.4.0 release,
when this change should have happened as well. [Bug 713562]
* generic/tclInt.h: New internal macros TclGetWide() and
TclGetLongFromWide() to deal with both forms of the "wideInt"
Tcl_ObjType, so that conditional TCL_WIDE_INT_IS_LONG code
is confined to the header file.
* generic/tclCmdAH.c: Replaced most coding that was conditional
* generic/tclCmdIL.c: on TCL_WIDE_INT_IS_LONG with code that
* generic/tclExecute.c: works across platforms, sometimes using
* generic/tclTest.c: the new macros above to do it.
* generic/tclUtil.c:
* generic/tclVar.c:
|
|
|
|
| |
declaration and stubs entries.)
|
|
|
|
|
| |
* win/tclWinPipe.c: from tcl.h -- they are not part of Tcl's
public interface. Put them in win/tclWinPipe.c where they are used.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tcl.h: Tcl to 8.5a0.
* library.init.tcl:
* mac/README:
* macosx/Tcl.pbproj/project.pbxproc:
* tests/basic.test:
* tools/configure.in:
* tools/tcl.hpj.in:
* tools/tcl.wse.in:
* unix/configure.in:
* unix/tcl.spec:
* win/README:
* win/README.binary:
* win/configure.in:
* win/makefile.bc:
* win/makefile.vc:
* win/tcl.m4:
* tools/configure: autoconf
* unix/configure:
* win/configure:
|