| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tests/namespace.test (namespace-17.10-12): reverted commit of
2004-05-23 and removed the tests, as it interferes with the
varname resolver and there are apps that break (AlphaTk). A fix
will have to wait for Tcl9.
* generic/tclVar.c: Caching of namespace variables disabled: no
simple way was found to avoid interfering with the resolver's idea
of variable existence. A cached varName may keep a variable's name
in the namespace's hash table, which is the resolver's criterion
for existence.
* tests/namespace.c (namespace-17.10): testing for interference
between varname caching and name resolver.
|
|
|
|
|
|
|
| |
insuring that no "zombie" variables are found.
* generic/tclVar.c (TclLookupSimpleVar): comments re [Bug 736729]
(predecessor of [Bug 959052]) removed.
* tests/namespace.test: added tests 17.10-12
|
|
|
|
|
|
|
|
| |
(in tcl8.4) exteriorisations of [Bug 736729] due to the use of
tclNsVarNameType obj types. Reenabling the use of this objType
("VAR ref absolute" benchmark down to 66 ms, from 230).
Added comments in TclLookupSimpleVar explaining my current
understanding of [Bug 736729].
|
|
|
|
|
| |
tclNsVarNameType objs is still disabled, pending resolution of
[Bug 736729].
|
|
|
|
|
|
|
|
| |
* doc/upvar.n:
* generic/tclVar.c (ObjMakeUpvar):
* tests/upvar.test (upvar-8.11):
* tests/var.test (var-3.11): Avoid creation of unusable variables:
[Bug 600812] [TIP 184].
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclInt.h: Reworked the Tcl header files into a clean
* unix/tclUnixPort.h: hierarchy where tcl.h < tclPort.h < tclInt.h
* win/tclWinInt.h: and every C source file should #include
* win/tclWinPort.h: at most one of those files to satisfy its
declaration needs. tclWinInt.h and tclWinPort.h also better organized
so that tclWinPort.h includes the Windows implementation of
cross-platform declarations, while tclWinInt.h makes declarations that
are available on Windows only.
* generic/tclBinary.c (TCL_NO_MATH): Deleted the generic/tclMath.h
* generic/tclMath.h (removed): header file. The internal Tcl
* macosx/Makefile (PRIVATE_HEADERS): header, tclInt.h, has a
* win/tcl.dsp: #include <math.h> directly,
and file external to Tcl needing libm should do the same.
* win/Makefile.in (WIN_OBJS): Deleted the win/tclWinMtherr.c file.
* win/makefile.bc (TCLOBJS): It's a vestige from matherr() days
* win/makefile.vc (TCLOBJS): gone by.
* win/tcl.dsp:
* win/tclWinMtherr.c (removed):
|
|
|
|
|
|
|
| |
to 'Tcl_Panic' (the function). The #define
of panic in tcl.h clearly states it is
deprecated in the comments.
[Patch 865264]
|
|
|
|
| |
LOOKUP_FOR_UPVAR and TCL_PARSE_PART1 (deprecated) [Bug 835020]
|
|
|
|
|
| |
without having to convert it to a list (though lists are still preferred.)
[Bug 759935]
|
| |
|
|
|
|
|
| |
disabling usage of tclNsVarNameType.
* tests/var.test (var-15.1): test for [Bug 735335]
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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:
|
|
|
|
|
| |
* tests/var.test: fixing ObjMakeUpvar's lookup algorithm for the
created local variable, bugs #631741 and #696893.
|
|
|
|
| |
static declarations.
|
|
|
|
| |
* tests/var.test: [array names]. Added test. [Bug 624755]
|
|
|
|
| |
TCL_INTERP_DESTROYED flag when calling variable traces. [Tk Bug 605121]
|
|
|
|
| |
to dkf and dgp for the long and difficult discussion in the chat.
|
| |
|
|
|
|
| |
error return from TclGetFrame.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
|
|
|
| |
comments.
|
|
|
|
|
| |
prevented the parens from being restored. also removed goto label
as it was not necessary.
|
| |
|
|
|
|
| |
inconsistent with tclInt.h
|
|
|
|
| |
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:
|
|
|
|
|
| |
code. Added the new (but pre-existent in tcl.h) possible flag bit
TCL_TRACE_READS to Tcl_(Obj)?SetVar.*
|
|
|
|
| |
handling of its returned value into CallTraces itself.
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
* [Patch 506818] Updated interfaces of generic/tclHash.c (TIP 27).
* [Patch 506807] Updated interfaces of generic/tclObj.c (TIP 27).
* [Patch 507304] Updated interfaces of win/tclWin32.c (TIP 27).
* Update all callers.
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
overlooked before. Updated callers.
***POTENTIAL INCOMPATIBILITY***
Includes a source incompatibility in the tablePtr arguments of
the Tcl_GetIndexFromObj* routines.
|
| |
|
|
|
|
| |
array [Bug #449893].
|
| |
|
| |
|
|
|
|
|
|
| |
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)
|
|
|
|
|
| |
* generic/tclVar.c: Corrected bug in [global] when dealing
with variable names matching :*. [Bug 480176]
|
|
|
|
|
| |
generic/tclProc.c and generic/tclVar.c according to the guidelines
of TIP 27. [Patch 465442]
|
| |
|
| |
|
|
|
|
|
| |
* generic/tclVar.c (Tcl_VariableObjCmd): added patch to check for
number of args. [Patch #426038]
|
|
|
|
|
|
|
|
|
|
|
| |
TCL_TRACE_READS flags to cause creation of part1 in TclLookupVar
to make sure newly created array will get read traces triggered
appropriately. This is called by Tcl_ObjGetVar2, Tcl_GetVar, and
Tcl_GetVar2.
(TclSetIndexedScalar, TclSetElementOfIndexedArray): added read
trace triggering for lappend case.
(Tcl_LappendObjCmd): pass TCL_TRACE_READS to Tcl_ObjGetVar2 to
trigger possible read traces for new arrays.
|