summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorstanton <stanton>1999-03-05 20:18:02 (GMT)
committerstanton <stanton>1999-03-05 20:18:02 (GMT)
commit4848a73bb6c843cd8ba7e7d036ccf9c76a7ab6a4 (patch)
tree48c4d4ac8a137bb69266d3385e3c1376636de8c7
parentbd758c72b2b9652bcd22a8856ee0bf804c80b699 (diff)
downloadtcl-4848a73bb6c843cd8ba7e7d036ccf9c76a7ab6a4.zip
tcl-4848a73bb6c843cd8ba7e7d036ccf9c76a7ab6a4.tar.gz
tcl-4848a73bb6c843cd8ba7e7d036ccf9c76a7ab6a4.tar.bz2
* generic/tclCompile.h:
* generic/tclStubInit.c: * generic/tclCompileDecls.h: * generic/tclCompileStubs.c: * generic/tclInt.decls: Added functions from tclCompile.h into a new tclCompile interface. * generic/tclStubs.c: * generic/tclDecls.h: * generic/tcl.decls: Added Tcl_InitMemory. * generic/tclStubLib.c: Changed to define USE_TCL_STUBS and USE_TCL_STUB_PROCS automatically. * unix/Makefile.in: Changes to get stubs mechanism working. * generic/tclGetDate.y: Updated to reflect tclDate.c changes. * tools/genStubs.tcl: * generic/tclProc.c: * generic/tclStubInit.c: * generic/tclTest.c: * unix/tclUnixFile.c: * unix/tclUnixPort.h: lint * win/makefile.vc: * generic/tclAlloc.c: Changed USE_NATIVEMALLOC to USE_NATIVE_MALLOC.
-rw-r--r--ChangeLog173
-rw-r--r--generic/tcl.decls1008
-rw-r--r--generic/tcl.h3
-rw-r--r--generic/tclAlloc.c8
-rw-r--r--generic/tclCompile.h56
-rw-r--r--generic/tclCompileDecls.h265
-rw-r--r--generic/tclCompileStubs.c278
-rw-r--r--generic/tclDecls.h2266
-rw-r--r--generic/tclGetDate.y14
-rw-r--r--generic/tclInt.decls881
-rw-r--r--generic/tclProc.c4
-rw-r--r--generic/tclStubInit.c621
-rw-r--r--generic/tclStubLib.c113
-rw-r--r--generic/tclStubs.c2669
-rw-r--r--generic/tclTest.c3
-rw-r--r--tools/genStubs.tcl4
-rw-r--r--unix/Makefile.in115
-rw-r--r--unix/tclUnixFile.c4
-rw-r--r--unix/tclUnixPort.h4
-rw-r--r--win/makefile.vc8
20 files changed, 8378 insertions, 119 deletions
diff --git a/ChangeLog b/ChangeLog
new file mode 100644
index 0000000..69c51dc
--- /dev/null
+++ b/ChangeLog
@@ -0,0 +1,173 @@
+1999-03-05 <stanton@GASPODE>
+
+ * generic/tclCompile.h:
+ * generic/tclStubInit.c:
+ * generic/tclCompileDecls.h:
+ * generic/tclCompileStubs.c:
+ * generic/tclInt.decls: Added functions from tclCompile.h into a
+ new tclCompile interface.
+
+ * generic/tclStubs.c:
+ * generic/tclDecls.h:
+ * generic/tcl.decls: Added Tcl_InitMemory.
+
+ * generic/tclStubLib.c: Changed to define USE_TCL_STUBS and
+ USE_TCL_STUB_PROCS automatically.
+
+ * unix/Makefile.in: Changes to get stubs mechanism working.
+
+ * generic/tclGetDate.y: Updated to reflect tclDate.c changes.
+
+ * tools/genStubs.tcl:
+ * generic/tclProc.c:
+ * generic/tclStubInit.c:
+ * generic/tclTest.c:
+ * unix/tclUnixFile.c:
+ * unix/tclUnixPort.h: lint
+
+ * win/makefile.vc:
+ * generic/tclAlloc.c: Changed USE_NATIVEMALLOC to USE_NATIVE_MALLOC.
+
+1999-03-03 <stanton@GASPODE>
+
+ * unix/tclUnixTime.c: Added TclpGetDate and TclStrftime.
+
+ * unix/tclUnixSock.c: Added TclHasSockets.
+
+ * unix/tclUnixPort.h: Eliminated various Tclp* macros that have
+ been replaced with function defintions.
+
+ * win/tclWinInt.h:
+ * win/tclWin32Dll.c:
+ * unix/tclUnixInit.c: Added TclpCheckStackSpace.
+
+ * unix/tclUnixFile.c:
+ * mac/tclMacShLib.exp:
+ * mac/tclMacFile.c:
+ * generic/tclFileName.c:
+ * win/tclWinFile.c: Renamed TclpGetUserHome back to
+ TclGetUserHome for patch level compatibility.
+
+ * unix/tclUnixFile.c: Added TclpAccess and TclpState.
+
+ * win/tclWinPort.h:
+ * mac/tclMacPort.h:
+ * mac/tclMacInt.h:
+ * mac/tclMac.h:
+ * generic/tcl.decls: Added Mac specific declarations.
+
+ * mac/tclMacChan.c: Added stub implementation of
+ Tcl_MakeFileChannel that doesn't do anything. This could be
+ implemented at a later date.
+
+ * generic/tclStubLib.c: Added internal interface hooks.
+
+ * generic/tclStubs.c:
+ * generic/tclStubInit.c: Added undefs for all of the TCL_MEM_DEBUG
+ macros to avoid conflicts with the stub names.
+
+ * generic/tclStubInit.c:
+ * generic/tclInt.h:
+ * generic/tclInt.decls: Moved some declarations out of the generic
+ and into the platform specific sections. Added missing
+ declarations and Mac specific declarations.
+
+ * win/tclWinTime.c:
+ * unix/tclUnixTime.c:
+ * mac/tclMacTime.c:
+ * generic/tclInt.h:
+ * generic/tclDate.c:
+ * generic/tclClock.c: Created a new opaque TclpTime_t type so
+ generic functions that depend on the format of time_t can appear
+ in the generic header files.
+
+ * unix/Makefile.in:
+ * generic/tclAlloc.c: Changed so stub versions of TclpAlloc,
+ etc. are generated when TCL_MEM_DEBUG is not defined.
+
+ * generic/tclStubInit.c:
+ * generic/tclPanic.c:
+ * generic/tcl.h:
+ * generic/tcl.decls: renamed Tcl_Panic back to panic to avoid
+ incompatibilities in a patch release.
+
+1999-03-02 <stanton@GASPODE>
+
+ * unix/Makefile.in:
+ * unix/configure.in:
+ * unix/ldAix: Enhanced AIX shared library support.
+
+ * win/tclWinSock.c: Removed a bunch of extraneous PASCAL FAR
+ attributes from internal functions.
+
+ * win/tclWinReg.c: Changed registry package to use stubs mechanism
+ so it no longer depends on the specific version of Tcl.
+
+ * doc/AddErrInfo.3:
+ * doc/Eval.3:
+ * doc/PkgRequire.3:
+ * doc/SetResult.3:
+ * doc/StringObj.3:
+ * generic/tcl.h:
+ * generic/tclBasic.c:
+ * generic/tclPanic.c:
+ * generic/tclStringObj.c:
+ * generic/tclUtil.c:
+ * unix/mkLinks: Added va_list versions of all VARARGS
+ functions so they can be invoked from the stub functions.
+
+ * doc/package.n:
+ * doc/PkgRequire.3:
+ * generic/tclPkg.c: Added Tcl_PkgProvideEx, Tcl_RequireEx,
+ Tcl_PresentEx, and Tcl_PkgPresent. Added "package present"
+ command.
+
+ * generic/tclFileName.c:
+ * mac/tclMacFile.c:
+ * mac/tclMacShLib.exp:
+ * unix/tclUnixFile.c:
+ * win/tclWinFile.c: Changed so TclGetUserHome is defined on
+ all platforms, even though it is currently a noop on mac and
+ windows, and renamed it to TclpGetUserHome.
+
+ * generic/tclCkalloc.c: Added stub versions of memory checking
+ functions when compiling without TCL_MEM_DEBUG.
+
+ * doc/ByteArrObj.3:
+ * generic/tcl.h:
+ * generic/tclBinary.c:
+ * generic/tclObj.c: Ported the 8.1 ByteArray type back to 8.0.
+
+ * generic/tcl.decls:
+ * generic/tcl.h:
+ * generic/tclBasic.c:
+ * generic/tclDecls.h:
+ * generic/tclInt.decls:
+ * generic/tclInt.h:
+ * generic/tclIntDecls.h:
+ * generic/tclIntPlatDecls.h:
+ * generic/tclIntPlatStubs.c:
+ * generic/tclIntStubs.c:
+ * generic/tclPlatDecls.h:
+ * generic/tclPlatStubs.c:
+ * generic/tclStubInit.c:
+ * generic/tclStubLib.c:
+ * generic/tclStubs.c:
+ * tools/genStubs.tcl:
+ * unix/configure.in:
+ * unix/Makefile.in:
+ * unix/tclConfig.sh.in:
+ * win/makefile.vc:
+ * win/tclWinPort.h: Added Tcl stubs implementation. There are
+ now two new macros USE_TCL_STUBS and USE_TCL_STUB_PROCS that
+ enable use of stubs and disable stub macros respectively. All of
+ the public and private function declarations from tcl.h and
+ tclInt.h have moved into the *.decls files and the *Stubs.c and
+ *Decls.h files are generated using the genStubs.tcl script.
+
+1999-02-27 <stanton@GASPODE>
+
+ * generic/tclPanic.c:
+ * generic/panic.c: renamed panic to Tcl_Panic, added macro for
+ backwards compatibility, renamed file to tclPanic.c
+
diff --git a/generic/tcl.decls b/generic/tcl.decls
new file mode 100644
index 0000000..95edda0
--- /dev/null
+++ b/generic/tcl.decls
@@ -0,0 +1,1008 @@
+# tcl.decls --
+#
+# This file contains the declarations for all supported public
+# functions that are exported by the Tcl library via the stubs table.
+# This file is used to generate the tclDecls.h, tclPlatDecls.h,
+# tclStub.c, and tclPlatStub.c files.
+#
+#
+# Copyright (c) 1998-1999 by Scriptics Corporation.
+# See the file "license.terms" for information on usage and redistribution
+# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
+#
+# RCS: @(#) $Id: tcl.decls,v 1.2.2.1 1999/03/05 20:18:02 stanton Exp $
+
+library tcl
+
+# Define the tcl interface with several sub interfaces:
+# tclPlat - platform specific public
+# tclInt - generic private
+# tclPlatInt - platform specific private
+# tclCompile - private compiler/execution module fucntions
+
+interface tcl
+hooks {tclPlat tclInt tclIntPlat tclCompile}
+
+# Declare each of the functions in the public Tcl interface. Note that
+# the an index should never be reused for a different function in order
+# to preserve backwards compatibility.
+
+declare 0 generic {
+ void Tcl_AddErrorInfo (Tcl_Interp *interp, char *message)
+}
+declare 1 generic {
+ void Tcl_AddObjErrorInfo(Tcl_Interp *interp, char *message, int length)
+}
+declare 2 generic {
+ char * Tcl_Alloc(unsigned int size)
+}
+declare 3 generic {
+ void Tcl_AllowExceptions(Tcl_Interp *interp)
+}
+declare 4 generic {
+ int Tcl_AppendAllObjTypes(Tcl_Interp *interp, Tcl_Obj *objPtr)
+}
+declare 5 generic {
+ void Tcl_AppendElement(Tcl_Interp *interp, char *string)
+}
+declare 6 generic {
+ void Tcl_AppendResult(Tcl_Interp *interp, ...)
+}
+declare 7 generic {
+ void Tcl_AppendResultVA(Tcl_Interp *interp, va_list argList)
+}
+declare 8 generic {
+ void Tcl_AppendToObj(Tcl_Obj *objPtr, char *bytes, int length)
+}
+declare 9 generic {
+ void Tcl_AppendStringsToObj(Tcl_Obj *objPtr, ...)
+}
+declare 10 generic {
+ void Tcl_AppendStringsToObjVA(Tcl_Obj *objPtr, va_list argList)
+}
+declare 11 generic {
+ Tcl_AsyncHandler Tcl_AsyncCreate(Tcl_AsyncProc *proc, \
+ ClientData clientData)
+}
+declare 12 generic {
+ void Tcl_AsyncDelete(Tcl_AsyncHandler async)
+}
+declare 13 generic {
+ int Tcl_AsyncInvoke(Tcl_Interp *interp, int code)
+}
+declare 14 generic {
+ void Tcl_AsyncMark(Tcl_AsyncHandler async)
+}
+declare 15 generic {
+ int Tcl_AsyncReady(void)
+}
+declare 16 generic {
+ void Tcl_BackgroundError(Tcl_Interp *interp)
+}
+declare 17 generic {
+ char Tcl_Backslash(CONST char *src, int *readPtr)
+}
+declare 18 generic {
+ int Tcl_BadChannelOption(Tcl_Interp *interp, char *optionName, \
+ char *optionList)
+}
+declare 19 generic {
+ void Tcl_CallWhenDeleted(Tcl_Interp *interp, Tcl_InterpDeleteProc *proc, \
+ ClientData clientData)
+}
+declare 20 generic {
+ void Tcl_CancelIdleCall(Tcl_IdleProc *idleProc, ClientData clientData)
+}
+declare 21 generic {
+ int Tcl_Close(Tcl_Interp *interp, Tcl_Channel chan)
+}
+declare 22 generic {
+ int Tcl_CommandComplete(char *cmd)
+}
+declare 23 generic {
+ char * Tcl_Concat(int argc, char **argv)
+}
+declare 24 generic {
+ Tcl_Obj * Tcl_ConcatObj(int objc, Tcl_Obj *CONST objv[])
+}
+declare 25 generic {
+ int Tcl_ConvertCountedElement(CONST char *src, int length, char *dst, \
+ int flags)
+}
+declare 26 generic {
+ int Tcl_ConvertElement(CONST char *src, char *dst, int flags)
+}
+declare 27 generic {
+ int Tcl_ConvertToType(Tcl_Interp *interp, Tcl_Obj *objPtr, \
+ Tcl_ObjType *typePtr)
+}
+declare 28 generic {
+ int Tcl_CreateAlias(Tcl_Interp *slave, char *slaveCmd, \
+ Tcl_Interp *target, char *targetCmd, int argc, char **argv)
+}
+declare 29 generic {
+ int Tcl_CreateAliasObj(Tcl_Interp *slave, char *slaveCmd, \
+ Tcl_Interp *target, char *targetCmd, int objc, \
+ Tcl_Obj *CONST objv[])
+}
+declare 30 generic {
+ Tcl_Channel Tcl_CreateChannel(Tcl_ChannelType *typePtr, char *chanName, \
+ ClientData instanceData, int mask)
+}
+declare 31 generic {
+ void Tcl_CreateChannelHandler(Tcl_Channel chan, int mask, \
+ Tcl_ChannelProc *proc, ClientData clientData)
+}
+declare 32 generic {
+ void Tcl_CreateCloseHandler(Tcl_Channel chan, Tcl_CloseProc *proc, \
+ ClientData clientData)
+}
+declare 33 generic {
+ Tcl_Command Tcl_CreateCommand(Tcl_Interp *interp, char *cmdName, \
+ Tcl_CmdProc *proc, ClientData clientData, \
+ Tcl_CmdDeleteProc *deleteProc)
+}
+declare 34 generic {
+ void Tcl_CreateEventSource(Tcl_EventSetupProc *setupProc, \
+ Tcl_EventCheckProc *checkProc, ClientData clientData)
+}
+declare 35 generic {
+ void Tcl_CreateExitHandler(Tcl_ExitProc *proc, ClientData clientData)
+}
+declare 36 generic {
+ Tcl_Interp * Tcl_CreateInterp(void)
+}
+declare 37 generic {
+ void Tcl_CreateMathFunc(Tcl_Interp *interp, char *name, int numArgs, \
+ Tcl_ValueType *argTypes, Tcl_MathProc *proc, ClientData clientData)
+}
+declare 38 generic {
+ Tcl_Command Tcl_CreateObjCommand(Tcl_Interp *interp, char *cmdName, \
+ Tcl_ObjCmdProc *proc, ClientData clientData, \
+ Tcl_CmdDeleteProc *deleteProc)
+}
+declare 39 generic {
+ Tcl_Interp * Tcl_CreateSlave(Tcl_Interp *interp, char *slaveName, \
+ int isSafe)
+}
+declare 40 generic {
+ Tcl_TimerToken Tcl_CreateTimerHandler(int milliseconds, \
+ Tcl_TimerProc *proc, ClientData clientData)
+}
+declare 41 generic {
+ Tcl_Trace Tcl_CreateTrace(Tcl_Interp *interp, int level, \
+ Tcl_CmdTraceProc *proc, ClientData clientData)
+}
+declare 42 generic {
+ char * Tcl_DbCkalloc(unsigned int size, char *file, int line)
+}
+declare 43 generic {
+ int Tcl_DbCkfree(char *ptr, char *file, int line)
+}
+declare 44 generic {
+ char * Tcl_DbCkrealloc(char *ptr, unsigned int size, char *file, int line)
+}
+declare 45 generic {
+ void Tcl_DbDecrRefCount(Tcl_Obj *objPtr, char *file, int line)
+}
+declare 46 generic {
+ void Tcl_DbIncrRefCount(Tcl_Obj *objPtr, char *file, int line)
+}
+declare 47 generic {
+ int Tcl_DbIsShared(Tcl_Obj *objPtr, char *file, int line)
+}
+declare 48 generic {
+ Tcl_Obj * Tcl_DbNewBooleanObj(int boolValue, char *file, int line)
+}
+declare 49 generic {
+ Tcl_Obj * Tcl_DbNewByteArrayObj(unsigned char *bytes, int length, \
+ char *file, int line)
+}
+declare 50 generic {
+ Tcl_Obj * Tcl_DbNewDoubleObj(double doubleValue, char *file, int line)
+}
+declare 51 generic {
+ Tcl_Obj * Tcl_DbNewListObj(int objc, Tcl_Obj *CONST objv[], char *file, \
+ int line)
+}
+declare 52 generic {
+ Tcl_Obj * Tcl_DbNewLongObj(long longValue, char *file, int line)
+}
+declare 53 generic {
+ Tcl_Obj * Tcl_DbNewObj(char *file, int line)
+}
+declare 54 generic {
+ Tcl_Obj * Tcl_DbNewStringObj(char *bytes, int length, char *file, int line)
+}
+declare 55 generic {
+ void Tcl_DeleteAssocData(Tcl_Interp *interp, char *name)
+}
+declare 56 generic {
+ int Tcl_DeleteCommand(Tcl_Interp *interp, char *cmdName)
+}
+declare 57 generic {
+ int Tcl_DeleteCommandFromToken(Tcl_Interp *interp, Tcl_Command command)
+}
+declare 58 generic {
+ void Tcl_DeleteChannelHandler(Tcl_Channel chan, Tcl_ChannelProc *proc, \
+ ClientData clientData)
+}
+declare 59 generic {
+ void Tcl_DeleteCloseHandler(Tcl_Channel chan, Tcl_CloseProc *proc, \
+ ClientData clientData)
+}
+declare 60 generic {
+ void Tcl_DeleteEvents(Tcl_EventDeleteProc *proc, ClientData clientData)
+}
+declare 61 generic {
+ void Tcl_DeleteEventSource(Tcl_EventSetupProc *setupProc, \
+ Tcl_EventCheckProc *checkProc, ClientData clientData)
+}
+declare 62 generic {
+ void Tcl_DeleteExitHandler(Tcl_ExitProc *proc, ClientData clientData)
+}
+declare 63 generic {
+ void Tcl_DeleteHashEntry(Tcl_HashEntry *entryPtr)
+}
+declare 64 generic {
+ void Tcl_DeleteHashTable(Tcl_HashTable *tablePtr)
+}
+declare 65 generic {
+ void Tcl_DeleteInterp(Tcl_Interp *interp)
+}
+declare 66 generic {
+ void Tcl_DeleteTimerHandler(Tcl_TimerToken token)
+}
+declare 67 generic {
+ void Tcl_DeleteTrace(Tcl_Interp *interp, Tcl_Trace trace)
+}
+declare 68 generic {
+ void Tcl_DetachPids(int numPids, Tcl_Pid *pidPtr)
+}
+declare 69 generic {
+ void Tcl_DontCallWhenDeleted(Tcl_Interp *interp, \
+ Tcl_InterpDeleteProc *proc, ClientData clientData)
+}
+declare 70 generic {
+ int Tcl_DoOneEvent(int flags)
+}
+declare 71 generic {
+ void Tcl_DoWhenIdle(Tcl_IdleProc *proc, ClientData clientData)
+}
+declare 72 generic {
+ char * Tcl_DStringAppend(Tcl_DString *dsPtr, CONST char *string, \
+ int length)
+}
+declare 73 generic {
+ char * Tcl_DStringAppendElement(Tcl_DString *dsPtr, CONST char *string)
+}
+declare 74 generic {
+ void Tcl_DStringEndSublist(Tcl_DString *dsPtr)
+}
+declare 75 generic {
+ void Tcl_DStringFree(Tcl_DString *dsPtr)
+}
+declare 76 generic {
+ void Tcl_DStringGetResult(Tcl_Interp *interp, Tcl_DString *dsPtr)
+}
+declare 77 generic {
+ void Tcl_DStringInit(Tcl_DString *dsPtr)
+}
+declare 78 generic {
+ void Tcl_DStringResult(Tcl_Interp *interp, Tcl_DString *dsPtr)
+}
+declare 79 generic {
+ void Tcl_DStringSetLength(Tcl_DString *dsPtr, int length)
+}
+declare 80 generic {
+ void Tcl_DStringStartSublist(Tcl_DString *dsPtr)
+}
+declare 81 generic {
+ int Tcl_DumpActiveMemory(char *fileName)
+}
+declare 82 generic {
+ Tcl_Obj * Tcl_DuplicateObj(Tcl_Obj *objPtr)
+}
+declare 83 generic {
+ int Tcl_Eof(Tcl_Channel chan)
+}
+declare 84 generic {
+ char * Tcl_ErrnoId(void)
+}
+declare 85 generic {
+ char * Tcl_ErrnoMsg(int err)
+}
+declare 86 generic {
+ int Tcl_Eval(Tcl_Interp *interp, char *string)
+}
+declare 87 generic {
+ int Tcl_EvalFile(Tcl_Interp *interp, char *fileName)
+}
+declare 88 generic {
+ void Tcl_EventuallyFree(ClientData clientData, Tcl_FreeProc *freeProc)
+}
+declare 89 generic {
+ int Tcl_EvalObj(Tcl_Interp *interp, Tcl_Obj *objPtr)
+}
+declare 90 generic {
+ void Tcl_Exit(int status)
+}
+declare 91 generic {
+ int Tcl_ExposeCommand(Tcl_Interp *interp, char *hiddenCmdToken, \
+ char *cmdName)
+}
+declare 92 generic {
+ int Tcl_ExprBoolean(Tcl_Interp *interp, char *string, int *ptr)
+}
+declare 93 generic {
+ int Tcl_ExprBooleanObj(Tcl_Interp *interp, Tcl_Obj *objPtr, int *ptr)
+}
+declare 94 generic {
+ int Tcl_ExprDouble(Tcl_Interp *interp, char *string, double *ptr)
+}
+declare 95 generic {
+ int Tcl_ExprDoubleObj(Tcl_Interp *interp, Tcl_Obj *objPtr, double *ptr)
+}
+declare 96 generic {
+ int Tcl_ExprLong(Tcl_Interp *interp, char *string, long *ptr)
+}
+declare 97 generic {
+ int Tcl_ExprLongObj(Tcl_Interp *interp, Tcl_Obj *objPtr, long *ptr)
+}
+declare 98 generic {
+ int Tcl_ExprObj(Tcl_Interp *interp, Tcl_Obj *objPtr, \
+ Tcl_Obj **resultPtrPtr)
+}
+declare 99 generic {
+ int Tcl_ExprString(Tcl_Interp *interp, char *string)
+}
+declare 100 generic {
+ void Tcl_Finalize(void)
+}
+declare 101 generic {
+ void Tcl_FindExecutable(char *argv0)
+}
+declare 102 generic {
+ Tcl_HashEntry * Tcl_FirstHashEntry(Tcl_HashTable *tablePtr, \
+ Tcl_HashSearch *searchPtr)
+}
+declare 103 generic {
+ int Tcl_Flush(Tcl_Channel chan)
+}
+declare 104 generic {
+ void Tcl_Free(char *ptr)
+}
+declare 105 generic {
+ void TclFreeObj(Tcl_Obj *objPtr)
+}
+declare 106 generic {
+ void Tcl_FreeResult(Tcl_Interp *interp)
+}
+declare 107 generic {
+ int Tcl_GetAlias(Tcl_Interp *interp, char *slaveCmd, \
+ Tcl_Interp **targetInterpPtr, char **targetCmdPtr, int *argcPtr, char ***argvPtr)
+}
+declare 108 generic {
+ int Tcl_GetAliasObj(Tcl_Interp *interp, char *slaveCmd, \
+ Tcl_Interp **targetInterpPtr, char **targetCmdPtr, int *objcPtr, Tcl_Obj ***objv)
+}
+declare 109 generic {
+ ClientData Tcl_GetAssocData(Tcl_Interp *interp, char *name, \
+ Tcl_InterpDeleteProc **procPtr)
+}
+declare 110 generic {
+ int Tcl_GetBoolean(Tcl_Interp *interp, char *string, int *boolPtr)
+}
+declare 111 generic {
+ int Tcl_GetBooleanFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, \
+ int *boolPtr)
+}
+declare 112 generic {
+ unsigned char * Tcl_GetByteArrayFromObj(Tcl_Obj *objPtr, int *lengthPtr)
+}
+declare 113 generic {
+ Tcl_Channel Tcl_GetChannel(Tcl_Interp *interp, char *chanName, \
+ int *modePtr)
+}
+declare 114 generic {
+ int Tcl_GetChannelBufferSize(Tcl_Channel chan)
+}
+declare 115 generic {
+ int Tcl_GetChannelHandle(Tcl_Channel chan, int direction, \
+ ClientData *handlePtr)
+}
+declare 116 generic {
+ ClientData Tcl_GetChannelInstanceData(Tcl_Channel chan)
+}
+declare 117 generic {
+ int Tcl_GetChannelMode(Tcl_Channel chan)
+}
+declare 118 generic {
+ char * Tcl_GetChannelName(Tcl_Channel chan)
+}
+declare 119 generic {
+ int Tcl_GetChannelOption(Tcl_Interp *interp, Tcl_Channel chan, \
+ char *optionName, Tcl_DString *dsPtr)
+}
+declare 120 generic {
+ Tcl_ChannelType * Tcl_GetChannelType(Tcl_Channel chan)
+}
+declare 121 generic {
+ int Tcl_GetCommandInfo(Tcl_Interp *interp, char *cmdName, \
+ Tcl_CmdInfo *infoPtr)
+}
+declare 122 generic {
+ char * Tcl_GetCommandName(Tcl_Interp *interp, Tcl_Command command)
+}
+declare 123 generic {
+ int Tcl_GetDouble(Tcl_Interp *interp, char *string, double *doublePtr)
+}
+declare 124 generic {
+ int Tcl_GetDoubleFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, \
+ double *doublePtr)
+}
+declare 125 generic {
+ int Tcl_GetErrno(void)
+}
+declare 126 generic {
+ char * Tcl_GetHostName(void)
+}
+declare 127 generic {
+ int Tcl_GetIndexFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, \
+ char **tablePtr, char *msg, int flags, int *indexPtr)
+}
+declare 128 generic {
+ int Tcl_GetInt(Tcl_Interp *interp, char *string, int *intPtr)
+}
+declare 129 generic {
+ int Tcl_GetInterpPath(Tcl_Interp *askInterp, Tcl_Interp *slaveInterp)
+}
+declare 130 generic {
+ int Tcl_GetIntFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, int *intPtr)
+}
+declare 131 generic {
+ int Tcl_GetLongFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, long *longPtr)
+}
+declare 132 generic {
+ Tcl_Interp * Tcl_GetMaster(Tcl_Interp *interp)
+}
+declare 133 generic {
+ CONST char * Tcl_GetNameOfExecutable(void)
+}
+declare 134 generic {
+ Tcl_Obj * Tcl_GetObjResult(Tcl_Interp *interp)
+}
+declare 135 generic {
+ Tcl_ObjType * Tcl_GetObjType(char *typeName)
+}
+declare 136 generic {
+ Tcl_PathType Tcl_GetPathType(char *path)
+}
+declare 137 generic {
+ int Tcl_Gets(Tcl_Channel chan, Tcl_DString *dsPtr)
+}
+declare 138 generic {
+ int Tcl_GetsObj(Tcl_Channel chan, Tcl_Obj *objPtr)
+}
+declare 139 generic {
+ int Tcl_GetServiceMode(void)
+}
+declare 140 generic {
+ Tcl_Interp * Tcl_GetSlave(Tcl_Interp *interp, char *slaveName)
+}
+declare 141 generic {
+ Tcl_Channel Tcl_GetStdChannel(int type)
+}
+declare 142 generic {
+ char * Tcl_GetStringFromObj(Tcl_Obj *objPtr, int *lengthPtr)
+}
+declare 143 generic {
+ char * Tcl_GetStringResult(Tcl_Interp *interp)
+}
+declare 144 generic {
+ char * Tcl_GetVar(Tcl_Interp *interp, char *varName, int flags)
+}
+declare 145 generic {
+ char * Tcl_GetVar2(Tcl_Interp *interp, char *part1, char *part2, int flags)
+}
+declare 146 generic {
+ int Tcl_GlobalEval(Tcl_Interp *interp, char *command)
+}
+declare 147 generic {
+ int Tcl_GlobalEvalObj(Tcl_Interp *interp, Tcl_Obj *objPtr)
+}
+declare 148 generic {
+ char * Tcl_HashStats(Tcl_HashTable *tablePtr)
+}
+declare 149 generic {
+ int Tcl_HideCommand(Tcl_Interp *interp, char *cmdName, \
+ char *hiddenCmdToken)
+}
+declare 150 generic {
+ int Tcl_Init(Tcl_Interp *interp)
+}
+declare 151 generic {
+ void Tcl_InitHashTable(Tcl_HashTable *tablePtr, int keyType)
+}
+declare 152 generic {
+ void Tcl_InitMemory(Tcl_Interp *interp)
+}
+declare 153 generic {
+ int Tcl_InputBlocked(Tcl_Channel chan)
+}
+declare 154 generic {
+ int Tcl_InputBuffered(Tcl_Channel chan)
+}
+declare 155 generic {
+ int Tcl_InterpDeleted(Tcl_Interp *interp)
+}
+declare 156 generic {
+ int Tcl_IsSafe(Tcl_Interp *interp)
+}
+declare 157 generic {
+ void Tcl_InvalidateStringRep(Tcl_Obj *objPtr)
+}
+declare 158 generic {
+ char * Tcl_JoinPath(int argc, char **argv, Tcl_DString *resultPtr)
+}
+declare 159 generic {
+ int Tcl_LinkVar(Tcl_Interp *interp, char *varName, char *addr, int type)
+}
+declare 160 generic {
+ int Tcl_ListObjAppendList(Tcl_Interp *interp, Tcl_Obj *listPtr, \
+ Tcl_Obj *elemListPtr)
+}
+declare 161 generic {
+ int Tcl_ListObjAppendElement(Tcl_Interp *interp, Tcl_Obj *listPtr, \
+ Tcl_Obj *objPtr)
+}
+declare 162 generic {
+ int Tcl_ListObjGetElements(Tcl_Interp *interp, Tcl_Obj *listPtr, \
+ int *objcPtr, Tcl_Obj ***objvPtr)
+}
+declare 163 generic {
+ int Tcl_ListObjIndex(Tcl_Interp *interp, Tcl_Obj *listPtr, int index, \
+ Tcl_Obj **objPtrPtr)
+}
+declare 164 generic {
+ int Tcl_ListObjLength(Tcl_Interp *interp, Tcl_Obj *listPtr, int *intPtr)
+}
+declare 165 generic {
+ int Tcl_ListObjReplace(Tcl_Interp *interp, Tcl_Obj *listPtr, int first, \
+ int count, int objc, Tcl_Obj *CONST objv[])
+}
+declare 166 generic {
+ Tcl_Channel Tcl_MakeFileChannel(ClientData handle, int mode)
+}
+declare 167 generic {
+ int Tcl_MakeSafe(Tcl_Interp *interp)
+}
+declare 168 generic {
+ Tcl_Channel Tcl_MakeTcpClientChannel(ClientData tcpSocket)
+}
+declare 169 generic {
+ char * Tcl_Merge(int argc, char **argv)
+}
+declare 170 generic {
+ Tcl_Obj * Tcl_NewBooleanObj(int boolValue)
+}
+declare 171 generic {
+ Tcl_Obj * Tcl_NewByteArrayObj(unsigned char *bytes, int length)
+}
+declare 172 generic {
+ Tcl_Obj * Tcl_NewDoubleObj(double doubleValue)
+}
+declare 173 generic {
+ Tcl_Obj * Tcl_NewIntObj(int intValue)
+}
+declare 174 generic {
+ Tcl_Obj * Tcl_NewListObj(int objc, Tcl_Obj *CONST objv[])
+}
+declare 175 generic {
+ Tcl_Obj * Tcl_NewLongObj(long longValue)
+}
+declare 176 generic {
+ Tcl_Obj * Tcl_NewObj(void)
+}
+declare 177 generic {
+ Tcl_Obj *Tcl_NewStringObj(char *bytes, int length)
+}
+declare 178 generic {
+ Tcl_HashEntry * Tcl_NextHashEntry(Tcl_HashSearch *searchPtr)
+}
+declare 179 generic {
+ void Tcl_NotifyChannel(Tcl_Channel channel, int mask)
+}
+declare 180 generic {
+ Tcl_Obj * Tcl_ObjGetVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr, \
+ Tcl_Obj *part2Ptr, int flags)
+}
+declare 181 generic {
+ Tcl_Obj * Tcl_ObjSetVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr, \
+ Tcl_Obj *part2Ptr, Tcl_Obj *newValuePtr, int flags)
+}
+declare 182 generic {
+ Tcl_Channel Tcl_OpenCommandChannel(Tcl_Interp *interp, int argc, \
+ char **argv, int flags)
+}
+declare 183 generic {
+ Tcl_Channel Tcl_OpenFileChannel(Tcl_Interp *interp, char *fileName, \
+ char *modeString, int permissions)
+}
+declare 184 generic {
+ Tcl_Channel Tcl_OpenTcpClient(Tcl_Interp *interp, int port, \
+ char *address, char *myaddr, int myport, int async)
+}
+declare 185 generic {
+ Tcl_Channel Tcl_OpenTcpServer(Tcl_Interp *interp, int port, char *host, \
+ Tcl_TcpAcceptProc *acceptProc, ClientData callbackData)
+}
+declare 186 generic {
+ void panic(char *format, ...)
+}
+declare 187 generic {
+ void panicVA(char *format, va_list argList)
+}
+declare 188 generic {
+ char * Tcl_ParseVar(Tcl_Interp *interp, char *string, char **termPtr)
+}
+declare 189 generic {
+ char * Tcl_PkgPresent(Tcl_Interp *interp, char *name, char *version, \
+ int exact)
+}
+declare 190 generic {
+ char * Tcl_PkgPresentEx(Tcl_Interp *interp, char *name, char *version, \
+ int exact, ClientData *clientDataPtr)
+}
+declare 191 generic {
+ int Tcl_PkgProvide(Tcl_Interp *interp, char *name, char *version)
+}
+declare 192 generic {
+ int Tcl_PkgProvideEx(Tcl_Interp *interp, char *name, char *version, \
+ ClientData clientData)
+}
+declare 193 generic {
+ char * Tcl_PkgRequire(Tcl_Interp *interp, char *name, char *version, \
+ int exact)
+}
+declare 194 generic {
+ char * Tcl_PkgRequireEx(Tcl_Interp *interp, char *name, char *version, \
+ int exact, ClientData *clientDataPtr)
+}
+declare 195 generic {
+ char * Tcl_PosixError(Tcl_Interp *interp)
+}
+declare 196 generic {
+ void Tcl_Preserve(ClientData data)
+}
+declare 197 generic {
+ void Tcl_PrintDouble(Tcl_Interp *interp, double value, char *dst)
+}
+declare 198 generic {
+ int Tcl_PutEnv(CONST char *string)
+}
+declare 199 generic {
+ void Tcl_QueueEvent(Tcl_Event *evPtr, Tcl_QueuePosition position)
+}
+declare 200 generic {
+ int Tcl_Read(Tcl_Channel chan, char *bufPtr, int toRead)
+}
+declare 201 generic {
+ char * Tcl_Realloc(char *ptr, unsigned int size)
+}
+declare 202 generic {
+ void Tcl_ReapDetachedProcs(void)
+}
+declare 203 generic {
+ int Tcl_RecordAndEval(Tcl_Interp *interp, char *cmd, int flags)
+}
+declare 204 generic {
+ int Tcl_RecordAndEvalObj(Tcl_Interp *interp, Tcl_Obj *cmdPtr, int flags)
+}
+declare 205 generic {
+ Tcl_RegExp Tcl_RegExpCompile(Tcl_Interp *interp, char *string)
+}
+declare 206 generic {
+ int Tcl_RegExpExec(Tcl_Interp *interp, Tcl_RegExp regexp, char *string, \
+ char *start)
+}
+declare 207 generic {
+ int Tcl_RegExpMatch(Tcl_Interp *interp, char *string, char *pattern)
+}
+declare 208 generic {
+ void Tcl_RegExpRange(Tcl_RegExp regexp, int index, char **startPtr, \
+ char **endPtr)
+}
+declare 209 generic {
+ void Tcl_RegisterChannel(Tcl_Interp *interp, Tcl_Channel chan)
+}
+declare 210 generic {
+ void Tcl_RegisterObjType(Tcl_ObjType *typePtr)
+}
+declare 211 generic {
+ void Tcl_Release(ClientData clientData)
+}
+declare 212 generic {
+ void Tcl_ResetResult(Tcl_Interp *interp)
+}
+declare 213 generic {
+ int Tcl_ScanCountedElement(CONST char *string, int length, int *flagPtr)
+}
+declare 214 generic {
+ int Tcl_ScanElement(CONST char *string, int *flagPtr)
+}
+declare 215 generic {
+ int Tcl_Seek(Tcl_Channel chan, int offset, int mode)
+}
+declare 216 generic {
+ int Tcl_ServiceAll(void)
+}
+declare 217 generic {
+ int Tcl_ServiceEvent(int flags)
+}
+declare 218 generic {
+ void Tcl_SetAssocData(Tcl_Interp *interp, char *name, \
+ Tcl_InterpDeleteProc *proc, ClientData clientData)
+}
+declare 219 generic {
+ void Tcl_SetBooleanObj(Tcl_Obj *objPtr, int boolValue)
+}
+declare 220 generic {
+ unsigned char * Tcl_SetByteArrayLength(Tcl_Obj *objPtr, int length)
+}
+declare 221 generic {
+ void Tcl_SetByteArrayObj(Tcl_Obj *objPtr, unsigned char *bytes, int length)
+}
+declare 222 generic {
+ void Tcl_SetChannelBufferSize(Tcl_Channel chan, int sz)
+}
+declare 223 generic {
+ int Tcl_SetChannelOption(Tcl_Interp *interp, Tcl_Channel chan, \
+ char *optionName, char *newValue)
+}
+declare 224 generic {
+ int Tcl_SetCommandInfo(Tcl_Interp *interp, char *cmdName, \
+ Tcl_CmdInfo *infoPtr)
+}
+declare 225 generic {
+ void Tcl_SetDoubleObj(Tcl_Obj *objPtr, double doubleValue)
+}
+declare 226 generic {
+ void Tcl_SetErrno(int err)
+}
+declare 227 generic {
+ void Tcl_SetErrorCode(Tcl_Interp *interp, ...)
+}
+declare 228 generic {
+ void Tcl_SetErrorCodeVA(Tcl_Interp *interp, va_list argList)
+}
+declare 229 generic {
+ void Tcl_SetIntObj(Tcl_Obj *objPtr, int intValue)
+}
+declare 230 generic {
+ void Tcl_SetListObj(Tcl_Obj *objPtr, int objc, Tcl_Obj *CONST objv[])
+}
+declare 231 generic {
+ void Tcl_SetLongObj(Tcl_Obj *objPtr, long longValue)
+}
+declare 232 generic {
+ void Tcl_SetMaxBlockTime(Tcl_Time *timePtr)
+}
+declare 233 generic {
+ void Tcl_SetObjErrorCode(Tcl_Interp *interp, Tcl_Obj *errorObjPtr)
+}
+declare 234 generic {
+ void Tcl_SetObjLength(Tcl_Obj *objPtr, int length)
+}
+declare 235 generic {
+ void Tcl_SetObjResult(Tcl_Interp *interp, Tcl_Obj *resultObjPtr)
+}
+declare 236 generic {
+ void Tcl_SetPanicProc(Tcl_PanicProc *panicProc)
+}
+declare 237 generic {
+ int Tcl_SetRecursionLimit(Tcl_Interp *interp, int depth)
+}
+declare 238 generic {
+ void Tcl_SetResult(Tcl_Interp *interp, char *string, \
+ Tcl_FreeProc *freeProc)
+}
+declare 239 generic {
+ int Tcl_SetServiceMode(int mode)
+}
+declare 240 generic {
+ void Tcl_SetStdChannel(Tcl_Channel channel, int type)
+}
+declare 241 generic {
+ void Tcl_SetStringObj(Tcl_Obj *objPtr, char *bytes, int length)
+}
+declare 242 generic {
+ void Tcl_SetTimer(Tcl_Time *timePtr)
+}
+declare 243 generic {
+ char * Tcl_SetVar(Tcl_Interp *interp, char *varName, char *newValue, \
+ int flags)
+}
+declare 244 generic {
+ char * Tcl_SetVar2(Tcl_Interp *interp, char *part1, char *part2, \
+ char *newValue, int flags)
+}
+declare 245 generic {
+ char * Tcl_SignalId(int sig)
+}
+declare 246 generic {
+ char * Tcl_SignalMsg(int sig)
+}
+declare 247 generic {
+ void Tcl_Sleep(int ms)
+}
+declare 248 generic {
+ void Tcl_SourceRCFile(Tcl_Interp *interp)
+}
+declare 249 generic {
+ int Tcl_SplitList(Tcl_Interp *interp, char *list, int *argcPtr, \
+ char ***argvPtr)
+}
+declare 250 generic {
+ void Tcl_SplitPath(char *path, int *argcPtr, char ***argvPtr)
+}
+declare 251 generic {
+ void Tcl_StaticPackage(Tcl_Interp *interp, char *pkgName, \
+ Tcl_PackageInitProc *initProc, Tcl_PackageInitProc *safeInitProc)
+}
+declare 252 generic {
+ int Tcl_StringMatch(char *string, char *pattern)
+}
+declare 253 generic {
+ int Tcl_Tell(Tcl_Channel chan)
+}
+declare 254 generic {
+ int Tcl_TraceVar(Tcl_Interp *interp, char *varName, int flags, \
+ Tcl_VarTraceProc *proc, ClientData clientData)
+}
+declare 255 generic {
+ int Tcl_TraceVar2(Tcl_Interp *interp, char *part1, char *part2, \
+ int flags, Tcl_VarTraceProc *proc, ClientData clientData)
+}
+declare 256 generic {
+ char * Tcl_TranslateFileName(Tcl_Interp *interp, char *name, \
+ Tcl_DString *bufferPtr)
+}
+declare 257 generic {
+ int Tcl_Ungets(Tcl_Channel chan, char *str, int len, int atHead)
+}
+declare 258 generic {
+ void Tcl_UnlinkVar(Tcl_Interp *interp, char *varName)
+}
+declare 259 generic {
+ int Tcl_UnregisterChannel(Tcl_Interp *interp, Tcl_Channel chan)
+}
+declare 260 generic {
+ int Tcl_UnsetVar(Tcl_Interp *interp, char *varName, int flags)
+}
+declare 261 generic {
+ int Tcl_UnsetVar2(Tcl_Interp *interp, char *part1, char *part2, int flags)
+}
+declare 262 generic {
+ void Tcl_UntraceVar(Tcl_Interp *interp, char *varName, int flags, \
+ Tcl_VarTraceProc *proc, ClientData clientData)
+}
+declare 263 generic {
+ void Tcl_UntraceVar2(Tcl_Interp *interp, char *part1, char *part2, \
+ int flags, Tcl_VarTraceProc *proc, ClientData clientData)
+}
+declare 264 generic {
+ void Tcl_UpdateLinkedVar(Tcl_Interp *interp, char *varName)
+}
+declare 265 generic {
+ int Tcl_UpVar(Tcl_Interp *interp, char *frameName, char *varName, \
+ char *localName, int flags)
+}
+declare 266 generic {
+ int Tcl_UpVar2(Tcl_Interp *interp, char *frameName, char *part1, \
+ char *part2, char *localName, int flags)
+}
+declare 267 generic {
+ void Tcl_ValidateAllMemory(char *file, int line)
+}
+declare 268 generic {
+ int Tcl_VarEval(Tcl_Interp *interp, ...)
+}
+declare 269 generic {
+ int Tcl_VarEvalVA(Tcl_Interp *interp, va_list argList)
+}
+declare 270 generic {
+ ClientData Tcl_VarTraceInfo(Tcl_Interp *interp, char *varName, \
+ int flags, Tcl_VarTraceProc *procPtr, ClientData prevClientData)
+}
+declare 271 generic {
+ ClientData Tcl_VarTraceInfo2(Tcl_Interp *interp, char *part1, \
+ char *part2, int flags, Tcl_VarTraceProc *procPtr, \
+ ClientData prevClientData)
+}
+declare 272 generic {
+ int Tcl_WaitForEvent(Tcl_Time *timePtr)
+}
+declare 273 generic {
+ Tcl_Pid Tcl_WaitPid(Tcl_Pid pid, int *statPtr, int options)
+}
+declare 274 generic {
+ int Tcl_Write(Tcl_Channel chan, char *s, int slen)
+}
+declare 275 generic {
+ void Tcl_WrongNumArgs(Tcl_Interp *interp, int objc, \
+ Tcl_Obj *CONST objv[], char *message)
+}
+
+##############################################################################
+
+# Define the platform specific public Tcl interface. These functions are
+# only available on the designated platform.
+
+interface tclPlat
+
+##################
+# Mac declarations
+
+# This is needed by the shells to handle Macintosh events.
+
+declare 0 mac {
+ void Tcl_MacSetEventProc(Tcl_MacConvertEventPtr procPtr)
+}
+
+# These routines are useful for handling using scripts from resources
+# in the application shell
+
+declare 1 mac {
+ char * Tcl_MacConvertTextResource(Handle resource)
+}
+declare 2 mac {
+ int Tcl_MacEvalResource(Tcl_Interp *interp, char *resourceName, \
+ int resourceNumber, char *fileName)
+}
+declare 3 mac {
+ Handle Tcl_MacFindResource(Tcl_Interp *interp, long resourceType, \
+ char *resourceName, int resourceNumber, char *resFileRef, \
+ int * releaseIt)
+}
+
+# These routines support the new OSType object type (i.e. the packed 4
+# character type and creator codes).
+
+declare 4 mac {
+ int Tcl_GetOSTypeFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, \
+ OSType *osTypePtr)
+}
+declare 5 mac {
+ void Tcl_SetOSTypeObj(Tcl_Obj *objPtr, OSType osType)
+}
+declare 6 mac {
+ Tcl_Obj * Tcl_NewOSTypeObj(OSType osType)
+}
+
+# These are not in MSL 2.1.2, so we need to export them from the
+# Tcl shared library. They are found in the compat directory
+# except the panic routine which is found in tclMacPanic.h.
+
+declare 7 mac {
+ int strncasecmp(CONST char *s1, CONST char *s2, size_t n)
+}
+declare 8 mac {
+ int strcasecmp(CONST char *s1, CONST char *s2)
+}
+
+
+####################
+# Unix declaractions
+
+declare 0 unix {
+ void Tcl_CreateFileHandler(int fd, int mask, Tcl_FileProc *proc, \
+ ClientData clientData)
+}
+declare 1 unix {
+ void Tcl_DeleteFileHandler(int fd)
+}
+declare 2 unix {
+ int Tcl_GetOpenFile(Tcl_Interp *interp, char *string, int write, \
+ int checkUsage, ClientData *filePtr)
+}
diff --git a/generic/tcl.h b/generic/tcl.h
index a4882e6..dbb5340 100644
--- a/generic/tcl.h
+++ b/generic/tcl.h
@@ -12,7 +12,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tcl.h,v 1.33.4.2 1999/03/04 01:01:57 stanton Exp $
+ * RCS: @(#) $Id: tcl.h,v 1.33.4.3 1999/03/05 20:18:03 stanton Exp $
*/
#ifndef _TCL
@@ -1105,7 +1105,6 @@ EXTERN char * Tcl_InitStubs _ANSI_ARGS_((Tcl_Interp *interp,
* Public functions that are not accessible via the stubs table.
*/
-EXTERN void Tcl_InitMemory _ANSI_ARGS_((Tcl_Interp *interp));
EXTERN void Tcl_Main _ANSI_ARGS_((int argc, char **argv,
Tcl_AppInitProc *appInitProc));
diff --git a/generic/tclAlloc.c b/generic/tclAlloc.c
index 5744302..ab032f2 100644
--- a/generic/tclAlloc.c
+++ b/generic/tclAlloc.c
@@ -14,13 +14,13 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclAlloc.c,v 1.3.4.1 1999/03/04 00:58:46 stanton Exp $
+ * RCS: @(#) $Id: tclAlloc.c,v 1.3.4.2 1999/03/05 20:18:03 stanton Exp $
*/
#include "tclInt.h"
#include "tclPort.h"
-#ifndef USE_NATIVEMALLOC
+#ifndef USE_NATIVE_MALLOC
#ifdef TCL_DEBUG
# define DEBUG
@@ -457,7 +457,7 @@ mstats(
}
#endif
-#else /* USE_NATIVEMALLOC */
+#else /* USE_NATIVE_MALLOC */
/*
@@ -531,4 +531,4 @@ TclpRealloc(
return (char*) realloc(cp, nbytes);
}
-#endif /* USE_NATIVEMALLOC */
+#endif /* USE_NATIVE_MALLOC */
diff --git a/generic/tclCompile.h b/generic/tclCompile.h
index afe3f3e..23eb072 100644
--- a/generic/tclCompile.h
+++ b/generic/tclCompile.h
@@ -6,7 +6,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclCompile.h,v 1.8 1998/09/14 18:39:58 stanton Exp $
+ * RCS: @(#) $Id: tclCompile.h,v 1.8.4.1 1999/03/05 20:18:03 stanton Exp $
*/
#ifndef _TCLCOMPILATION
@@ -771,61 +771,11 @@ typedef struct ResolvedCmdName {
*----------------------------------------------------------------
*/
-EXTERN void TclCleanupByteCode _ANSI_ARGS_((ByteCode *codePtr));
-EXTERN int TclCompileExpr _ANSI_ARGS_((Tcl_Interp *interp,
- char *string, char *lastChar, int flags,
- CompileEnv *envPtr));
-EXTERN int TclCompileQuotes _ANSI_ARGS_((Tcl_Interp *interp,
- char *string, char *lastChar, int termChar,
- int flags, CompileEnv *envPtr));
-EXTERN int TclCompileString _ANSI_ARGS_((Tcl_Interp *interp,
- char *string, char *lastChar, int flags,
- CompileEnv *envPtr));
-EXTERN int TclCompileDollarVar _ANSI_ARGS_((Tcl_Interp *interp,
- char *string, char *lastChar, int flags,
- CompileEnv *envPtr));
-EXTERN int TclCreateAuxData _ANSI_ARGS_((ClientData clientData,
- AuxDataType *typePtr, CompileEnv *envPtr));
-EXTERN ExecEnv * TclCreateExecEnv _ANSI_ARGS_((Tcl_Interp *interp));
-EXTERN void TclDeleteExecEnv _ANSI_ARGS_((ExecEnv *eePtr));
-EXTERN void TclEmitForwardJump _ANSI_ARGS_((CompileEnv *envPtr,
- TclJumpType jumpType, JumpFixup *jumpFixupPtr));
-EXTERN AuxDataType *TclGetAuxDataType _ANSI_ARGS_((char *typeName));
-EXTERN ExceptionRange * TclGetExceptionRangeForPc _ANSI_ARGS_((
- unsigned char *pc, int catchOnly,
- ByteCode* codePtr));
-EXTERN InstructionDesc * TclGetInstructionTable _ANSI_ARGS_(());
-EXTERN int TclExecuteByteCode _ANSI_ARGS_((Tcl_Interp *interp,
- ByteCode *codePtr));
-EXTERN void TclExpandCodeArray _ANSI_ARGS_((
- CompileEnv *envPtr));
-EXTERN void TclExpandJumpFixupArray _ANSI_ARGS_((
- JumpFixupArray *fixupArrayPtr));
-EXTERN void TclFinalizeAuxDataTypeTable _ANSI_ARGS_((void));
-EXTERN int TclFixupForwardJump _ANSI_ARGS_((
- CompileEnv *envPtr, JumpFixup *jumpFixupPtr,
- int jumpDist, int distThreshold));
-EXTERN void TclFreeCompileEnv _ANSI_ARGS_((CompileEnv *envPtr));
-EXTERN void TclFreeJumpFixupArray _ANSI_ARGS_((
- JumpFixupArray *fixupArrayPtr));
-EXTERN void TclInitAuxDataTypeTable _ANSI_ARGS_((void));
-EXTERN void TclInitByteCodeObj _ANSI_ARGS_((Tcl_Obj *objPtr,
- CompileEnv *envPtr));
-EXTERN void TclInitCompileEnv _ANSI_ARGS_((Tcl_Interp *interp,
- CompileEnv *envPtr, char *string));
-EXTERN void TclInitJumpFixupArray _ANSI_ARGS_((
- JumpFixupArray *fixupArrayPtr));
#ifdef TCL_COMPILE_STATS
EXTERN int TclLog2 _ANSI_ARGS_((int value));
#endif /*TCL_COMPILE_STATS*/
-EXTERN int TclObjIndexForString _ANSI_ARGS_((char *start,
- int length, int allocStrRep, int inHeap,
- CompileEnv *envPtr));
-EXTERN int TclPrintInstruction _ANSI_ARGS_((ByteCode* codePtr,
- unsigned char *pc));
-EXTERN void TclPrintSource _ANSI_ARGS_((FILE *outFile,
- char *string, int maxChars));
-EXTERN void TclRegisterAuxDataType _ANSI_ARGS_((AuxDataType *typePtr));
+
+#include "tclCompileDecls.h"
/*
*----------------------------------------------------------------
diff --git a/generic/tclCompileDecls.h b/generic/tclCompileDecls.h
new file mode 100644
index 0000000..b8e5378
--- /dev/null
+++ b/generic/tclCompileDecls.h
@@ -0,0 +1,265 @@
+/*
+ * tclCompileDecls.h --
+ *
+ * This file contains the declarations for functions that are used
+ * by the bytecode compiler and execution modules inside the Tcl
+ * core.. These interfaces are not guaranteed to remain the same between
+ * versions. Use at your own risk.
+ *
+ * Copyright (c) 1998-1999 by Scriptics Corporation.
+ * All rights reserved.
+ *
+ * RCS: @(#) $Id: tclCompileDecls.h,v 1.1.2.1 1999/03/05 20:18:04 stanton Exp $
+ */
+
+#ifndef _TCLCOMPILEDECLS
+#define _TCLCOMPILEDECLS
+
+/*
+ * WARNING: This file is automatically generated by the tools/genStubs.tcl
+ * script. Any modifications to the function declarations below should be made
+ * in the generic/tclInt.decls script.
+ */
+
+/* !BEGIN!: Do not edit below this line. */
+
+/*
+ * Exported function declarations:
+ */
+
+/* 0 */
+EXTERN void TclCleanupByteCode _ANSI_ARGS_((ByteCode * codePtr));
+/* 1 */
+EXTERN int TclCompileExpr _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, char * lastChar, int flags,
+ CompileEnv * envPtr));
+/* 2 */
+EXTERN int TclCompileQuotes _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, char * lastChar, int termChar,
+ int flags, CompileEnv * envPtr));
+/* 3 */
+EXTERN int TclCompileString _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, char * lastChar, int flags,
+ CompileEnv * envPtr));
+/* 4 */
+EXTERN int TclCompileDollarVar _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, char * lastChar, int flags,
+ CompileEnv * envPtr));
+/* 5 */
+EXTERN int TclCreateAuxData _ANSI_ARGS_((ClientData clientData,
+ AuxDataType * typePtr, CompileEnv * envPtr));
+/* 6 */
+EXTERN ExecEnv * TclCreateExecEnv _ANSI_ARGS_((Tcl_Interp * interp));
+/* 7 */
+EXTERN void TclDeleteExecEnv _ANSI_ARGS_((ExecEnv * eePtr));
+/* 8 */
+EXTERN void TclEmitForwardJump _ANSI_ARGS_((CompileEnv * envPtr,
+ TclJumpType jumpType,
+ JumpFixup * jumpFixupPtr));
+/* 9 */
+EXTERN AuxDataType * TclGetAuxDataType _ANSI_ARGS_((char * typeName));
+/* 10 */
+EXTERN ExceptionRange * TclGetExceptionRangeForPc _ANSI_ARGS_((
+ unsigned char * pc, int catchOnly,
+ ByteCode* codePtr));
+/* 11 */
+EXTERN InstructionDesc * TclGetInstructionTable _ANSI_ARGS_((void));
+/* 12 */
+EXTERN int TclExecuteByteCode _ANSI_ARGS_((Tcl_Interp * interp,
+ ByteCode * codePtr));
+/* 13 */
+EXTERN void TclExpandCodeArray _ANSI_ARGS_((CompileEnv * envPtr));
+/* 14 */
+EXTERN void TclExpandJumpFixupArray _ANSI_ARGS_((
+ JumpFixupArray * fixupArrayPtr));
+/* 15 */
+EXTERN void TclFinalizeAuxDataTypeTable _ANSI_ARGS_((void));
+/* 16 */
+EXTERN int TclFixupForwardJump _ANSI_ARGS_((CompileEnv * envPtr,
+ JumpFixup * jumpFixupPtr, int jumpDist,
+ int distThreshold));
+/* 17 */
+EXTERN void TclFreeCompileEnv _ANSI_ARGS_((CompileEnv * envPtr));
+/* 18 */
+EXTERN void TclFreeJumpFixupArray _ANSI_ARGS_((
+ JumpFixupArray * fixupArrayPtr));
+/* 19 */
+EXTERN void TclInitAuxDataTypeTable _ANSI_ARGS_((void));
+/* 20 */
+EXTERN void TclInitByteCodeObj _ANSI_ARGS_((Tcl_Obj * objPtr,
+ CompileEnv * envPtr));
+/* 21 */
+EXTERN void TclInitCompileEnv _ANSI_ARGS_((Tcl_Interp * interp,
+ CompileEnv * envPtr, char * string));
+/* 22 */
+EXTERN void TclInitJumpFixupArray _ANSI_ARGS_((
+ JumpFixupArray * fixupArrayPtr));
+/* 23 */
+EXTERN int TclObjIndexForString _ANSI_ARGS_((char * start,
+ int length, int allocStrRep, int inHeap,
+ CompileEnv * envPtr));
+/* 24 */
+EXTERN int TclPrintInstruction _ANSI_ARGS_((ByteCode* codePtr,
+ unsigned char * pc));
+/* 25 */
+EXTERN void TclPrintSource _ANSI_ARGS_((FILE * outFile,
+ char * string, int maxChars));
+/* 26 */
+EXTERN void TclRegisterAuxDataType _ANSI_ARGS_((
+ AuxDataType * typePtr));
+
+typedef struct TclCompileStubs {
+ int magic;
+ struct TclCompileStubHooks *hooks;
+
+ void (*tclCleanupByteCode) _ANSI_ARGS_((ByteCode * codePtr)); /* 0 */
+ int (*tclCompileExpr) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int flags, CompileEnv * envPtr)); /* 1 */
+ int (*tclCompileQuotes) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int termChar, int flags, CompileEnv * envPtr)); /* 2 */
+ int (*tclCompileString) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int flags, CompileEnv * envPtr)); /* 3 */
+ int (*tclCompileDollarVar) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int flags, CompileEnv * envPtr)); /* 4 */
+ int (*tclCreateAuxData) _ANSI_ARGS_((ClientData clientData, AuxDataType * typePtr, CompileEnv * envPtr)); /* 5 */
+ ExecEnv * (*tclCreateExecEnv) _ANSI_ARGS_((Tcl_Interp * interp)); /* 6 */
+ void (*tclDeleteExecEnv) _ANSI_ARGS_((ExecEnv * eePtr)); /* 7 */
+ void (*tclEmitForwardJump) _ANSI_ARGS_((CompileEnv * envPtr, TclJumpType jumpType, JumpFixup * jumpFixupPtr)); /* 8 */
+ AuxDataType * (*tclGetAuxDataType) _ANSI_ARGS_((char * typeName)); /* 9 */
+ ExceptionRange * (*tclGetExceptionRangeForPc) _ANSI_ARGS_((unsigned char * pc, int catchOnly, ByteCode* codePtr)); /* 10 */
+ InstructionDesc * (*tclGetInstructionTable) _ANSI_ARGS_((void)); /* 11 */
+ int (*tclExecuteByteCode) _ANSI_ARGS_((Tcl_Interp * interp, ByteCode * codePtr)); /* 12 */
+ void (*tclExpandCodeArray) _ANSI_ARGS_((CompileEnv * envPtr)); /* 13 */
+ void (*tclExpandJumpFixupArray) _ANSI_ARGS_((JumpFixupArray * fixupArrayPtr)); /* 14 */
+ void (*tclFinalizeAuxDataTypeTable) _ANSI_ARGS_((void)); /* 15 */
+ int (*tclFixupForwardJump) _ANSI_ARGS_((CompileEnv * envPtr, JumpFixup * jumpFixupPtr, int jumpDist, int distThreshold)); /* 16 */
+ void (*tclFreeCompileEnv) _ANSI_ARGS_((CompileEnv * envPtr)); /* 17 */
+ void (*tclFreeJumpFixupArray) _ANSI_ARGS_((JumpFixupArray * fixupArrayPtr)); /* 18 */
+ void (*tclInitAuxDataTypeTable) _ANSI_ARGS_((void)); /* 19 */
+ void (*tclInitByteCodeObj) _ANSI_ARGS_((Tcl_Obj * objPtr, CompileEnv * envPtr)); /* 20 */
+ void (*tclInitCompileEnv) _ANSI_ARGS_((Tcl_Interp * interp, CompileEnv * envPtr, char * string)); /* 21 */
+ void (*tclInitJumpFixupArray) _ANSI_ARGS_((JumpFixupArray * fixupArrayPtr)); /* 22 */
+ int (*tclObjIndexForString) _ANSI_ARGS_((char * start, int length, int allocStrRep, int inHeap, CompileEnv * envPtr)); /* 23 */
+ int (*tclPrintInstruction) _ANSI_ARGS_((ByteCode* codePtr, unsigned char * pc)); /* 24 */
+ void (*tclPrintSource) _ANSI_ARGS_((FILE * outFile, char * string, int maxChars)); /* 25 */
+ void (*tclRegisterAuxDataType) _ANSI_ARGS_((AuxDataType * typePtr)); /* 26 */
+} TclCompileStubs;
+
+extern TclCompileStubs *tclCompileStubsPtr;
+
+#if defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS)
+
+/*
+ * Inline function declarations:
+ */
+
+#ifndef TclCleanupByteCode
+#define TclCleanupByteCode(codePtr) \
+ (tclCompileStubsPtr->tclCleanupByteCode)(codePtr) /* 0 */
+#endif
+#ifndef TclCompileExpr
+#define TclCompileExpr(interp, string, lastChar, flags, envPtr) \
+ (tclCompileStubsPtr->tclCompileExpr)(interp, string, lastChar, flags, envPtr) /* 1 */
+#endif
+#ifndef TclCompileQuotes
+#define TclCompileQuotes(interp, string, lastChar, termChar, flags, envPtr) \
+ (tclCompileStubsPtr->tclCompileQuotes)(interp, string, lastChar, termChar, flags, envPtr) /* 2 */
+#endif
+#ifndef TclCompileString
+#define TclCompileString(interp, string, lastChar, flags, envPtr) \
+ (tclCompileStubsPtr->tclCompileString)(interp, string, lastChar, flags, envPtr) /* 3 */
+#endif
+#ifndef TclCompileDollarVar
+#define TclCompileDollarVar(interp, string, lastChar, flags, envPtr) \
+ (tclCompileStubsPtr->tclCompileDollarVar)(interp, string, lastChar, flags, envPtr) /* 4 */
+#endif
+#ifndef TclCreateAuxData
+#define TclCreateAuxData(clientData, typePtr, envPtr) \
+ (tclCompileStubsPtr->tclCreateAuxData)(clientData, typePtr, envPtr) /* 5 */
+#endif
+#ifndef TclCreateExecEnv
+#define TclCreateExecEnv(interp) \
+ (tclCompileStubsPtr->tclCreateExecEnv)(interp) /* 6 */
+#endif
+#ifndef TclDeleteExecEnv
+#define TclDeleteExecEnv(eePtr) \
+ (tclCompileStubsPtr->tclDeleteExecEnv)(eePtr) /* 7 */
+#endif
+#ifndef TclEmitForwardJump
+#define TclEmitForwardJump(envPtr, jumpType, jumpFixupPtr) \
+ (tclCompileStubsPtr->tclEmitForwardJump)(envPtr, jumpType, jumpFixupPtr) /* 8 */
+#endif
+#ifndef TclGetAuxDataType
+#define TclGetAuxDataType(typeName) \
+ (tclCompileStubsPtr->tclGetAuxDataType)(typeName) /* 9 */
+#endif
+#ifndef TclGetExceptionRangeForPc
+#define TclGetExceptionRangeForPc(pc, catchOnly, codePtr) \
+ (tclCompileStubsPtr->tclGetExceptionRangeForPc)(pc, catchOnly, codePtr) /* 10 */
+#endif
+#ifndef TclGetInstructionTable
+#define TclGetInstructionTable() \
+ (tclCompileStubsPtr->tclGetInstructionTable)() /* 11 */
+#endif
+#ifndef TclExecuteByteCode
+#define TclExecuteByteCode(interp, codePtr) \
+ (tclCompileStubsPtr->tclExecuteByteCode)(interp, codePtr) /* 12 */
+#endif
+#ifndef TclExpandCodeArray
+#define TclExpandCodeArray(envPtr) \
+ (tclCompileStubsPtr->tclExpandCodeArray)(envPtr) /* 13 */
+#endif
+#ifndef TclExpandJumpFixupArray
+#define TclExpandJumpFixupArray(fixupArrayPtr) \
+ (tclCompileStubsPtr->tclExpandJumpFixupArray)(fixupArrayPtr) /* 14 */
+#endif
+#ifndef TclFinalizeAuxDataTypeTable
+#define TclFinalizeAuxDataTypeTable() \
+ (tclCompileStubsPtr->tclFinalizeAuxDataTypeTable)() /* 15 */
+#endif
+#ifndef TclFixupForwardJump
+#define TclFixupForwardJump(envPtr, jumpFixupPtr, jumpDist, distThreshold) \
+ (tclCompileStubsPtr->tclFixupForwardJump)(envPtr, jumpFixupPtr, jumpDist, distThreshold) /* 16 */
+#endif
+#ifndef TclFreeCompileEnv
+#define TclFreeCompileEnv(envPtr) \
+ (tclCompileStubsPtr->tclFreeCompileEnv)(envPtr) /* 17 */
+#endif
+#ifndef TclFreeJumpFixupArray
+#define TclFreeJumpFixupArray(fixupArrayPtr) \
+ (tclCompileStubsPtr->tclFreeJumpFixupArray)(fixupArrayPtr) /* 18 */
+#endif
+#ifndef TclInitAuxDataTypeTable
+#define TclInitAuxDataTypeTable() \
+ (tclCompileStubsPtr->tclInitAuxDataTypeTable)() /* 19 */
+#endif
+#ifndef TclInitByteCodeObj
+#define TclInitByteCodeObj(objPtr, envPtr) \
+ (tclCompileStubsPtr->tclInitByteCodeObj)(objPtr, envPtr) /* 20 */
+#endif
+#ifndef TclInitCompileEnv
+#define TclInitCompileEnv(interp, envPtr, string) \
+ (tclCompileStubsPtr->tclInitCompileEnv)(interp, envPtr, string) /* 21 */
+#endif
+#ifndef TclInitJumpFixupArray
+#define TclInitJumpFixupArray(fixupArrayPtr) \
+ (tclCompileStubsPtr->tclInitJumpFixupArray)(fixupArrayPtr) /* 22 */
+#endif
+#ifndef TclObjIndexForString
+#define TclObjIndexForString(start, length, allocStrRep, inHeap, envPtr) \
+ (tclCompileStubsPtr->tclObjIndexForString)(start, length, allocStrRep, inHeap, envPtr) /* 23 */
+#endif
+#ifndef TclPrintInstruction
+#define TclPrintInstruction(codePtr, pc) \
+ (tclCompileStubsPtr->tclPrintInstruction)(codePtr, pc) /* 24 */
+#endif
+#ifndef TclPrintSource
+#define TclPrintSource(outFile, string, maxChars) \
+ (tclCompileStubsPtr->tclPrintSource)(outFile, string, maxChars) /* 25 */
+#endif
+#ifndef TclRegisterAuxDataType
+#define TclRegisterAuxDataType(typePtr) \
+ (tclCompileStubsPtr->tclRegisterAuxDataType)(typePtr) /* 26 */
+#endif
+
+#endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */
+
+/* !END!: Do not edit above this line. */
+
+#endif /* _TCLCOMPILEDECLS */
diff --git a/generic/tclCompileStubs.c b/generic/tclCompileStubs.c
new file mode 100644
index 0000000..624d1c7
--- /dev/null
+++ b/generic/tclCompileStubs.c
@@ -0,0 +1,278 @@
+/*
+ * tclCompileStubs.c --
+ *
+ * This file contains the wrapper functions for the unsupported
+ * tclCompile functions.
+ *
+ * Copyright (c) 1998-1999 by Scriptics Corporation.
+ * All rights reserved.
+ *
+ * RCS: @(#) $Id: tclCompileStubs.c,v 1.1.2.1 1999/03/05 20:18:04 stanton Exp $
+ */
+
+#include "tclCompile.h"
+
+/*
+ * WARNING: This file is automatically generated by the tools/genStubs.tcl
+ * script. Any modifications to the function declarations below should be made
+ * in the generic/tclInt.decls script.
+ */
+
+/* !BEGIN!: Do not edit below this line. */
+
+/*
+ * Exported stub functions:
+ */
+
+/* Slot 0 */
+void
+TclCleanupByteCode(codePtr)
+ ByteCode * codePtr;
+{
+ (tclCompileStubsPtr->tclCleanupByteCode)(codePtr);
+}
+
+/* Slot 1 */
+int
+TclCompileExpr(interp, string, lastChar, flags, envPtr)
+ Tcl_Interp * interp;
+ char * string;
+ char * lastChar;
+ int flags;
+ CompileEnv * envPtr;
+{
+ return (tclCompileStubsPtr->tclCompileExpr)(interp, string, lastChar, flags, envPtr);
+}
+
+/* Slot 2 */
+int
+TclCompileQuotes(interp, string, lastChar, termChar, flags, envPtr)
+ Tcl_Interp * interp;
+ char * string;
+ char * lastChar;
+ int termChar;
+ int flags;
+ CompileEnv * envPtr;
+{
+ return (tclCompileStubsPtr->tclCompileQuotes)(interp, string, lastChar, termChar, flags, envPtr);
+}
+
+/* Slot 3 */
+int
+TclCompileString(interp, string, lastChar, flags, envPtr)
+ Tcl_Interp * interp;
+ char * string;
+ char * lastChar;
+ int flags;
+ CompileEnv * envPtr;
+{
+ return (tclCompileStubsPtr->tclCompileString)(interp, string, lastChar, flags, envPtr);
+}
+
+/* Slot 4 */
+int
+TclCompileDollarVar(interp, string, lastChar, flags, envPtr)
+ Tcl_Interp * interp;
+ char * string;
+ char * lastChar;
+ int flags;
+ CompileEnv * envPtr;
+{
+ return (tclCompileStubsPtr->tclCompileDollarVar)(interp, string, lastChar, flags, envPtr);
+}
+
+/* Slot 5 */
+int
+TclCreateAuxData(clientData, typePtr, envPtr)
+ ClientData clientData;
+ AuxDataType * typePtr;
+ CompileEnv * envPtr;
+{
+ return (tclCompileStubsPtr->tclCreateAuxData)(clientData, typePtr, envPtr);
+}
+
+/* Slot 6 */
+ExecEnv *
+TclCreateExecEnv(interp)
+ Tcl_Interp * interp;
+{
+ return (tclCompileStubsPtr->tclCreateExecEnv)(interp);
+}
+
+/* Slot 7 */
+void
+TclDeleteExecEnv(eePtr)
+ ExecEnv * eePtr;
+{
+ (tclCompileStubsPtr->tclDeleteExecEnv)(eePtr);
+}
+
+/* Slot 8 */
+void
+TclEmitForwardJump(envPtr, jumpType, jumpFixupPtr)
+ CompileEnv * envPtr;
+ TclJumpType jumpType;
+ JumpFixup * jumpFixupPtr;
+{
+ (tclCompileStubsPtr->tclEmitForwardJump)(envPtr, jumpType, jumpFixupPtr);
+}
+
+/* Slot 9 */
+AuxDataType *
+TclGetAuxDataType(typeName)
+ char * typeName;
+{
+ return (tclCompileStubsPtr->tclGetAuxDataType)(typeName);
+}
+
+/* Slot 10 */
+ExceptionRange *
+TclGetExceptionRangeForPc(pc, catchOnly, codePtr)
+ unsigned char * pc;
+ int catchOnly;
+ ByteCode* codePtr;
+{
+ return (tclCompileStubsPtr->tclGetExceptionRangeForPc)(pc, catchOnly, codePtr);
+}
+
+/* Slot 11 */
+InstructionDesc *
+TclGetInstructionTable()
+{
+ return (tclCompileStubsPtr->tclGetInstructionTable)();
+}
+
+/* Slot 12 */
+int
+TclExecuteByteCode(interp, codePtr)
+ Tcl_Interp * interp;
+ ByteCode * codePtr;
+{
+ return (tclCompileStubsPtr->tclExecuteByteCode)(interp, codePtr);
+}
+
+/* Slot 13 */
+void
+TclExpandCodeArray(envPtr)
+ CompileEnv * envPtr;
+{
+ (tclCompileStubsPtr->tclExpandCodeArray)(envPtr);
+}
+
+/* Slot 14 */
+void
+TclExpandJumpFixupArray(fixupArrayPtr)
+ JumpFixupArray * fixupArrayPtr;
+{
+ (tclCompileStubsPtr->tclExpandJumpFixupArray)(fixupArrayPtr);
+}
+
+/* Slot 15 */
+void
+TclFinalizeAuxDataTypeTable()
+{
+ (tclCompileStubsPtr->tclFinalizeAuxDataTypeTable)();
+}
+
+/* Slot 16 */
+int
+TclFixupForwardJump(envPtr, jumpFixupPtr, jumpDist, distThreshold)
+ CompileEnv * envPtr;
+ JumpFixup * jumpFixupPtr;
+ int jumpDist;
+ int distThreshold;
+{
+ return (tclCompileStubsPtr->tclFixupForwardJump)(envPtr, jumpFixupPtr, jumpDist, distThreshold);
+}
+
+/* Slot 17 */
+void
+TclFreeCompileEnv(envPtr)
+ CompileEnv * envPtr;
+{
+ (tclCompileStubsPtr->tclFreeCompileEnv)(envPtr);
+}
+
+/* Slot 18 */
+void
+TclFreeJumpFixupArray(fixupArrayPtr)
+ JumpFixupArray * fixupArrayPtr;
+{
+ (tclCompileStubsPtr->tclFreeJumpFixupArray)(fixupArrayPtr);
+}
+
+/* Slot 19 */
+void
+TclInitAuxDataTypeTable()
+{
+ (tclCompileStubsPtr->tclInitAuxDataTypeTable)();
+}
+
+/* Slot 20 */
+void
+TclInitByteCodeObj(objPtr, envPtr)
+ Tcl_Obj * objPtr;
+ CompileEnv * envPtr;
+{
+ (tclCompileStubsPtr->tclInitByteCodeObj)(objPtr, envPtr);
+}
+
+/* Slot 21 */
+void
+TclInitCompileEnv(interp, envPtr, string)
+ Tcl_Interp * interp;
+ CompileEnv * envPtr;
+ char * string;
+{
+ (tclCompileStubsPtr->tclInitCompileEnv)(interp, envPtr, string);
+}
+
+/* Slot 22 */
+void
+TclInitJumpFixupArray(fixupArrayPtr)
+ JumpFixupArray * fixupArrayPtr;
+{
+ (tclCompileStubsPtr->tclInitJumpFixupArray)(fixupArrayPtr);
+}
+
+/* Slot 23 */
+int
+TclObjIndexForString(start, length, allocStrRep, inHeap, envPtr)
+ char * start;
+ int length;
+ int allocStrRep;
+ int inHeap;
+ CompileEnv * envPtr;
+{
+ return (tclCompileStubsPtr->tclObjIndexForString)(start, length, allocStrRep, inHeap, envPtr);
+}
+
+/* Slot 24 */
+int
+TclPrintInstruction(codePtr, pc)
+ ByteCode* codePtr;
+ unsigned char * pc;
+{
+ return (tclCompileStubsPtr->tclPrintInstruction)(codePtr, pc);
+}
+
+/* Slot 25 */
+void
+TclPrintSource(outFile, string, maxChars)
+ FILE * outFile;
+ char * string;
+ int maxChars;
+{
+ (tclCompileStubsPtr->tclPrintSource)(outFile, string, maxChars);
+}
+
+/* Slot 26 */
+void
+TclRegisterAuxDataType(typePtr)
+ AuxDataType * typePtr;
+{
+ (tclCompileStubsPtr->tclRegisterAuxDataType)(typePtr);
+}
+
+
+/* !END!: Do not edit above this line. */
diff --git a/generic/tclDecls.h b/generic/tclDecls.h
new file mode 100644
index 0000000..58779a3
--- /dev/null
+++ b/generic/tclDecls.h
@@ -0,0 +1,2266 @@
+/*
+ * tclDecls.h --
+ *
+ * Declarations of functions in the platform independent public Tcl API.
+ *
+ * Copyright (c) 1998-1999 by Scriptics Corporation.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
+ *
+ * RCS: @(#) $Id: tclDecls.h,v 1.2.2.1 1999/03/05 20:18:04 stanton Exp $
+ */
+
+#ifndef _TCLDECLS
+#define _TCLDECLS
+
+/*
+ * WARNING: This file is automatically generated by the tools/genStubs.tcl
+ * script. Any modifications to the function declarations below should be made
+ * in the generic/tcl.decls script.
+ */
+
+/* !BEGIN!: Do not edit below this line. */
+
+/*
+ * Exported function declarations:
+ */
+
+/* 0 */
+EXTERN void Tcl_AddErrorInfo _ANSI_ARGS_((Tcl_Interp * interp,
+ char * message));
+/* 1 */
+EXTERN void Tcl_AddObjErrorInfo _ANSI_ARGS_((Tcl_Interp * interp,
+ char * message, int length));
+/* 2 */
+EXTERN char * Tcl_Alloc _ANSI_ARGS_((unsigned int size));
+/* 3 */
+EXTERN void Tcl_AllowExceptions _ANSI_ARGS_((Tcl_Interp * interp));
+/* 4 */
+EXTERN int Tcl_AppendAllObjTypes _ANSI_ARGS_((
+ Tcl_Interp * interp, Tcl_Obj * objPtr));
+/* 5 */
+EXTERN void Tcl_AppendElement _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string));
+/* 6 */
+EXTERN void Tcl_AppendResult _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp));
+/* 7 */
+EXTERN void Tcl_AppendResultVA _ANSI_ARGS_((Tcl_Interp * interp,
+ va_list argList));
+/* 8 */
+EXTERN void Tcl_AppendToObj _ANSI_ARGS_((Tcl_Obj * objPtr,
+ char * bytes, int length));
+/* 9 */
+EXTERN void Tcl_AppendStringsToObj _ANSI_ARGS_(TCL_VARARGS(Tcl_Obj *,objPtr));
+/* 10 */
+EXTERN void Tcl_AppendStringsToObjVA _ANSI_ARGS_((
+ Tcl_Obj * objPtr, va_list argList));
+/* 11 */
+EXTERN Tcl_AsyncHandler Tcl_AsyncCreate _ANSI_ARGS_((Tcl_AsyncProc * proc,
+ ClientData clientData));
+/* 12 */
+EXTERN void Tcl_AsyncDelete _ANSI_ARGS_((Tcl_AsyncHandler async));
+/* 13 */
+EXTERN int Tcl_AsyncInvoke _ANSI_ARGS_((Tcl_Interp * interp,
+ int code));
+/* 14 */
+EXTERN void Tcl_AsyncMark _ANSI_ARGS_((Tcl_AsyncHandler async));
+/* 15 */
+EXTERN int Tcl_AsyncReady _ANSI_ARGS_((void));
+/* 16 */
+EXTERN void Tcl_BackgroundError _ANSI_ARGS_((Tcl_Interp * interp));
+/* 17 */
+EXTERN char Tcl_Backslash _ANSI_ARGS_((CONST char * src,
+ int * readPtr));
+/* 18 */
+EXTERN int Tcl_BadChannelOption _ANSI_ARGS_((
+ Tcl_Interp * interp, char * optionName,
+ char * optionList));
+/* 19 */
+EXTERN void Tcl_CallWhenDeleted _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_InterpDeleteProc * proc,
+ ClientData clientData));
+/* 20 */
+EXTERN void Tcl_CancelIdleCall _ANSI_ARGS_((
+ Tcl_IdleProc * idleProc,
+ ClientData clientData));
+/* 21 */
+EXTERN int Tcl_Close _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Channel chan));
+/* 22 */
+EXTERN int Tcl_CommandComplete _ANSI_ARGS_((char * cmd));
+/* 23 */
+EXTERN char * Tcl_Concat _ANSI_ARGS_((int argc, char ** argv));
+/* 24 */
+EXTERN Tcl_Obj * Tcl_ConcatObj _ANSI_ARGS_((int objc,
+ Tcl_Obj *CONST objv[]));
+/* 25 */
+EXTERN int Tcl_ConvertCountedElement _ANSI_ARGS_((
+ CONST char * src, int length, char * dst,
+ int flags));
+/* 26 */
+EXTERN int Tcl_ConvertElement _ANSI_ARGS_((CONST char * src,
+ char * dst, int flags));
+/* 27 */
+EXTERN int Tcl_ConvertToType _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * objPtr, Tcl_ObjType * typePtr));
+/* 28 */
+EXTERN int Tcl_CreateAlias _ANSI_ARGS_((Tcl_Interp * slave,
+ char * slaveCmd, Tcl_Interp * target,
+ char * targetCmd, int argc, char ** argv));
+/* 29 */
+EXTERN int Tcl_CreateAliasObj _ANSI_ARGS_((Tcl_Interp * slave,
+ char * slaveCmd, Tcl_Interp * target,
+ char * targetCmd, int objc,
+ Tcl_Obj *CONST objv[]));
+/* 30 */
+EXTERN Tcl_Channel Tcl_CreateChannel _ANSI_ARGS_((
+ Tcl_ChannelType * typePtr, char * chanName,
+ ClientData instanceData, int mask));
+/* 31 */
+EXTERN void Tcl_CreateChannelHandler _ANSI_ARGS_((
+ Tcl_Channel chan, int mask,
+ Tcl_ChannelProc * proc,
+ ClientData clientData));
+/* 32 */
+EXTERN void Tcl_CreateCloseHandler _ANSI_ARGS_((Tcl_Channel chan,
+ Tcl_CloseProc * proc, ClientData clientData));
+/* 33 */
+EXTERN Tcl_Command Tcl_CreateCommand _ANSI_ARGS_((Tcl_Interp * interp,
+ char * cmdName, Tcl_CmdProc * proc,
+ ClientData clientData,
+ Tcl_CmdDeleteProc * deleteProc));
+/* 34 */
+EXTERN void Tcl_CreateEventSource _ANSI_ARGS_((
+ Tcl_EventSetupProc * setupProc,
+ Tcl_EventCheckProc * checkProc,
+ ClientData clientData));
+/* 35 */
+EXTERN void Tcl_CreateExitHandler _ANSI_ARGS_((
+ Tcl_ExitProc * proc, ClientData clientData));
+/* 36 */
+EXTERN Tcl_Interp * Tcl_CreateInterp _ANSI_ARGS_((void));
+/* 37 */
+EXTERN void Tcl_CreateMathFunc _ANSI_ARGS_((Tcl_Interp * interp,
+ char * name, int numArgs,
+ Tcl_ValueType * argTypes,
+ Tcl_MathProc * proc, ClientData clientData));
+/* 38 */
+EXTERN Tcl_Command Tcl_CreateObjCommand _ANSI_ARGS_((
+ Tcl_Interp * interp, char * cmdName,
+ Tcl_ObjCmdProc * proc, ClientData clientData,
+ Tcl_CmdDeleteProc * deleteProc));
+/* 39 */
+EXTERN Tcl_Interp * Tcl_CreateSlave _ANSI_ARGS_((Tcl_Interp * interp,
+ char * slaveName, int isSafe));
+/* 40 */
+EXTERN Tcl_TimerToken Tcl_CreateTimerHandler _ANSI_ARGS_((int milliseconds,
+ Tcl_TimerProc * proc, ClientData clientData));
+/* 41 */
+EXTERN Tcl_Trace Tcl_CreateTrace _ANSI_ARGS_((Tcl_Interp * interp,
+ int level, Tcl_CmdTraceProc * proc,
+ ClientData clientData));
+/* 42 */
+EXTERN char * Tcl_DbCkalloc _ANSI_ARGS_((unsigned int size,
+ char * file, int line));
+/* 43 */
+EXTERN int Tcl_DbCkfree _ANSI_ARGS_((char * ptr, char * file,
+ int line));
+/* 44 */
+EXTERN char * Tcl_DbCkrealloc _ANSI_ARGS_((char * ptr,
+ unsigned int size, char * file, int line));
+/* 45 */
+EXTERN void Tcl_DbDecrRefCount _ANSI_ARGS_((Tcl_Obj * objPtr,
+ char * file, int line));
+/* 46 */
+EXTERN void Tcl_DbIncrRefCount _ANSI_ARGS_((Tcl_Obj * objPtr,
+ char * file, int line));
+/* 47 */
+EXTERN int Tcl_DbIsShared _ANSI_ARGS_((Tcl_Obj * objPtr,
+ char * file, int line));
+/* 48 */
+EXTERN Tcl_Obj * Tcl_DbNewBooleanObj _ANSI_ARGS_((int boolValue,
+ char * file, int line));
+/* 49 */
+EXTERN Tcl_Obj * Tcl_DbNewByteArrayObj _ANSI_ARGS_((
+ unsigned char * bytes, int length,
+ char * file, int line));
+/* 50 */
+EXTERN Tcl_Obj * Tcl_DbNewDoubleObj _ANSI_ARGS_((double doubleValue,
+ char * file, int line));
+/* 51 */
+EXTERN Tcl_Obj * Tcl_DbNewListObj _ANSI_ARGS_((int objc,
+ Tcl_Obj *CONST objv[], char * file, int line));
+/* 52 */
+EXTERN Tcl_Obj * Tcl_DbNewLongObj _ANSI_ARGS_((long longValue,
+ char * file, int line));
+/* 53 */
+EXTERN Tcl_Obj * Tcl_DbNewObj _ANSI_ARGS_((char * file, int line));
+/* 54 */
+EXTERN Tcl_Obj * Tcl_DbNewStringObj _ANSI_ARGS_((char * bytes,
+ int length, char * file, int line));
+/* 55 */
+EXTERN void Tcl_DeleteAssocData _ANSI_ARGS_((Tcl_Interp * interp,
+ char * name));
+/* 56 */
+EXTERN int Tcl_DeleteCommand _ANSI_ARGS_((Tcl_Interp * interp,
+ char * cmdName));
+/* 57 */
+EXTERN int Tcl_DeleteCommandFromToken _ANSI_ARGS_((
+ Tcl_Interp * interp, Tcl_Command command));
+/* 58 */
+EXTERN void Tcl_DeleteChannelHandler _ANSI_ARGS_((
+ Tcl_Channel chan, Tcl_ChannelProc * proc,
+ ClientData clientData));
+/* 59 */
+EXTERN void Tcl_DeleteCloseHandler _ANSI_ARGS_((Tcl_Channel chan,
+ Tcl_CloseProc * proc, ClientData clientData));
+/* 60 */
+EXTERN void Tcl_DeleteEvents _ANSI_ARGS_((
+ Tcl_EventDeleteProc * proc,
+ ClientData clientData));
+/* 61 */
+EXTERN void Tcl_DeleteEventSource _ANSI_ARGS_((
+ Tcl_EventSetupProc * setupProc,
+ Tcl_EventCheckProc * checkProc,
+ ClientData clientData));
+/* 62 */
+EXTERN void Tcl_DeleteExitHandler _ANSI_ARGS_((
+ Tcl_ExitProc * proc, ClientData clientData));
+/* 63 */
+EXTERN void Tcl_DeleteHashEntry _ANSI_ARGS_((
+ Tcl_HashEntry * entryPtr));
+/* 64 */
+EXTERN void Tcl_DeleteHashTable _ANSI_ARGS_((
+ Tcl_HashTable * tablePtr));
+/* 65 */
+EXTERN void Tcl_DeleteInterp _ANSI_ARGS_((Tcl_Interp * interp));
+/* 66 */
+EXTERN void Tcl_DeleteTimerHandler _ANSI_ARGS_((
+ Tcl_TimerToken token));
+/* 67 */
+EXTERN void Tcl_DeleteTrace _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Trace trace));
+/* 68 */
+EXTERN void Tcl_DetachPids _ANSI_ARGS_((int numPids,
+ Tcl_Pid * pidPtr));
+/* 69 */
+EXTERN void Tcl_DontCallWhenDeleted _ANSI_ARGS_((
+ Tcl_Interp * interp,
+ Tcl_InterpDeleteProc * proc,
+ ClientData clientData));
+/* 70 */
+EXTERN int Tcl_DoOneEvent _ANSI_ARGS_((int flags));
+/* 71 */
+EXTERN void Tcl_DoWhenIdle _ANSI_ARGS_((Tcl_IdleProc * proc,
+ ClientData clientData));
+/* 72 */
+EXTERN char * Tcl_DStringAppend _ANSI_ARGS_((Tcl_DString * dsPtr,
+ CONST char * string, int length));
+/* 73 */
+EXTERN char * Tcl_DStringAppendElement _ANSI_ARGS_((
+ Tcl_DString * dsPtr, CONST char * string));
+/* 74 */
+EXTERN void Tcl_DStringEndSublist _ANSI_ARGS_((
+ Tcl_DString * dsPtr));
+/* 75 */
+EXTERN void Tcl_DStringFree _ANSI_ARGS_((Tcl_DString * dsPtr));
+/* 76 */
+EXTERN void Tcl_DStringGetResult _ANSI_ARGS_((
+ Tcl_Interp * interp, Tcl_DString * dsPtr));
+/* 77 */
+EXTERN void Tcl_DStringInit _ANSI_ARGS_((Tcl_DString * dsPtr));
+/* 78 */
+EXTERN void Tcl_DStringResult _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_DString * dsPtr));
+/* 79 */
+EXTERN void Tcl_DStringSetLength _ANSI_ARGS_((
+ Tcl_DString * dsPtr, int length));
+/* 80 */
+EXTERN void Tcl_DStringStartSublist _ANSI_ARGS_((
+ Tcl_DString * dsPtr));
+/* 81 */
+EXTERN int Tcl_DumpActiveMemory _ANSI_ARGS_((char * fileName));
+/* 82 */
+EXTERN Tcl_Obj * Tcl_DuplicateObj _ANSI_ARGS_((Tcl_Obj * objPtr));
+/* 83 */
+EXTERN int Tcl_Eof _ANSI_ARGS_((Tcl_Channel chan));
+/* 84 */
+EXTERN char * Tcl_ErrnoId _ANSI_ARGS_((void));
+/* 85 */
+EXTERN char * Tcl_ErrnoMsg _ANSI_ARGS_((int err));
+/* 86 */
+EXTERN int Tcl_Eval _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string));
+/* 87 */
+EXTERN int Tcl_EvalFile _ANSI_ARGS_((Tcl_Interp * interp,
+ char * fileName));
+/* 88 */
+EXTERN void Tcl_EventuallyFree _ANSI_ARGS_((
+ ClientData clientData,
+ Tcl_FreeProc * freeProc));
+/* 89 */
+EXTERN int Tcl_EvalObj _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * objPtr));
+/* 90 */
+EXTERN void Tcl_Exit _ANSI_ARGS_((int status));
+/* 91 */
+EXTERN int Tcl_ExposeCommand _ANSI_ARGS_((Tcl_Interp * interp,
+ char * hiddenCmdToken, char * cmdName));
+/* 92 */
+EXTERN int Tcl_ExprBoolean _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, int * ptr));
+/* 93 */
+EXTERN int Tcl_ExprBooleanObj _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * objPtr, int * ptr));
+/* 94 */
+EXTERN int Tcl_ExprDouble _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, double * ptr));
+/* 95 */
+EXTERN int Tcl_ExprDoubleObj _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * objPtr, double * ptr));
+/* 96 */
+EXTERN int Tcl_ExprLong _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, long * ptr));
+/* 97 */
+EXTERN int Tcl_ExprLongObj _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * objPtr, long * ptr));
+/* 98 */
+EXTERN int Tcl_ExprObj _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * objPtr, Tcl_Obj ** resultPtrPtr));
+/* 99 */
+EXTERN int Tcl_ExprString _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string));
+/* 100 */
+EXTERN void Tcl_Finalize _ANSI_ARGS_((void));
+/* 101 */
+EXTERN void Tcl_FindExecutable _ANSI_ARGS_((char * argv0));
+/* 102 */
+EXTERN Tcl_HashEntry * Tcl_FirstHashEntry _ANSI_ARGS_((
+ Tcl_HashTable * tablePtr,
+ Tcl_HashSearch * searchPtr));
+/* 103 */
+EXTERN int Tcl_Flush _ANSI_ARGS_((Tcl_Channel chan));
+/* 104 */
+EXTERN void Tcl_Free _ANSI_ARGS_((char * ptr));
+/* 105 */
+EXTERN void TclFreeObj _ANSI_ARGS_((Tcl_Obj * objPtr));
+/* 106 */
+EXTERN void Tcl_FreeResult _ANSI_ARGS_((Tcl_Interp * interp));
+/* 107 */
+EXTERN int Tcl_GetAlias _ANSI_ARGS_((Tcl_Interp * interp,
+ char * slaveCmd,
+ Tcl_Interp ** targetInterpPtr,
+ char ** targetCmdPtr, int * argcPtr,
+ char *** argvPtr));
+/* 108 */
+EXTERN int Tcl_GetAliasObj _ANSI_ARGS_((Tcl_Interp * interp,
+ char * slaveCmd,
+ Tcl_Interp ** targetInterpPtr,
+ char ** targetCmdPtr, int * objcPtr,
+ Tcl_Obj *** objv));
+/* 109 */
+EXTERN ClientData Tcl_GetAssocData _ANSI_ARGS_((Tcl_Interp * interp,
+ char * name, Tcl_InterpDeleteProc ** procPtr));
+/* 110 */
+EXTERN int Tcl_GetBoolean _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, int * boolPtr));
+/* 111 */
+EXTERN int Tcl_GetBooleanFromObj _ANSI_ARGS_((
+ Tcl_Interp * interp, Tcl_Obj * objPtr,
+ int * boolPtr));
+/* 112 */
+EXTERN unsigned char * Tcl_GetByteArrayFromObj _ANSI_ARGS_((
+ Tcl_Obj * objPtr, int * lengthPtr));
+/* 113 */
+EXTERN Tcl_Channel Tcl_GetChannel _ANSI_ARGS_((Tcl_Interp * interp,
+ char * chanName, int * modePtr));
+/* 114 */
+EXTERN int Tcl_GetChannelBufferSize _ANSI_ARGS_((
+ Tcl_Channel chan));
+/* 115 */
+EXTERN int Tcl_GetChannelHandle _ANSI_ARGS_((Tcl_Channel chan,
+ int direction, ClientData * handlePtr));
+/* 116 */
+EXTERN ClientData Tcl_GetChannelInstanceData _ANSI_ARGS_((
+ Tcl_Channel chan));
+/* 117 */
+EXTERN int Tcl_GetChannelMode _ANSI_ARGS_((Tcl_Channel chan));
+/* 118 */
+EXTERN char * Tcl_GetChannelName _ANSI_ARGS_((Tcl_Channel chan));
+/* 119 */
+EXTERN int Tcl_GetChannelOption _ANSI_ARGS_((
+ Tcl_Interp * interp, Tcl_Channel chan,
+ char * optionName, Tcl_DString * dsPtr));
+/* 120 */
+EXTERN Tcl_ChannelType * Tcl_GetChannelType _ANSI_ARGS_((Tcl_Channel chan));
+/* 121 */
+EXTERN int Tcl_GetCommandInfo _ANSI_ARGS_((Tcl_Interp * interp,
+ char * cmdName, Tcl_CmdInfo * infoPtr));
+/* 122 */
+EXTERN char * Tcl_GetCommandName _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Command command));
+/* 123 */
+EXTERN int Tcl_GetDouble _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, double * doublePtr));
+/* 124 */
+EXTERN int Tcl_GetDoubleFromObj _ANSI_ARGS_((
+ Tcl_Interp * interp, Tcl_Obj * objPtr,
+ double * doublePtr));
+/* 125 */
+EXTERN int Tcl_GetErrno _ANSI_ARGS_((void));
+/* 126 */
+EXTERN char * Tcl_GetHostName _ANSI_ARGS_((void));
+/* 127 */
+EXTERN int Tcl_GetIndexFromObj _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * objPtr, char ** tablePtr,
+ char * msg, int flags, int * indexPtr));
+/* 128 */
+EXTERN int Tcl_GetInt _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, int * intPtr));
+/* 129 */
+EXTERN int Tcl_GetInterpPath _ANSI_ARGS_((
+ Tcl_Interp * askInterp,
+ Tcl_Interp * slaveInterp));
+/* 130 */
+EXTERN int Tcl_GetIntFromObj _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * objPtr, int * intPtr));
+/* 131 */
+EXTERN int Tcl_GetLongFromObj _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * objPtr, long * longPtr));
+/* 132 */
+EXTERN Tcl_Interp * Tcl_GetMaster _ANSI_ARGS_((Tcl_Interp * interp));
+/* 133 */
+EXTERN CONST char * Tcl_GetNameOfExecutable _ANSI_ARGS_((void));
+/* 134 */
+EXTERN Tcl_Obj * Tcl_GetObjResult _ANSI_ARGS_((Tcl_Interp * interp));
+/* 135 */
+EXTERN Tcl_ObjType * Tcl_GetObjType _ANSI_ARGS_((char * typeName));
+/* 136 */
+EXTERN Tcl_PathType Tcl_GetPathType _ANSI_ARGS_((char * path));
+/* 137 */
+EXTERN int Tcl_Gets _ANSI_ARGS_((Tcl_Channel chan,
+ Tcl_DString * dsPtr));
+/* 138 */
+EXTERN int Tcl_GetsObj _ANSI_ARGS_((Tcl_Channel chan,
+ Tcl_Obj * objPtr));
+/* 139 */
+EXTERN int Tcl_GetServiceMode _ANSI_ARGS_((void));
+/* 140 */
+EXTERN Tcl_Interp * Tcl_GetSlave _ANSI_ARGS_((Tcl_Interp * interp,
+ char * slaveName));
+/* 141 */
+EXTERN Tcl_Channel Tcl_GetStdChannel _ANSI_ARGS_((int type));
+/* 142 */
+EXTERN char * Tcl_GetStringFromObj _ANSI_ARGS_((Tcl_Obj * objPtr,
+ int * lengthPtr));
+/* 143 */
+EXTERN char * Tcl_GetStringResult _ANSI_ARGS_((Tcl_Interp * interp));
+/* 144 */
+EXTERN char * Tcl_GetVar _ANSI_ARGS_((Tcl_Interp * interp,
+ char * varName, int flags));
+/* 145 */
+EXTERN char * Tcl_GetVar2 _ANSI_ARGS_((Tcl_Interp * interp,
+ char * part1, char * part2, int flags));
+/* 146 */
+EXTERN int Tcl_GlobalEval _ANSI_ARGS_((Tcl_Interp * interp,
+ char * command));
+/* 147 */
+EXTERN int Tcl_GlobalEvalObj _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * objPtr));
+/* 148 */
+EXTERN char * Tcl_HashStats _ANSI_ARGS_((Tcl_HashTable * tablePtr));
+/* 149 */
+EXTERN int Tcl_HideCommand _ANSI_ARGS_((Tcl_Interp * interp,
+ char * cmdName, char * hiddenCmdToken));
+/* 150 */
+EXTERN int Tcl_Init _ANSI_ARGS_((Tcl_Interp * interp));
+/* 151 */
+EXTERN void Tcl_InitHashTable _ANSI_ARGS_((
+ Tcl_HashTable * tablePtr, int keyType));
+/* 152 */
+EXTERN void Tcl_InitMemory _ANSI_ARGS_((Tcl_Interp * interp));
+/* 153 */
+EXTERN int Tcl_InputBlocked _ANSI_ARGS_((Tcl_Channel chan));
+/* 154 */
+EXTERN int Tcl_InputBuffered _ANSI_ARGS_((Tcl_Channel chan));
+/* 155 */
+EXTERN int Tcl_InterpDeleted _ANSI_ARGS_((Tcl_Interp * interp));
+/* 156 */
+EXTERN int Tcl_IsSafe _ANSI_ARGS_((Tcl_Interp * interp));
+/* 157 */
+EXTERN void Tcl_InvalidateStringRep _ANSI_ARGS_((
+ Tcl_Obj * objPtr));
+/* 158 */
+EXTERN char * Tcl_JoinPath _ANSI_ARGS_((int argc, char ** argv,
+ Tcl_DString * resultPtr));
+/* 159 */
+EXTERN int Tcl_LinkVar _ANSI_ARGS_((Tcl_Interp * interp,
+ char * varName, char * addr, int type));
+/* 160 */
+EXTERN int Tcl_ListObjAppendList _ANSI_ARGS_((
+ Tcl_Interp * interp, Tcl_Obj * listPtr,
+ Tcl_Obj * elemListPtr));
+/* 161 */
+EXTERN int Tcl_ListObjAppendElement _ANSI_ARGS_((
+ Tcl_Interp * interp, Tcl_Obj * listPtr,
+ Tcl_Obj * objPtr));
+/* 162 */
+EXTERN int Tcl_ListObjGetElements _ANSI_ARGS_((
+ Tcl_Interp * interp, Tcl_Obj * listPtr,
+ int * objcPtr, Tcl_Obj *** objvPtr));
+/* 163 */
+EXTERN int Tcl_ListObjIndex _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * listPtr, int index,
+ Tcl_Obj ** objPtrPtr));
+/* 164 */
+EXTERN int Tcl_ListObjLength _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * listPtr, int * intPtr));
+/* 165 */
+EXTERN int Tcl_ListObjReplace _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * listPtr, int first, int count,
+ int objc, Tcl_Obj *CONST objv[]));
+/* 166 */
+EXTERN Tcl_Channel Tcl_MakeFileChannel _ANSI_ARGS_((ClientData handle,
+ int mode));
+/* 167 */
+EXTERN int Tcl_MakeSafe _ANSI_ARGS_((Tcl_Interp * interp));
+/* 168 */
+EXTERN Tcl_Channel Tcl_MakeTcpClientChannel _ANSI_ARGS_((
+ ClientData tcpSocket));
+/* 169 */
+EXTERN char * Tcl_Merge _ANSI_ARGS_((int argc, char ** argv));
+/* 170 */
+EXTERN Tcl_Obj * Tcl_NewBooleanObj _ANSI_ARGS_((int boolValue));
+/* 171 */
+EXTERN Tcl_Obj * Tcl_NewByteArrayObj _ANSI_ARGS_((
+ unsigned char * bytes, int length));
+/* 172 */
+EXTERN Tcl_Obj * Tcl_NewDoubleObj _ANSI_ARGS_((double doubleValue));
+/* 173 */
+EXTERN Tcl_Obj * Tcl_NewIntObj _ANSI_ARGS_((int intValue));
+/* 174 */
+EXTERN Tcl_Obj * Tcl_NewListObj _ANSI_ARGS_((int objc,
+ Tcl_Obj *CONST objv[]));
+/* 175 */
+EXTERN Tcl_Obj * Tcl_NewLongObj _ANSI_ARGS_((long longValue));
+/* 176 */
+EXTERN Tcl_Obj * Tcl_NewObj _ANSI_ARGS_((void));
+/* 177 */
+EXTERN Tcl_Obj * Tcl_NewStringObj _ANSI_ARGS_((char * bytes,
+ int length));
+/* 178 */
+EXTERN Tcl_HashEntry * Tcl_NextHashEntry _ANSI_ARGS_((
+ Tcl_HashSearch * searchPtr));
+/* 179 */
+EXTERN void Tcl_NotifyChannel _ANSI_ARGS_((Tcl_Channel channel,
+ int mask));
+/* 180 */
+EXTERN Tcl_Obj * Tcl_ObjGetVar2 _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * part1Ptr, Tcl_Obj * part2Ptr,
+ int flags));
+/* 181 */
+EXTERN Tcl_Obj * Tcl_ObjSetVar2 _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * part1Ptr, Tcl_Obj * part2Ptr,
+ Tcl_Obj * newValuePtr, int flags));
+/* 182 */
+EXTERN Tcl_Channel Tcl_OpenCommandChannel _ANSI_ARGS_((
+ Tcl_Interp * interp, int argc, char ** argv,
+ int flags));
+/* 183 */
+EXTERN Tcl_Channel Tcl_OpenFileChannel _ANSI_ARGS_((Tcl_Interp * interp,
+ char * fileName, char * modeString,
+ int permissions));
+/* 184 */
+EXTERN Tcl_Channel Tcl_OpenTcpClient _ANSI_ARGS_((Tcl_Interp * interp,
+ int port, char * address, char * myaddr,
+ int myport, int async));
+/* 185 */
+EXTERN Tcl_Channel Tcl_OpenTcpServer _ANSI_ARGS_((Tcl_Interp * interp,
+ int port, char * host,
+ Tcl_TcpAcceptProc * acceptProc,
+ ClientData callbackData));
+/* 186 */
+EXTERN void panic _ANSI_ARGS_(TCL_VARARGS(char *,format));
+/* 187 */
+EXTERN void panicVA _ANSI_ARGS_((char * format, va_list argList));
+/* 188 */
+EXTERN char * Tcl_ParseVar _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, char ** termPtr));
+/* 189 */
+EXTERN char * Tcl_PkgPresent _ANSI_ARGS_((Tcl_Interp * interp,
+ char * name, char * version, int exact));
+/* 190 */
+EXTERN char * Tcl_PkgPresentEx _ANSI_ARGS_((Tcl_Interp * interp,
+ char * name, char * version, int exact,
+ ClientData * clientDataPtr));
+/* 191 */
+EXTERN int Tcl_PkgProvide _ANSI_ARGS_((Tcl_Interp * interp,
+ char * name, char * version));
+/* 192 */
+EXTERN int Tcl_PkgProvideEx _ANSI_ARGS_((Tcl_Interp * interp,
+ char * name, char * version,
+ ClientData clientData));
+/* 193 */
+EXTERN char * Tcl_PkgRequire _ANSI_ARGS_((Tcl_Interp * interp,
+ char * name, char * version, int exact));
+/* 194 */
+EXTERN char * Tcl_PkgRequireEx _ANSI_ARGS_((Tcl_Interp * interp,
+ char * name, char * version, int exact,
+ ClientData * clientDataPtr));
+/* 195 */
+EXTERN char * Tcl_PosixError _ANSI_ARGS_((Tcl_Interp * interp));
+/* 196 */
+EXTERN void Tcl_Preserve _ANSI_ARGS_((ClientData data));
+/* 197 */
+EXTERN void Tcl_PrintDouble _ANSI_ARGS_((Tcl_Interp * interp,
+ double value, char * dst));
+/* 198 */
+EXTERN int Tcl_PutEnv _ANSI_ARGS_((CONST char * string));
+/* 199 */
+EXTERN void Tcl_QueueEvent _ANSI_ARGS_((Tcl_Event * evPtr,
+ Tcl_QueuePosition position));
+/* 200 */
+EXTERN int Tcl_Read _ANSI_ARGS_((Tcl_Channel chan,
+ char * bufPtr, int toRead));
+/* 201 */
+EXTERN char * Tcl_Realloc _ANSI_ARGS_((char * ptr,
+ unsigned int size));
+/* 202 */
+EXTERN void Tcl_ReapDetachedProcs _ANSI_ARGS_((void));
+/* 203 */
+EXTERN int Tcl_RecordAndEval _ANSI_ARGS_((Tcl_Interp * interp,
+ char * cmd, int flags));
+/* 204 */
+EXTERN int Tcl_RecordAndEvalObj _ANSI_ARGS_((
+ Tcl_Interp * interp, Tcl_Obj * cmdPtr,
+ int flags));
+/* 205 */
+EXTERN Tcl_RegExp Tcl_RegExpCompile _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string));
+/* 206 */
+EXTERN int Tcl_RegExpExec _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_RegExp regexp, char * string,
+ char * start));
+/* 207 */
+EXTERN int Tcl_RegExpMatch _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, char * pattern));
+/* 208 */
+EXTERN void Tcl_RegExpRange _ANSI_ARGS_((Tcl_RegExp regexp,
+ int index, char ** startPtr, char ** endPtr));
+/* 209 */
+EXTERN void Tcl_RegisterChannel _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Channel chan));
+/* 210 */
+EXTERN void Tcl_RegisterObjType _ANSI_ARGS_((
+ Tcl_ObjType * typePtr));
+/* 211 */
+EXTERN void Tcl_Release _ANSI_ARGS_((ClientData clientData));
+/* 212 */
+EXTERN void Tcl_ResetResult _ANSI_ARGS_((Tcl_Interp * interp));
+/* 213 */
+EXTERN int Tcl_ScanCountedElement _ANSI_ARGS_((
+ CONST char * string, int length,
+ int * flagPtr));
+/* 214 */
+EXTERN int Tcl_ScanElement _ANSI_ARGS_((CONST char * string,
+ int * flagPtr));
+/* 215 */
+EXTERN int Tcl_Seek _ANSI_ARGS_((Tcl_Channel chan, int offset,
+ int mode));
+/* 216 */
+EXTERN int Tcl_ServiceAll _ANSI_ARGS_((void));
+/* 217 */
+EXTERN int Tcl_ServiceEvent _ANSI_ARGS_((int flags));
+/* 218 */
+EXTERN void Tcl_SetAssocData _ANSI_ARGS_((Tcl_Interp * interp,
+ char * name, Tcl_InterpDeleteProc * proc,
+ ClientData clientData));
+/* 219 */
+EXTERN void Tcl_SetBooleanObj _ANSI_ARGS_((Tcl_Obj * objPtr,
+ int boolValue));
+/* 220 */
+EXTERN unsigned char * Tcl_SetByteArrayLength _ANSI_ARGS_((Tcl_Obj * objPtr,
+ int length));
+/* 221 */
+EXTERN void Tcl_SetByteArrayObj _ANSI_ARGS_((Tcl_Obj * objPtr,
+ unsigned char * bytes, int length));
+/* 222 */
+EXTERN void Tcl_SetChannelBufferSize _ANSI_ARGS_((
+ Tcl_Channel chan, int sz));
+/* 223 */
+EXTERN int Tcl_SetChannelOption _ANSI_ARGS_((
+ Tcl_Interp * interp, Tcl_Channel chan,
+ char * optionName, char * newValue));
+/* 224 */
+EXTERN int Tcl_SetCommandInfo _ANSI_ARGS_((Tcl_Interp * interp,
+ char * cmdName, Tcl_CmdInfo * infoPtr));
+/* 225 */
+EXTERN void Tcl_SetDoubleObj _ANSI_ARGS_((Tcl_Obj * objPtr,
+ double doubleValue));
+/* 226 */
+EXTERN void Tcl_SetErrno _ANSI_ARGS_((int err));
+/* 227 */
+EXTERN void Tcl_SetErrorCode _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp));
+/* 228 */
+EXTERN void Tcl_SetErrorCodeVA _ANSI_ARGS_((Tcl_Interp * interp,
+ va_list argList));
+/* 229 */
+EXTERN void Tcl_SetIntObj _ANSI_ARGS_((Tcl_Obj * objPtr,
+ int intValue));
+/* 230 */
+EXTERN void Tcl_SetListObj _ANSI_ARGS_((Tcl_Obj * objPtr,
+ int objc, Tcl_Obj *CONST objv[]));
+/* 231 */
+EXTERN void Tcl_SetLongObj _ANSI_ARGS_((Tcl_Obj * objPtr,
+ long longValue));
+/* 232 */
+EXTERN void Tcl_SetMaxBlockTime _ANSI_ARGS_((Tcl_Time * timePtr));
+/* 233 */
+EXTERN void Tcl_SetObjErrorCode _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * errorObjPtr));
+/* 234 */
+EXTERN void Tcl_SetObjLength _ANSI_ARGS_((Tcl_Obj * objPtr,
+ int length));
+/* 235 */
+EXTERN void Tcl_SetObjResult _ANSI_ARGS_((Tcl_Interp * interp,
+ Tcl_Obj * resultObjPtr));
+/* 236 */
+EXTERN void Tcl_SetPanicProc _ANSI_ARGS_((
+ Tcl_PanicProc * panicProc));
+/* 237 */
+EXTERN int Tcl_SetRecursionLimit _ANSI_ARGS_((
+ Tcl_Interp * interp, int depth));
+/* 238 */
+EXTERN void Tcl_SetResult _ANSI_ARGS_((Tcl_Interp * interp,
+ char * string, Tcl_FreeProc * freeProc));
+/* 239 */
+EXTERN int Tcl_SetServiceMode _ANSI_ARGS_((int mode));
+/* 240 */
+EXTERN void Tcl_SetStdChannel _ANSI_ARGS_((Tcl_Channel channel,
+ int type));
+/* 241 */
+EXTERN void Tcl_SetStringObj _ANSI_ARGS_((Tcl_Obj * objPtr,
+ char * bytes, int length));
+/* 242 */
+EXTERN void Tcl_SetTimer _ANSI_ARGS_((Tcl_Time * timePtr));
+/* 243 */
+EXTERN char * Tcl_SetVar _ANSI_ARGS_((Tcl_Interp * interp,
+ char * varName, char * newValue, int flags));
+/* 244 */
+EXTERN char * Tcl_SetVar2 _ANSI_ARGS_((Tcl_Interp * interp,
+ char * part1, char * part2, char * newValue,
+ int flags));
+/* 245 */
+EXTERN char * Tcl_SignalId _ANSI_ARGS_((int sig));
+/* 246 */
+EXTERN char * Tcl_SignalMsg _ANSI_ARGS_((int sig));
+/* 247 */
+EXTERN void Tcl_Sleep _ANSI_ARGS_((int ms));
+/* 248 */
+EXTERN void Tcl_SourceRCFile _ANSI_ARGS_((Tcl_Interp * interp));
+/* 249 */
+EXTERN int Tcl_SplitList _ANSI_ARGS_((Tcl_Interp * interp,
+ char * list, int * argcPtr, char *** argvPtr));
+/* 250 */
+EXTERN void Tcl_SplitPath _ANSI_ARGS_((char * path,
+ int * argcPtr, char *** argvPtr));
+/* 251 */
+EXTERN void Tcl_StaticPackage _ANSI_ARGS_((Tcl_Interp * interp,
+ char * pkgName,
+ Tcl_PackageInitProc * initProc,
+ Tcl_PackageInitProc * safeInitProc));
+/* 252 */
+EXTERN int Tcl_StringMatch _ANSI_ARGS_((char * string,
+ char * pattern));
+/* 253 */
+EXTERN int Tcl_Tell _ANSI_ARGS_((Tcl_Channel chan));
+/* 254 */
+EXTERN int Tcl_TraceVar _ANSI_ARGS_((Tcl_Interp * interp,
+ char * varName, int flags,
+ Tcl_VarTraceProc * proc,
+ ClientData clientData));
+/* 255 */
+EXTERN int Tcl_TraceVar2 _ANSI_ARGS_((Tcl_Interp * interp,
+ char * part1, char * part2, int flags,
+ Tcl_VarTraceProc * proc,
+ ClientData clientData));
+/* 256 */
+EXTERN char * Tcl_TranslateFileName _ANSI_ARGS_((
+ Tcl_Interp * interp, char * name,
+ Tcl_DString * bufferPtr));
+/* 257 */
+EXTERN int Tcl_Ungets _ANSI_ARGS_((Tcl_Channel chan, char * str,
+ int len, int atHead));
+/* 258 */
+EXTERN void Tcl_UnlinkVar _ANSI_ARGS_((Tcl_Interp * interp,
+ char * varName));
+/* 259 */
+EXTERN int Tcl_UnregisterChannel _ANSI_ARGS_((
+ Tcl_Interp * interp, Tcl_Channel chan));
+/* 260 */
+EXTERN int Tcl_UnsetVar _ANSI_ARGS_((Tcl_Interp * interp,
+ char * varName, int flags));
+/* 261 */
+EXTERN int Tcl_UnsetVar2 _ANSI_ARGS_((Tcl_Interp * interp,
+ char * part1, char * part2, int flags));
+/* 262 */
+EXTERN void Tcl_UntraceVar _ANSI_ARGS_((Tcl_Interp * interp,
+ char * varName, int flags,
+ Tcl_VarTraceProc * proc,
+ ClientData clientData));
+/* 263 */
+EXTERN void Tcl_UntraceVar2 _ANSI_ARGS_((Tcl_Interp * interp,
+ char * part1, char * part2, int flags,
+ Tcl_VarTraceProc * proc,
+ ClientData clientData));
+/* 264 */
+EXTERN void Tcl_UpdateLinkedVar _ANSI_ARGS_((Tcl_Interp * interp,
+ char * varName));
+/* 265 */
+EXTERN int Tcl_UpVar _ANSI_ARGS_((Tcl_Interp * interp,
+ char * frameName, char * varName,
+ char * localName, int flags));
+/* 266 */
+EXTERN int Tcl_UpVar2 _ANSI_ARGS_((Tcl_Interp * interp,
+ char * frameName, char * part1, char * part2,
+ char * localName, int flags));
+/* 267 */
+EXTERN void Tcl_ValidateAllMemory _ANSI_ARGS_((char * file,
+ int line));
+/* 268 */
+EXTERN int Tcl_VarEval _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp));
+/* 269 */
+EXTERN int Tcl_VarEvalVA _ANSI_ARGS_((Tcl_Interp * interp,
+ va_list argList));
+/* 270 */
+EXTERN ClientData Tcl_VarTraceInfo _ANSI_ARGS_((Tcl_Interp * interp,
+ char * varName, int flags,
+ Tcl_VarTraceProc * procPtr,
+ ClientData prevClientData));
+/* 271 */
+EXTERN ClientData Tcl_VarTraceInfo2 _ANSI_ARGS_((Tcl_Interp * interp,
+ char * part1, char * part2, int flags,
+ Tcl_VarTraceProc * procPtr,
+ ClientData prevClientData));
+/* 272 */
+EXTERN int Tcl_WaitForEvent _ANSI_ARGS_((Tcl_Time * timePtr));
+/* 273 */
+EXTERN Tcl_Pid Tcl_WaitPid _ANSI_ARGS_((Tcl_Pid pid, int * statPtr,
+ int options));
+/* 274 */
+EXTERN int Tcl_Write _ANSI_ARGS_((Tcl_Channel chan, char * s,
+ int slen));
+/* 275 */
+EXTERN void Tcl_WrongNumArgs _ANSI_ARGS_((Tcl_Interp * interp,
+ int objc, Tcl_Obj *CONST objv[],
+ char * message));
+
+typedef struct TclStubHooks {
+ struct TclPlatStubs *tclPlatStubs;
+ struct TclIntStubs *tclIntStubs;
+ struct TclIntPlatStubs *tclIntPlatStubs;
+ struct TclCompileStubs *tclCompileStubs;
+} TclStubHooks;
+
+typedef struct TclStubs {
+ int magic;
+ struct TclStubHooks *hooks;
+
+ void (*tcl_AddErrorInfo) _ANSI_ARGS_((Tcl_Interp * interp, char * message)); /* 0 */
+ void (*tcl_AddObjErrorInfo) _ANSI_ARGS_((Tcl_Interp * interp, char * message, int length)); /* 1 */
+ char * (*tcl_Alloc) _ANSI_ARGS_((unsigned int size)); /* 2 */
+ void (*tcl_AllowExceptions) _ANSI_ARGS_((Tcl_Interp * interp)); /* 3 */
+ int (*tcl_AppendAllObjTypes) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr)); /* 4 */
+ void (*tcl_AppendElement) _ANSI_ARGS_((Tcl_Interp * interp, char * string)); /* 5 */
+ void (*tcl_AppendResult) _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp)); /* 6 */
+ void (*tcl_AppendResultVA) _ANSI_ARGS_((Tcl_Interp * interp, va_list argList)); /* 7 */
+ void (*tcl_AppendToObj) _ANSI_ARGS_((Tcl_Obj * objPtr, char * bytes, int length)); /* 8 */
+ void (*tcl_AppendStringsToObj) _ANSI_ARGS_(TCL_VARARGS(Tcl_Obj *,objPtr)); /* 9 */
+ void (*tcl_AppendStringsToObjVA) _ANSI_ARGS_((Tcl_Obj * objPtr, va_list argList)); /* 10 */
+ Tcl_AsyncHandler (*tcl_AsyncCreate) _ANSI_ARGS_((Tcl_AsyncProc * proc, ClientData clientData)); /* 11 */
+ void (*tcl_AsyncDelete) _ANSI_ARGS_((Tcl_AsyncHandler async)); /* 12 */
+ int (*tcl_AsyncInvoke) _ANSI_ARGS_((Tcl_Interp * interp, int code)); /* 13 */
+ void (*tcl_AsyncMark) _ANSI_ARGS_((Tcl_AsyncHandler async)); /* 14 */
+ int (*tcl_AsyncReady) _ANSI_ARGS_((void)); /* 15 */
+ void (*tcl_BackgroundError) _ANSI_ARGS_((Tcl_Interp * interp)); /* 16 */
+ char (*tcl_Backslash) _ANSI_ARGS_((CONST char * src, int * readPtr)); /* 17 */
+ int (*tcl_BadChannelOption) _ANSI_ARGS_((Tcl_Interp * interp, char * optionName, char * optionList)); /* 18 */
+ void (*tcl_CallWhenDeleted) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_InterpDeleteProc * proc, ClientData clientData)); /* 19 */
+ void (*tcl_CancelIdleCall) _ANSI_ARGS_((Tcl_IdleProc * idleProc, ClientData clientData)); /* 20 */
+ int (*tcl_Close) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan)); /* 21 */
+ int (*tcl_CommandComplete) _ANSI_ARGS_((char * cmd)); /* 22 */
+ char * (*tcl_Concat) _ANSI_ARGS_((int argc, char ** argv)); /* 23 */
+ Tcl_Obj * (*tcl_ConcatObj) _ANSI_ARGS_((int objc, Tcl_Obj *CONST objv[])); /* 24 */
+ int (*tcl_ConvertCountedElement) _ANSI_ARGS_((CONST char * src, int length, char * dst, int flags)); /* 25 */
+ int (*tcl_ConvertElement) _ANSI_ARGS_((CONST char * src, char * dst, int flags)); /* 26 */
+ int (*tcl_ConvertToType) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, Tcl_ObjType * typePtr)); /* 27 */
+ int (*tcl_CreateAlias) _ANSI_ARGS_((Tcl_Interp * slave, char * slaveCmd, Tcl_Interp * target, char * targetCmd, int argc, char ** argv)); /* 28 */
+ int (*tcl_CreateAliasObj) _ANSI_ARGS_((Tcl_Interp * slave, char * slaveCmd, Tcl_Interp * target, char * targetCmd, int objc, Tcl_Obj *CONST objv[])); /* 29 */
+ Tcl_Channel (*tcl_CreateChannel) _ANSI_ARGS_((Tcl_ChannelType * typePtr, char * chanName, ClientData instanceData, int mask)); /* 30 */
+ void (*tcl_CreateChannelHandler) _ANSI_ARGS_((Tcl_Channel chan, int mask, Tcl_ChannelProc * proc, ClientData clientData)); /* 31 */
+ void (*tcl_CreateCloseHandler) _ANSI_ARGS_((Tcl_Channel chan, Tcl_CloseProc * proc, ClientData clientData)); /* 32 */
+ Tcl_Command (*tcl_CreateCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * cmdName, Tcl_CmdProc * proc, ClientData clientData, Tcl_CmdDeleteProc * deleteProc)); /* 33 */
+ void (*tcl_CreateEventSource) _ANSI_ARGS_((Tcl_EventSetupProc * setupProc, Tcl_EventCheckProc * checkProc, ClientData clientData)); /* 34 */
+ void (*tcl_CreateExitHandler) _ANSI_ARGS_((Tcl_ExitProc * proc, ClientData clientData)); /* 35 */
+ Tcl_Interp * (*tcl_CreateInterp) _ANSI_ARGS_((void)); /* 36 */
+ void (*tcl_CreateMathFunc) _ANSI_ARGS_((Tcl_Interp * interp, char * name, int numArgs, Tcl_ValueType * argTypes, Tcl_MathProc * proc, ClientData clientData)); /* 37 */
+ Tcl_Command (*tcl_CreateObjCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * cmdName, Tcl_ObjCmdProc * proc, ClientData clientData, Tcl_CmdDeleteProc * deleteProc)); /* 38 */
+ Tcl_Interp * (*tcl_CreateSlave) _ANSI_ARGS_((Tcl_Interp * interp, char * slaveName, int isSafe)); /* 39 */
+ Tcl_TimerToken (*tcl_CreateTimerHandler) _ANSI_ARGS_((int milliseconds, Tcl_TimerProc * proc, ClientData clientData)); /* 40 */
+ Tcl_Trace (*tcl_CreateTrace) _ANSI_ARGS_((Tcl_Interp * interp, int level, Tcl_CmdTraceProc * proc, ClientData clientData)); /* 41 */
+ char * (*tcl_DbCkalloc) _ANSI_ARGS_((unsigned int size, char * file, int line)); /* 42 */
+ int (*tcl_DbCkfree) _ANSI_ARGS_((char * ptr, char * file, int line)); /* 43 */
+ char * (*tcl_DbCkrealloc) _ANSI_ARGS_((char * ptr, unsigned int size, char * file, int line)); /* 44 */
+ void (*tcl_DbDecrRefCount) _ANSI_ARGS_((Tcl_Obj * objPtr, char * file, int line)); /* 45 */
+ void (*tcl_DbIncrRefCount) _ANSI_ARGS_((Tcl_Obj * objPtr, char * file, int line)); /* 46 */
+ int (*tcl_DbIsShared) _ANSI_ARGS_((Tcl_Obj * objPtr, char * file, int line)); /* 47 */
+ Tcl_Obj * (*tcl_DbNewBooleanObj) _ANSI_ARGS_((int boolValue, char * file, int line)); /* 48 */
+ Tcl_Obj * (*tcl_DbNewByteArrayObj) _ANSI_ARGS_((unsigned char * bytes, int length, char * file, int line)); /* 49 */
+ Tcl_Obj * (*tcl_DbNewDoubleObj) _ANSI_ARGS_((double doubleValue, char * file, int line)); /* 50 */
+ Tcl_Obj * (*tcl_DbNewListObj) _ANSI_ARGS_((int objc, Tcl_Obj *CONST objv[], char * file, int line)); /* 51 */
+ Tcl_Obj * (*tcl_DbNewLongObj) _ANSI_ARGS_((long longValue, char * file, int line)); /* 52 */
+ Tcl_Obj * (*tcl_DbNewObj) _ANSI_ARGS_((char * file, int line)); /* 53 */
+ Tcl_Obj * (*tcl_DbNewStringObj) _ANSI_ARGS_((char * bytes, int length, char * file, int line)); /* 54 */
+ void (*tcl_DeleteAssocData) _ANSI_ARGS_((Tcl_Interp * interp, char * name)); /* 55 */
+ int (*tcl_DeleteCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * cmdName)); /* 56 */
+ int (*tcl_DeleteCommandFromToken) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Command command)); /* 57 */
+ void (*tcl_DeleteChannelHandler) _ANSI_ARGS_((Tcl_Channel chan, Tcl_ChannelProc * proc, ClientData clientData)); /* 58 */
+ void (*tcl_DeleteCloseHandler) _ANSI_ARGS_((Tcl_Channel chan, Tcl_CloseProc * proc, ClientData clientData)); /* 59 */
+ void (*tcl_DeleteEvents) _ANSI_ARGS_((Tcl_EventDeleteProc * proc, ClientData clientData)); /* 60 */
+ void (*tcl_DeleteEventSource) _ANSI_ARGS_((Tcl_EventSetupProc * setupProc, Tcl_EventCheckProc * checkProc, ClientData clientData)); /* 61 */
+ void (*tcl_DeleteExitHandler) _ANSI_ARGS_((Tcl_ExitProc * proc, ClientData clientData)); /* 62 */
+ void (*tcl_DeleteHashEntry) _ANSI_ARGS_((Tcl_HashEntry * entryPtr)); /* 63 */
+ void (*tcl_DeleteHashTable) _ANSI_ARGS_((Tcl_HashTable * tablePtr)); /* 64 */
+ void (*tcl_DeleteInterp) _ANSI_ARGS_((Tcl_Interp * interp)); /* 65 */
+ void (*tcl_DeleteTimerHandler) _ANSI_ARGS_((Tcl_TimerToken token)); /* 66 */
+ void (*tcl_DeleteTrace) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Trace trace)); /* 67 */
+ void (*tcl_DetachPids) _ANSI_ARGS_((int numPids, Tcl_Pid * pidPtr)); /* 68 */
+ void (*tcl_DontCallWhenDeleted) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_InterpDeleteProc * proc, ClientData clientData)); /* 69 */
+ int (*tcl_DoOneEvent) _ANSI_ARGS_((int flags)); /* 70 */
+ void (*tcl_DoWhenIdle) _ANSI_ARGS_((Tcl_IdleProc * proc, ClientData clientData)); /* 71 */
+ char * (*tcl_DStringAppend) _ANSI_ARGS_((Tcl_DString * dsPtr, CONST char * string, int length)); /* 72 */
+ char * (*tcl_DStringAppendElement) _ANSI_ARGS_((Tcl_DString * dsPtr, CONST char * string)); /* 73 */
+ void (*tcl_DStringEndSublist) _ANSI_ARGS_((Tcl_DString * dsPtr)); /* 74 */
+ void (*tcl_DStringFree) _ANSI_ARGS_((Tcl_DString * dsPtr)); /* 75 */
+ void (*tcl_DStringGetResult) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_DString * dsPtr)); /* 76 */
+ void (*tcl_DStringInit) _ANSI_ARGS_((Tcl_DString * dsPtr)); /* 77 */
+ void (*tcl_DStringResult) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_DString * dsPtr)); /* 78 */
+ void (*tcl_DStringSetLength) _ANSI_ARGS_((Tcl_DString * dsPtr, int length)); /* 79 */
+ void (*tcl_DStringStartSublist) _ANSI_ARGS_((Tcl_DString * dsPtr)); /* 80 */
+ int (*tcl_DumpActiveMemory) _ANSI_ARGS_((char * fileName)); /* 81 */
+ Tcl_Obj * (*tcl_DuplicateObj) _ANSI_ARGS_((Tcl_Obj * objPtr)); /* 82 */
+ int (*tcl_Eof) _ANSI_ARGS_((Tcl_Channel chan)); /* 83 */
+ char * (*tcl_ErrnoId) _ANSI_ARGS_((void)); /* 84 */
+ char * (*tcl_ErrnoMsg) _ANSI_ARGS_((int err)); /* 85 */
+ int (*tcl_Eval) _ANSI_ARGS_((Tcl_Interp * interp, char * string)); /* 86 */
+ int (*tcl_EvalFile) _ANSI_ARGS_((Tcl_Interp * interp, char * fileName)); /* 87 */
+ void (*tcl_EventuallyFree) _ANSI_ARGS_((ClientData clientData, Tcl_FreeProc * freeProc)); /* 88 */
+ int (*tcl_EvalObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr)); /* 89 */
+ void (*tcl_Exit) _ANSI_ARGS_((int status)); /* 90 */
+ int (*tcl_ExposeCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * hiddenCmdToken, char * cmdName)); /* 91 */
+ int (*tcl_ExprBoolean) _ANSI_ARGS_((Tcl_Interp * interp, char * string, int * ptr)); /* 92 */
+ int (*tcl_ExprBooleanObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, int * ptr)); /* 93 */
+ int (*tcl_ExprDouble) _ANSI_ARGS_((Tcl_Interp * interp, char * string, double * ptr)); /* 94 */
+ int (*tcl_ExprDoubleObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, double * ptr)); /* 95 */
+ int (*tcl_ExprLong) _ANSI_ARGS_((Tcl_Interp * interp, char * string, long * ptr)); /* 96 */
+ int (*tcl_ExprLongObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, long * ptr)); /* 97 */
+ int (*tcl_ExprObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, Tcl_Obj ** resultPtrPtr)); /* 98 */
+ int (*tcl_ExprString) _ANSI_ARGS_((Tcl_Interp * interp, char * string)); /* 99 */
+ void (*tcl_Finalize) _ANSI_ARGS_((void)); /* 100 */
+ void (*tcl_FindExecutable) _ANSI_ARGS_((char * argv0)); /* 101 */
+ Tcl_HashEntry * (*tcl_FirstHashEntry) _ANSI_ARGS_((Tcl_HashTable * tablePtr, Tcl_HashSearch * searchPtr)); /* 102 */
+ int (*tcl_Flush) _ANSI_ARGS_((Tcl_Channel chan)); /* 103 */
+ void (*tcl_Free) _ANSI_ARGS_((char * ptr)); /* 104 */
+ void (*tclFreeObj) _ANSI_ARGS_((Tcl_Obj * objPtr)); /* 105 */
+ void (*tcl_FreeResult) _ANSI_ARGS_((Tcl_Interp * interp)); /* 106 */
+ int (*tcl_GetAlias) _ANSI_ARGS_((Tcl_Interp * interp, char * slaveCmd, Tcl_Interp ** targetInterpPtr, char ** targetCmdPtr, int * argcPtr, char *** argvPtr)); /* 107 */
+ int (*tcl_GetAliasObj) _ANSI_ARGS_((Tcl_Interp * interp, char * slaveCmd, Tcl_Interp ** targetInterpPtr, char ** targetCmdPtr, int * objcPtr, Tcl_Obj *** objv)); /* 108 */
+ ClientData (*tcl_GetAssocData) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_InterpDeleteProc ** procPtr)); /* 109 */
+ int (*tcl_GetBoolean) _ANSI_ARGS_((Tcl_Interp * interp, char * string, int * boolPtr)); /* 110 */
+ int (*tcl_GetBooleanFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, int * boolPtr)); /* 111 */
+ unsigned char * (*tcl_GetByteArrayFromObj) _ANSI_ARGS_((Tcl_Obj * objPtr, int * lengthPtr)); /* 112 */
+ Tcl_Channel (*tcl_GetChannel) _ANSI_ARGS_((Tcl_Interp * interp, char * chanName, int * modePtr)); /* 113 */
+ int (*tcl_GetChannelBufferSize) _ANSI_ARGS_((Tcl_Channel chan)); /* 114 */
+ int (*tcl_GetChannelHandle) _ANSI_ARGS_((Tcl_Channel chan, int direction, ClientData * handlePtr)); /* 115 */
+ ClientData (*tcl_GetChannelInstanceData) _ANSI_ARGS_((Tcl_Channel chan)); /* 116 */
+ int (*tcl_GetChannelMode) _ANSI_ARGS_((Tcl_Channel chan)); /* 117 */
+ char * (*tcl_GetChannelName) _ANSI_ARGS_((Tcl_Channel chan)); /* 118 */
+ int (*tcl_GetChannelOption) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan, char * optionName, Tcl_DString * dsPtr)); /* 119 */
+ Tcl_ChannelType * (*tcl_GetChannelType) _ANSI_ARGS_((Tcl_Channel chan)); /* 120 */
+ int (*tcl_GetCommandInfo) _ANSI_ARGS_((Tcl_Interp * interp, char * cmdName, Tcl_CmdInfo * infoPtr)); /* 121 */
+ char * (*tcl_GetCommandName) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Command command)); /* 122 */
+ int (*tcl_GetDouble) _ANSI_ARGS_((Tcl_Interp * interp, char * string, double * doublePtr)); /* 123 */
+ int (*tcl_GetDoubleFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, double * doublePtr)); /* 124 */
+ int (*tcl_GetErrno) _ANSI_ARGS_((void)); /* 125 */
+ char * (*tcl_GetHostName) _ANSI_ARGS_((void)); /* 126 */
+ int (*tcl_GetIndexFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, char ** tablePtr, char * msg, int flags, int * indexPtr)); /* 127 */
+ int (*tcl_GetInt) _ANSI_ARGS_((Tcl_Interp * interp, char * string, int * intPtr)); /* 128 */
+ int (*tcl_GetInterpPath) _ANSI_ARGS_((Tcl_Interp * askInterp, Tcl_Interp * slaveInterp)); /* 129 */
+ int (*tcl_GetIntFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, int * intPtr)); /* 130 */
+ int (*tcl_GetLongFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, long * longPtr)); /* 131 */
+ Tcl_Interp * (*tcl_GetMaster) _ANSI_ARGS_((Tcl_Interp * interp)); /* 132 */
+ CONST char * (*tcl_GetNameOfExecutable) _ANSI_ARGS_((void)); /* 133 */
+ Tcl_Obj * (*tcl_GetObjResult) _ANSI_ARGS_((Tcl_Interp * interp)); /* 134 */
+ Tcl_ObjType * (*tcl_GetObjType) _ANSI_ARGS_((char * typeName)); /* 135 */
+ Tcl_PathType (*tcl_GetPathType) _ANSI_ARGS_((char * path)); /* 136 */
+ int (*tcl_Gets) _ANSI_ARGS_((Tcl_Channel chan, Tcl_DString * dsPtr)); /* 137 */
+ int (*tcl_GetsObj) _ANSI_ARGS_((Tcl_Channel chan, Tcl_Obj * objPtr)); /* 138 */
+ int (*tcl_GetServiceMode) _ANSI_ARGS_((void)); /* 139 */
+ Tcl_Interp * (*tcl_GetSlave) _ANSI_ARGS_((Tcl_Interp * interp, char * slaveName)); /* 140 */
+ Tcl_Channel (*tcl_GetStdChannel) _ANSI_ARGS_((int type)); /* 141 */
+ char * (*tcl_GetStringFromObj) _ANSI_ARGS_((Tcl_Obj * objPtr, int * lengthPtr)); /* 142 */
+ char * (*tcl_GetStringResult) _ANSI_ARGS_((Tcl_Interp * interp)); /* 143 */
+ char * (*tcl_GetVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, int flags)); /* 144 */
+ char * (*tcl_GetVar2) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, int flags)); /* 145 */
+ int (*tcl_GlobalEval) _ANSI_ARGS_((Tcl_Interp * interp, char * command)); /* 146 */
+ int (*tcl_GlobalEvalObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr)); /* 147 */
+ char * (*tcl_HashStats) _ANSI_ARGS_((Tcl_HashTable * tablePtr)); /* 148 */
+ int (*tcl_HideCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * cmdName, char * hiddenCmdToken)); /* 149 */
+ int (*tcl_Init) _ANSI_ARGS_((Tcl_Interp * interp)); /* 150 */
+ void (*tcl_InitHashTable) _ANSI_ARGS_((Tcl_HashTable * tablePtr, int keyType)); /* 151 */
+ void (*tcl_InitMemory) _ANSI_ARGS_((Tcl_Interp * interp)); /* 152 */
+ int (*tcl_InputBlocked) _ANSI_ARGS_((Tcl_Channel chan)); /* 153 */
+ int (*tcl_InputBuffered) _ANSI_ARGS_((Tcl_Channel chan)); /* 154 */
+ int (*tcl_InterpDeleted) _ANSI_ARGS_((Tcl_Interp * interp)); /* 155 */
+ int (*tcl_IsSafe) _ANSI_ARGS_((Tcl_Interp * interp)); /* 156 */
+ void (*tcl_InvalidateStringRep) _ANSI_ARGS_((Tcl_Obj * objPtr)); /* 157 */
+ char * (*tcl_JoinPath) _ANSI_ARGS_((int argc, char ** argv, Tcl_DString * resultPtr)); /* 158 */
+ int (*tcl_LinkVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, char * addr, int type)); /* 159 */
+ int (*tcl_ListObjAppendList) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * listPtr, Tcl_Obj * elemListPtr)); /* 160 */
+ int (*tcl_ListObjAppendElement) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * listPtr, Tcl_Obj * objPtr)); /* 161 */
+ int (*tcl_ListObjGetElements) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * listPtr, int * objcPtr, Tcl_Obj *** objvPtr)); /* 162 */
+ int (*tcl_ListObjIndex) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * listPtr, int index, Tcl_Obj ** objPtrPtr)); /* 163 */
+ int (*tcl_ListObjLength) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * listPtr, int * intPtr)); /* 164 */
+ int (*tcl_ListObjReplace) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * listPtr, int first, int count, int objc, Tcl_Obj *CONST objv[])); /* 165 */
+ Tcl_Channel (*tcl_MakeFileChannel) _ANSI_ARGS_((ClientData handle, int mode)); /* 166 */
+ int (*tcl_MakeSafe) _ANSI_ARGS_((Tcl_Interp * interp)); /* 167 */
+ Tcl_Channel (*tcl_MakeTcpClientChannel) _ANSI_ARGS_((ClientData tcpSocket)); /* 168 */
+ char * (*tcl_Merge) _ANSI_ARGS_((int argc, char ** argv)); /* 169 */
+ Tcl_Obj * (*tcl_NewBooleanObj) _ANSI_ARGS_((int boolValue)); /* 170 */
+ Tcl_Obj * (*tcl_NewByteArrayObj) _ANSI_ARGS_((unsigned char * bytes, int length)); /* 171 */
+ Tcl_Obj * (*tcl_NewDoubleObj) _ANSI_ARGS_((double doubleValue)); /* 172 */
+ Tcl_Obj * (*tcl_NewIntObj) _ANSI_ARGS_((int intValue)); /* 173 */
+ Tcl_Obj * (*tcl_NewListObj) _ANSI_ARGS_((int objc, Tcl_Obj *CONST objv[])); /* 174 */
+ Tcl_Obj * (*tcl_NewLongObj) _ANSI_ARGS_((long longValue)); /* 175 */
+ Tcl_Obj * (*tcl_NewObj) _ANSI_ARGS_((void)); /* 176 */
+ Tcl_Obj * (*tcl_NewStringObj) _ANSI_ARGS_((char * bytes, int length)); /* 177 */
+ Tcl_HashEntry * (*tcl_NextHashEntry) _ANSI_ARGS_((Tcl_HashSearch * searchPtr)); /* 178 */
+ void (*tcl_NotifyChannel) _ANSI_ARGS_((Tcl_Channel channel, int mask)); /* 179 */
+ Tcl_Obj * (*tcl_ObjGetVar2) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * part1Ptr, Tcl_Obj * part2Ptr, int flags)); /* 180 */
+ Tcl_Obj * (*tcl_ObjSetVar2) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * part1Ptr, Tcl_Obj * part2Ptr, Tcl_Obj * newValuePtr, int flags)); /* 181 */
+ Tcl_Channel (*tcl_OpenCommandChannel) _ANSI_ARGS_((Tcl_Interp * interp, int argc, char ** argv, int flags)); /* 182 */
+ Tcl_Channel (*tcl_OpenFileChannel) _ANSI_ARGS_((Tcl_Interp * interp, char * fileName, char * modeString, int permissions)); /* 183 */
+ Tcl_Channel (*tcl_OpenTcpClient) _ANSI_ARGS_((Tcl_Interp * interp, int port, char * address, char * myaddr, int myport, int async)); /* 184 */
+ Tcl_Channel (*tcl_OpenTcpServer) _ANSI_ARGS_((Tcl_Interp * interp, int port, char * host, Tcl_TcpAcceptProc * acceptProc, ClientData callbackData)); /* 185 */
+ void (*panic) _ANSI_ARGS_(TCL_VARARGS(char *,format)); /* 186 */
+ void (*panicVA) _ANSI_ARGS_((char * format, va_list argList)); /* 187 */
+ char * (*tcl_ParseVar) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char ** termPtr)); /* 188 */
+ char * (*tcl_PkgPresent) _ANSI_ARGS_((Tcl_Interp * interp, char * name, char * version, int exact)); /* 189 */
+ char * (*tcl_PkgPresentEx) _ANSI_ARGS_((Tcl_Interp * interp, char * name, char * version, int exact, ClientData * clientDataPtr)); /* 190 */
+ int (*tcl_PkgProvide) _ANSI_ARGS_((Tcl_Interp * interp, char * name, char * version)); /* 191 */
+ int (*tcl_PkgProvideEx) _ANSI_ARGS_((Tcl_Interp * interp, char * name, char * version, ClientData clientData)); /* 192 */
+ char * (*tcl_PkgRequire) _ANSI_ARGS_((Tcl_Interp * interp, char * name, char * version, int exact)); /* 193 */
+ char * (*tcl_PkgRequireEx) _ANSI_ARGS_((Tcl_Interp * interp, char * name, char * version, int exact, ClientData * clientDataPtr)); /* 194 */
+ char * (*tcl_PosixError) _ANSI_ARGS_((Tcl_Interp * interp)); /* 195 */
+ void (*tcl_Preserve) _ANSI_ARGS_((ClientData data)); /* 196 */
+ void (*tcl_PrintDouble) _ANSI_ARGS_((Tcl_Interp * interp, double value, char * dst)); /* 197 */
+ int (*tcl_PutEnv) _ANSI_ARGS_((CONST char * string)); /* 198 */
+ void (*tcl_QueueEvent) _ANSI_ARGS_((Tcl_Event * evPtr, Tcl_QueuePosition position)); /* 199 */
+ int (*tcl_Read) _ANSI_ARGS_((Tcl_Channel chan, char * bufPtr, int toRead)); /* 200 */
+ char * (*tcl_Realloc) _ANSI_ARGS_((char * ptr, unsigned int size)); /* 201 */
+ void (*tcl_ReapDetachedProcs) _ANSI_ARGS_((void)); /* 202 */
+ int (*tcl_RecordAndEval) _ANSI_ARGS_((Tcl_Interp * interp, char * cmd, int flags)); /* 203 */
+ int (*tcl_RecordAndEvalObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * cmdPtr, int flags)); /* 204 */
+ Tcl_RegExp (*tcl_RegExpCompile) _ANSI_ARGS_((Tcl_Interp * interp, char * string)); /* 205 */
+ int (*tcl_RegExpExec) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_RegExp regexp, char * string, char * start)); /* 206 */
+ int (*tcl_RegExpMatch) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * pattern)); /* 207 */
+ void (*tcl_RegExpRange) _ANSI_ARGS_((Tcl_RegExp regexp, int index, char ** startPtr, char ** endPtr)); /* 208 */
+ void (*tcl_RegisterChannel) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan)); /* 209 */
+ void (*tcl_RegisterObjType) _ANSI_ARGS_((Tcl_ObjType * typePtr)); /* 210 */
+ void (*tcl_Release) _ANSI_ARGS_((ClientData clientData)); /* 211 */
+ void (*tcl_ResetResult) _ANSI_ARGS_((Tcl_Interp * interp)); /* 212 */
+ int (*tcl_ScanCountedElement) _ANSI_ARGS_((CONST char * string, int length, int * flagPtr)); /* 213 */
+ int (*tcl_ScanElement) _ANSI_ARGS_((CONST char * string, int * flagPtr)); /* 214 */
+ int (*tcl_Seek) _ANSI_ARGS_((Tcl_Channel chan, int offset, int mode)); /* 215 */
+ int (*tcl_ServiceAll) _ANSI_ARGS_((void)); /* 216 */
+ int (*tcl_ServiceEvent) _ANSI_ARGS_((int flags)); /* 217 */
+ void (*tcl_SetAssocData) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_InterpDeleteProc * proc, ClientData clientData)); /* 218 */
+ void (*tcl_SetBooleanObj) _ANSI_ARGS_((Tcl_Obj * objPtr, int boolValue)); /* 219 */
+ unsigned char * (*tcl_SetByteArrayLength) _ANSI_ARGS_((Tcl_Obj * objPtr, int length)); /* 220 */
+ void (*tcl_SetByteArrayObj) _ANSI_ARGS_((Tcl_Obj * objPtr, unsigned char * bytes, int length)); /* 221 */
+ void (*tcl_SetChannelBufferSize) _ANSI_ARGS_((Tcl_Channel chan, int sz)); /* 222 */
+ int (*tcl_SetChannelOption) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan, char * optionName, char * newValue)); /* 223 */
+ int (*tcl_SetCommandInfo) _ANSI_ARGS_((Tcl_Interp * interp, char * cmdName, Tcl_CmdInfo * infoPtr)); /* 224 */
+ void (*tcl_SetDoubleObj) _ANSI_ARGS_((Tcl_Obj * objPtr, double doubleValue)); /* 225 */
+ void (*tcl_SetErrno) _ANSI_ARGS_((int err)); /* 226 */
+ void (*tcl_SetErrorCode) _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp)); /* 227 */
+ void (*tcl_SetErrorCodeVA) _ANSI_ARGS_((Tcl_Interp * interp, va_list argList)); /* 228 */
+ void (*tcl_SetIntObj) _ANSI_ARGS_((Tcl_Obj * objPtr, int intValue)); /* 229 */
+ void (*tcl_SetListObj) _ANSI_ARGS_((Tcl_Obj * objPtr, int objc, Tcl_Obj *CONST objv[])); /* 230 */
+ void (*tcl_SetLongObj) _ANSI_ARGS_((Tcl_Obj * objPtr, long longValue)); /* 231 */
+ void (*tcl_SetMaxBlockTime) _ANSI_ARGS_((Tcl_Time * timePtr)); /* 232 */
+ void (*tcl_SetObjErrorCode) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * errorObjPtr)); /* 233 */
+ void (*tcl_SetObjLength) _ANSI_ARGS_((Tcl_Obj * objPtr, int length)); /* 234 */
+ void (*tcl_SetObjResult) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * resultObjPtr)); /* 235 */
+ void (*tcl_SetPanicProc) _ANSI_ARGS_((Tcl_PanicProc * panicProc)); /* 236 */
+ int (*tcl_SetRecursionLimit) _ANSI_ARGS_((Tcl_Interp * interp, int depth)); /* 237 */
+ void (*tcl_SetResult) _ANSI_ARGS_((Tcl_Interp * interp, char * string, Tcl_FreeProc * freeProc)); /* 238 */
+ int (*tcl_SetServiceMode) _ANSI_ARGS_((int mode)); /* 239 */
+ void (*tcl_SetStdChannel) _ANSI_ARGS_((Tcl_Channel channel, int type)); /* 240 */
+ void (*tcl_SetStringObj) _ANSI_ARGS_((Tcl_Obj * objPtr, char * bytes, int length)); /* 241 */
+ void (*tcl_SetTimer) _ANSI_ARGS_((Tcl_Time * timePtr)); /* 242 */
+ char * (*tcl_SetVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, char * newValue, int flags)); /* 243 */
+ char * (*tcl_SetVar2) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, char * newValue, int flags)); /* 244 */
+ char * (*tcl_SignalId) _ANSI_ARGS_((int sig)); /* 245 */
+ char * (*tcl_SignalMsg) _ANSI_ARGS_((int sig)); /* 246 */
+ void (*tcl_Sleep) _ANSI_ARGS_((int ms)); /* 247 */
+ void (*tcl_SourceRCFile) _ANSI_ARGS_((Tcl_Interp * interp)); /* 248 */
+ int (*tcl_SplitList) _ANSI_ARGS_((Tcl_Interp * interp, char * list, int * argcPtr, char *** argvPtr)); /* 249 */
+ void (*tcl_SplitPath) _ANSI_ARGS_((char * path, int * argcPtr, char *** argvPtr)); /* 250 */
+ void (*tcl_StaticPackage) _ANSI_ARGS_((Tcl_Interp * interp, char * pkgName, Tcl_PackageInitProc * initProc, Tcl_PackageInitProc * safeInitProc)); /* 251 */
+ int (*tcl_StringMatch) _ANSI_ARGS_((char * string, char * pattern)); /* 252 */
+ int (*tcl_Tell) _ANSI_ARGS_((Tcl_Channel chan)); /* 253 */
+ int (*tcl_TraceVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, int flags, Tcl_VarTraceProc * proc, ClientData clientData)); /* 254 */
+ int (*tcl_TraceVar2) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, int flags, Tcl_VarTraceProc * proc, ClientData clientData)); /* 255 */
+ char * (*tcl_TranslateFileName) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_DString * bufferPtr)); /* 256 */
+ int (*tcl_Ungets) _ANSI_ARGS_((Tcl_Channel chan, char * str, int len, int atHead)); /* 257 */
+ void (*tcl_UnlinkVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName)); /* 258 */
+ int (*tcl_UnregisterChannel) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan)); /* 259 */
+ int (*tcl_UnsetVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, int flags)); /* 260 */
+ int (*tcl_UnsetVar2) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, int flags)); /* 261 */
+ void (*tcl_UntraceVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, int flags, Tcl_VarTraceProc * proc, ClientData clientData)); /* 262 */
+ void (*tcl_UntraceVar2) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, int flags, Tcl_VarTraceProc * proc, ClientData clientData)); /* 263 */
+ void (*tcl_UpdateLinkedVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName)); /* 264 */
+ int (*tcl_UpVar) _ANSI_ARGS_((Tcl_Interp * interp, char * frameName, char * varName, char * localName, int flags)); /* 265 */
+ int (*tcl_UpVar2) _ANSI_ARGS_((Tcl_Interp * interp, char * frameName, char * part1, char * part2, char * localName, int flags)); /* 266 */
+ void (*tcl_ValidateAllMemory) _ANSI_ARGS_((char * file, int line)); /* 267 */
+ int (*tcl_VarEval) _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp)); /* 268 */
+ int (*tcl_VarEvalVA) _ANSI_ARGS_((Tcl_Interp * interp, va_list argList)); /* 269 */
+ ClientData (*tcl_VarTraceInfo) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, int flags, Tcl_VarTraceProc * procPtr, ClientData prevClientData)); /* 270 */
+ ClientData (*tcl_VarTraceInfo2) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, int flags, Tcl_VarTraceProc * procPtr, ClientData prevClientData)); /* 271 */
+ int (*tcl_WaitForEvent) _ANSI_ARGS_((Tcl_Time * timePtr)); /* 272 */
+ Tcl_Pid (*tcl_WaitPid) _ANSI_ARGS_((Tcl_Pid pid, int * statPtr, int options)); /* 273 */
+ int (*tcl_Write) _ANSI_ARGS_((Tcl_Channel chan, char * s, int slen)); /* 274 */
+ void (*tcl_WrongNumArgs) _ANSI_ARGS_((Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[], char * message)); /* 275 */
+} TclStubs;
+
+extern TclStubs *tclStubsPtr;
+
+#if defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS)
+
+/*
+ * Inline function declarations:
+ */
+
+#ifndef Tcl_AddErrorInfo
+#define Tcl_AddErrorInfo(interp, message) \
+ (tclStubsPtr->tcl_AddErrorInfo)(interp, message) /* 0 */
+#endif
+#ifndef Tcl_AddObjErrorInfo
+#define Tcl_AddObjErrorInfo(interp, message, length) \
+ (tclStubsPtr->tcl_AddObjErrorInfo)(interp, message, length) /* 1 */
+#endif
+#ifndef Tcl_Alloc
+#define Tcl_Alloc(size) \
+ (tclStubsPtr->tcl_Alloc)(size) /* 2 */
+#endif
+#ifndef Tcl_AllowExceptions
+#define Tcl_AllowExceptions(interp) \
+ (tclStubsPtr->tcl_AllowExceptions)(interp) /* 3 */
+#endif
+#ifndef Tcl_AppendAllObjTypes
+#define Tcl_AppendAllObjTypes(interp, objPtr) \
+ (tclStubsPtr->tcl_AppendAllObjTypes)(interp, objPtr) /* 4 */
+#endif
+#ifndef Tcl_AppendElement
+#define Tcl_AppendElement(interp, string) \
+ (tclStubsPtr->tcl_AppendElement)(interp, string) /* 5 */
+#endif
+#ifndef Tcl_AppendResult
+#define Tcl_AppendResult \
+ (tclStubsPtr->tcl_AppendResult) /* 6 */
+#endif
+#ifndef Tcl_AppendResultVA
+#define Tcl_AppendResultVA(interp, argList) \
+ (tclStubsPtr->tcl_AppendResultVA)(interp, argList) /* 7 */
+#endif
+#ifndef Tcl_AppendToObj
+#define Tcl_AppendToObj(objPtr, bytes, length) \
+ (tclStubsPtr->tcl_AppendToObj)(objPtr, bytes, length) /* 8 */
+#endif
+#ifndef Tcl_AppendStringsToObj
+#define Tcl_AppendStringsToObj \
+ (tclStubsPtr->tcl_AppendStringsToObj) /* 9 */
+#endif
+#ifndef Tcl_AppendStringsToObjVA
+#define Tcl_AppendStringsToObjVA(objPtr, argList) \
+ (tclStubsPtr->tcl_AppendStringsToObjVA)(objPtr, argList) /* 10 */
+#endif
+#ifndef Tcl_AsyncCreate
+#define Tcl_AsyncCreate(proc, clientData) \
+ (tclStubsPtr->tcl_AsyncCreate)(proc, clientData) /* 11 */
+#endif
+#ifndef Tcl_AsyncDelete
+#define Tcl_AsyncDelete(async) \
+ (tclStubsPtr->tcl_AsyncDelete)(async) /* 12 */
+#endif
+#ifndef Tcl_AsyncInvoke
+#define Tcl_AsyncInvoke(interp, code) \
+ (tclStubsPtr->tcl_AsyncInvoke)(interp, code) /* 13 */
+#endif
+#ifndef Tcl_AsyncMark
+#define Tcl_AsyncMark(async) \
+ (tclStubsPtr->tcl_AsyncMark)(async) /* 14 */
+#endif
+#ifndef Tcl_AsyncReady
+#define Tcl_AsyncReady() \
+ (tclStubsPtr->tcl_AsyncReady)() /* 15 */
+#endif
+#ifndef Tcl_BackgroundError
+#define Tcl_BackgroundError(interp) \
+ (tclStubsPtr->tcl_BackgroundError)(interp) /* 16 */
+#endif
+#ifndef Tcl_Backslash
+#define Tcl_Backslash(src, readPtr) \
+ (tclStubsPtr->tcl_Backslash)(src, readPtr) /* 17 */
+#endif
+#ifndef Tcl_BadChannelOption
+#define Tcl_BadChannelOption(interp, optionName, optionList) \
+ (tclStubsPtr->tcl_BadChannelOption)(interp, optionName, optionList) /* 18 */
+#endif
+#ifndef Tcl_CallWhenDeleted
+#define Tcl_CallWhenDeleted(interp, proc, clientData) \
+ (tclStubsPtr->tcl_CallWhenDeleted)(interp, proc, clientData) /* 19 */
+#endif
+#ifndef Tcl_CancelIdleCall
+#define Tcl_CancelIdleCall(idleProc, clientData) \
+ (tclStubsPtr->tcl_CancelIdleCall)(idleProc, clientData) /* 20 */
+#endif
+#ifndef Tcl_Close
+#define Tcl_Close(interp, chan) \
+ (tclStubsPtr->tcl_Close)(interp, chan) /* 21 */
+#endif
+#ifndef Tcl_CommandComplete
+#define Tcl_CommandComplete(cmd) \
+ (tclStubsPtr->tcl_CommandComplete)(cmd) /* 22 */
+#endif
+#ifndef Tcl_Concat
+#define Tcl_Concat(argc, argv) \
+ (tclStubsPtr->tcl_Concat)(argc, argv) /* 23 */
+#endif
+#ifndef Tcl_ConcatObj
+#define Tcl_ConcatObj(objc, objv) \
+ (tclStubsPtr->tcl_ConcatObj)(objc, objv) /* 24 */
+#endif
+#ifndef Tcl_ConvertCountedElement
+#define Tcl_ConvertCountedElement(src, length, dst, flags) \
+ (tclStubsPtr->tcl_ConvertCountedElement)(src, length, dst, flags) /* 25 */
+#endif
+#ifndef Tcl_ConvertElement
+#define Tcl_ConvertElement(src, dst, flags) \
+ (tclStubsPtr->tcl_ConvertElement)(src, dst, flags) /* 26 */
+#endif
+#ifndef Tcl_ConvertToType
+#define Tcl_ConvertToType(interp, objPtr, typePtr) \
+ (tclStubsPtr->tcl_ConvertToType)(interp, objPtr, typePtr) /* 27 */
+#endif
+#ifndef Tcl_CreateAlias
+#define Tcl_CreateAlias(slave, slaveCmd, target, targetCmd, argc, argv) \
+ (tclStubsPtr->tcl_CreateAlias)(slave, slaveCmd, target, targetCmd, argc, argv) /* 28 */
+#endif
+#ifndef Tcl_CreateAliasObj
+#define Tcl_CreateAliasObj(slave, slaveCmd, target, targetCmd, objc, objv) \
+ (tclStubsPtr->tcl_CreateAliasObj)(slave, slaveCmd, target, targetCmd, objc, objv) /* 29 */
+#endif
+#ifndef Tcl_CreateChannel
+#define Tcl_CreateChannel(typePtr, chanName, instanceData, mask) \
+ (tclStubsPtr->tcl_CreateChannel)(typePtr, chanName, instanceData, mask) /* 30 */
+#endif
+#ifndef Tcl_CreateChannelHandler
+#define Tcl_CreateChannelHandler(chan, mask, proc, clientData) \
+ (tclStubsPtr->tcl_CreateChannelHandler)(chan, mask, proc, clientData) /* 31 */
+#endif
+#ifndef Tcl_CreateCloseHandler
+#define Tcl_CreateCloseHandler(chan, proc, clientData) \
+ (tclStubsPtr->tcl_CreateCloseHandler)(chan, proc, clientData) /* 32 */
+#endif
+#ifndef Tcl_CreateCommand
+#define Tcl_CreateCommand(interp, cmdName, proc, clientData, deleteProc) \
+ (tclStubsPtr->tcl_CreateCommand)(interp, cmdName, proc, clientData, deleteProc) /* 33 */
+#endif
+#ifndef Tcl_CreateEventSource
+#define Tcl_CreateEventSource(setupProc, checkProc, clientData) \
+ (tclStubsPtr->tcl_CreateEventSource)(setupProc, checkProc, clientData) /* 34 */
+#endif
+#ifndef Tcl_CreateExitHandler
+#define Tcl_CreateExitHandler(proc, clientData) \
+ (tclStubsPtr->tcl_CreateExitHandler)(proc, clientData) /* 35 */
+#endif
+#ifndef Tcl_CreateInterp
+#define Tcl_CreateInterp() \
+ (tclStubsPtr->tcl_CreateInterp)() /* 36 */
+#endif
+#ifndef Tcl_CreateMathFunc
+#define Tcl_CreateMathFunc(interp, name, numArgs, argTypes, proc, clientData) \
+ (tclStubsPtr->tcl_CreateMathFunc)(interp, name, numArgs, argTypes, proc, clientData) /* 37 */
+#endif
+#ifndef Tcl_CreateObjCommand
+#define Tcl_CreateObjCommand(interp, cmdName, proc, clientData, deleteProc) \
+ (tclStubsPtr->tcl_CreateObjCommand)(interp, cmdName, proc, clientData, deleteProc) /* 38 */
+#endif
+#ifndef Tcl_CreateSlave
+#define Tcl_CreateSlave(interp, slaveName, isSafe) \
+ (tclStubsPtr->tcl_CreateSlave)(interp, slaveName, isSafe) /* 39 */
+#endif
+#ifndef Tcl_CreateTimerHandler
+#define Tcl_CreateTimerHandler(milliseconds, proc, clientData) \
+ (tclStubsPtr->tcl_CreateTimerHandler)(milliseconds, proc, clientData) /* 40 */
+#endif
+#ifndef Tcl_CreateTrace
+#define Tcl_CreateTrace(interp, level, proc, clientData) \
+ (tclStubsPtr->tcl_CreateTrace)(interp, level, proc, clientData) /* 41 */
+#endif
+#ifndef Tcl_DbCkalloc
+#define Tcl_DbCkalloc(size, file, line) \
+ (tclStubsPtr->tcl_DbCkalloc)(size, file, line) /* 42 */
+#endif
+#ifndef Tcl_DbCkfree
+#define Tcl_DbCkfree(ptr, file, line) \
+ (tclStubsPtr->tcl_DbCkfree)(ptr, file, line) /* 43 */
+#endif
+#ifndef Tcl_DbCkrealloc
+#define Tcl_DbCkrealloc(ptr, size, file, line) \
+ (tclStubsPtr->tcl_DbCkrealloc)(ptr, size, file, line) /* 44 */
+#endif
+#ifndef Tcl_DbDecrRefCount
+#define Tcl_DbDecrRefCount(objPtr, file, line) \
+ (tclStubsPtr->tcl_DbDecrRefCount)(objPtr, file, line) /* 45 */
+#endif
+#ifndef Tcl_DbIncrRefCount
+#define Tcl_DbIncrRefCount(objPtr, file, line) \
+ (tclStubsPtr->tcl_DbIncrRefCount)(objPtr, file, line) /* 46 */
+#endif
+#ifndef Tcl_DbIsShared
+#define Tcl_DbIsShared(objPtr, file, line) \
+ (tclStubsPtr->tcl_DbIsShared)(objPtr, file, line) /* 47 */
+#endif
+#ifndef Tcl_DbNewBooleanObj
+#define Tcl_DbNewBooleanObj(boolValue, file, line) \
+ (tclStubsPtr->tcl_DbNewBooleanObj)(boolValue, file, line) /* 48 */
+#endif
+#ifndef Tcl_DbNewByteArrayObj
+#define Tcl_DbNewByteArrayObj(bytes, length, file, line) \
+ (tclStubsPtr->tcl_DbNewByteArrayObj)(bytes, length, file, line) /* 49 */
+#endif
+#ifndef Tcl_DbNewDoubleObj
+#define Tcl_DbNewDoubleObj(doubleValue, file, line) \
+ (tclStubsPtr->tcl_DbNewDoubleObj)(doubleValue, file, line) /* 50 */
+#endif
+#ifndef Tcl_DbNewListObj
+#define Tcl_DbNewListObj(objc, objv, file, line) \
+ (tclStubsPtr->tcl_DbNewListObj)(objc, objv, file, line) /* 51 */
+#endif
+#ifndef Tcl_DbNewLongObj
+#define Tcl_DbNewLongObj(longValue, file, line) \
+ (tclStubsPtr->tcl_DbNewLongObj)(longValue, file, line) /* 52 */
+#endif
+#ifndef Tcl_DbNewObj
+#define Tcl_DbNewObj(file, line) \
+ (tclStubsPtr->tcl_DbNewObj)(file, line) /* 53 */
+#endif
+#ifndef Tcl_DbNewStringObj
+#define Tcl_DbNewStringObj(bytes, length, file, line) \
+ (tclStubsPtr->tcl_DbNewStringObj)(bytes, length, file, line) /* 54 */
+#endif
+#ifndef Tcl_DeleteAssocData
+#define Tcl_DeleteAssocData(interp, name) \
+ (tclStubsPtr->tcl_DeleteAssocData)(interp, name) /* 55 */
+#endif
+#ifndef Tcl_DeleteCommand
+#define Tcl_DeleteCommand(interp, cmdName) \
+ (tclStubsPtr->tcl_DeleteCommand)(interp, cmdName) /* 56 */
+#endif
+#ifndef Tcl_DeleteCommandFromToken
+#define Tcl_DeleteCommandFromToken(interp, command) \
+ (tclStubsPtr->tcl_DeleteCommandFromToken)(interp, command) /* 57 */
+#endif
+#ifndef Tcl_DeleteChannelHandler
+#define Tcl_DeleteChannelHandler(chan, proc, clientData) \
+ (tclStubsPtr->tcl_DeleteChannelHandler)(chan, proc, clientData) /* 58 */
+#endif
+#ifndef Tcl_DeleteCloseHandler
+#define Tcl_DeleteCloseHandler(chan, proc, clientData) \
+ (tclStubsPtr->tcl_DeleteCloseHandler)(chan, proc, clientData) /* 59 */
+#endif
+#ifndef Tcl_DeleteEvents
+#define Tcl_DeleteEvents(proc, clientData) \
+ (tclStubsPtr->tcl_DeleteEvents)(proc, clientData) /* 60 */
+#endif
+#ifndef Tcl_DeleteEventSource
+#define Tcl_DeleteEventSource(setupProc, checkProc, clientData) \
+ (tclStubsPtr->tcl_DeleteEventSource)(setupProc, checkProc, clientData) /* 61 */
+#endif
+#ifndef Tcl_DeleteExitHandler
+#define Tcl_DeleteExitHandler(proc, clientData) \
+ (tclStubsPtr->tcl_DeleteExitHandler)(proc, clientData) /* 62 */
+#endif
+#ifndef Tcl_DeleteHashEntry
+#define Tcl_DeleteHashEntry(entryPtr) \
+ (tclStubsPtr->tcl_DeleteHashEntry)(entryPtr) /* 63 */
+#endif
+#ifndef Tcl_DeleteHashTable
+#define Tcl_DeleteHashTable(tablePtr) \
+ (tclStubsPtr->tcl_DeleteHashTable)(tablePtr) /* 64 */
+#endif
+#ifndef Tcl_DeleteInterp
+#define Tcl_DeleteInterp(interp) \
+ (tclStubsPtr->tcl_DeleteInterp)(interp) /* 65 */
+#endif
+#ifndef Tcl_DeleteTimerHandler
+#define Tcl_DeleteTimerHandler(token) \
+ (tclStubsPtr->tcl_DeleteTimerHandler)(token) /* 66 */
+#endif
+#ifndef Tcl_DeleteTrace
+#define Tcl_DeleteTrace(interp, trace) \
+ (tclStubsPtr->tcl_DeleteTrace)(interp, trace) /* 67 */
+#endif
+#ifndef Tcl_DetachPids
+#define Tcl_DetachPids(numPids, pidPtr) \
+ (tclStubsPtr->tcl_DetachPids)(numPids, pidPtr) /* 68 */
+#endif
+#ifndef Tcl_DontCallWhenDeleted
+#define Tcl_DontCallWhenDeleted(interp, proc, clientData) \
+ (tclStubsPtr->tcl_DontCallWhenDeleted)(interp, proc, clientData) /* 69 */
+#endif
+#ifndef Tcl_DoOneEvent
+#define Tcl_DoOneEvent(flags) \
+ (tclStubsPtr->tcl_DoOneEvent)(flags) /* 70 */
+#endif
+#ifndef Tcl_DoWhenIdle
+#define Tcl_DoWhenIdle(proc, clientData) \
+ (tclStubsPtr->tcl_DoWhenIdle)(proc, clientData) /* 71 */
+#endif
+#ifndef Tcl_DStringAppend
+#define Tcl_DStringAppend(dsPtr, string, length) \
+ (tclStubsPtr->tcl_DStringAppend)(dsPtr, string, length) /* 72 */
+#endif
+#ifndef Tcl_DStringAppendElement
+#define Tcl_DStringAppendElement(dsPtr, string) \
+ (tclStubsPtr->tcl_DStringAppendElement)(dsPtr, string) /* 73 */
+#endif
+#ifndef Tcl_DStringEndSublist
+#define Tcl_DStringEndSublist(dsPtr) \
+ (tclStubsPtr->tcl_DStringEndSublist)(dsPtr) /* 74 */
+#endif
+#ifndef Tcl_DStringFree
+#define Tcl_DStringFree(dsPtr) \
+ (tclStubsPtr->tcl_DStringFree)(dsPtr) /* 75 */
+#endif
+#ifndef Tcl_DStringGetResult
+#define Tcl_DStringGetResult(interp, dsPtr) \
+ (tclStubsPtr->tcl_DStringGetResult)(interp, dsPtr) /* 76 */
+#endif
+#ifndef Tcl_DStringInit
+#define Tcl_DStringInit(dsPtr) \
+ (tclStubsPtr->tcl_DStringInit)(dsPtr) /* 77 */
+#endif
+#ifndef Tcl_DStringResult
+#define Tcl_DStringResult(interp, dsPtr) \
+ (tclStubsPtr->tcl_DStringResult)(interp, dsPtr) /* 78 */
+#endif
+#ifndef Tcl_DStringSetLength
+#define Tcl_DStringSetLength(dsPtr, length) \
+ (tclStubsPtr->tcl_DStringSetLength)(dsPtr, length) /* 79 */
+#endif
+#ifndef Tcl_DStringStartSublist
+#define Tcl_DStringStartSublist(dsPtr) \
+ (tclStubsPtr->tcl_DStringStartSublist)(dsPtr) /* 80 */
+#endif
+#ifndef Tcl_DumpActiveMemory
+#define Tcl_DumpActiveMemory(fileName) \
+ (tclStubsPtr->tcl_DumpActiveMemory)(fileName) /* 81 */
+#endif
+#ifndef Tcl_DuplicateObj
+#define Tcl_DuplicateObj(objPtr) \
+ (tclStubsPtr->tcl_DuplicateObj)(objPtr) /* 82 */
+#endif
+#ifndef Tcl_Eof
+#define Tcl_Eof(chan) \
+ (tclStubsPtr->tcl_Eof)(chan) /* 83 */
+#endif
+#ifndef Tcl_ErrnoId
+#define Tcl_ErrnoId() \
+ (tclStubsPtr->tcl_ErrnoId)() /* 84 */
+#endif
+#ifndef Tcl_ErrnoMsg
+#define Tcl_ErrnoMsg(err) \
+ (tclStubsPtr->tcl_ErrnoMsg)(err) /* 85 */
+#endif
+#ifndef Tcl_Eval
+#define Tcl_Eval(interp, string) \
+ (tclStubsPtr->tcl_Eval)(interp, string) /* 86 */
+#endif
+#ifndef Tcl_EvalFile
+#define Tcl_EvalFile(interp, fileName) \
+ (tclStubsPtr->tcl_EvalFile)(interp, fileName) /* 87 */
+#endif
+#ifndef Tcl_EventuallyFree
+#define Tcl_EventuallyFree(clientData, freeProc) \
+ (tclStubsPtr->tcl_EventuallyFree)(clientData, freeProc) /* 88 */
+#endif
+#ifndef Tcl_EvalObj
+#define Tcl_EvalObj(interp, objPtr) \
+ (tclStubsPtr->tcl_EvalObj)(interp, objPtr) /* 89 */
+#endif
+#ifndef Tcl_Exit
+#define Tcl_Exit(status) \
+ (tclStubsPtr->tcl_Exit)(status) /* 90 */
+#endif
+#ifndef Tcl_ExposeCommand
+#define Tcl_ExposeCommand(interp, hiddenCmdToken, cmdName) \
+ (tclStubsPtr->tcl_ExposeCommand)(interp, hiddenCmdToken, cmdName) /* 91 */
+#endif
+#ifndef Tcl_ExprBoolean
+#define Tcl_ExprBoolean(interp, string, ptr) \
+ (tclStubsPtr->tcl_ExprBoolean)(interp, string, ptr) /* 92 */
+#endif
+#ifndef Tcl_ExprBooleanObj
+#define Tcl_ExprBooleanObj(interp, objPtr, ptr) \
+ (tclStubsPtr->tcl_ExprBooleanObj)(interp, objPtr, ptr) /* 93 */
+#endif
+#ifndef Tcl_ExprDouble
+#define Tcl_ExprDouble(interp, string, ptr) \
+ (tclStubsPtr->tcl_ExprDouble)(interp, string, ptr) /* 94 */
+#endif
+#ifndef Tcl_ExprDoubleObj
+#define Tcl_ExprDoubleObj(interp, objPtr, ptr) \
+ (tclStubsPtr->tcl_ExprDoubleObj)(interp, objPtr, ptr) /* 95 */
+#endif
+#ifndef Tcl_ExprLong
+#define Tcl_ExprLong(interp, string, ptr) \
+ (tclStubsPtr->tcl_ExprLong)(interp, string, ptr) /* 96 */
+#endif
+#ifndef Tcl_ExprLongObj
+#define Tcl_ExprLongObj(interp, objPtr, ptr) \
+ (tclStubsPtr->tcl_ExprLongObj)(interp, objPtr, ptr) /* 97 */
+#endif
+#ifndef Tcl_ExprObj
+#define Tcl_ExprObj(interp, objPtr, resultPtrPtr) \
+ (tclStubsPtr->tcl_ExprObj)(interp, objPtr, resultPtrPtr) /* 98 */
+#endif
+#ifndef Tcl_ExprString
+#define Tcl_ExprString(interp, string) \
+ (tclStubsPtr->tcl_ExprString)(interp, string) /* 99 */
+#endif
+#ifndef Tcl_Finalize
+#define Tcl_Finalize() \
+ (tclStubsPtr->tcl_Finalize)() /* 100 */
+#endif
+#ifndef Tcl_FindExecutable
+#define Tcl_FindExecutable(argv0) \
+ (tclStubsPtr->tcl_FindExecutable)(argv0) /* 101 */
+#endif
+#ifndef Tcl_FirstHashEntry
+#define Tcl_FirstHashEntry(tablePtr, searchPtr) \
+ (tclStubsPtr->tcl_FirstHashEntry)(tablePtr, searchPtr) /* 102 */
+#endif
+#ifndef Tcl_Flush
+#define Tcl_Flush(chan) \
+ (tclStubsPtr->tcl_Flush)(chan) /* 103 */
+#endif
+#ifndef Tcl_Free
+#define Tcl_Free(ptr) \
+ (tclStubsPtr->tcl_Free)(ptr) /* 104 */
+#endif
+#ifndef TclFreeObj
+#define TclFreeObj(objPtr) \
+ (tclStubsPtr->tclFreeObj)(objPtr) /* 105 */
+#endif
+#ifndef Tcl_FreeResult
+#define Tcl_FreeResult(interp) \
+ (tclStubsPtr->tcl_FreeResult)(interp) /* 106 */
+#endif
+#ifndef Tcl_GetAlias
+#define Tcl_GetAlias(interp, slaveCmd, targetInterpPtr, targetCmdPtr, argcPtr, argvPtr) \
+ (tclStubsPtr->tcl_GetAlias)(interp, slaveCmd, targetInterpPtr, targetCmdPtr, argcPtr, argvPtr) /* 107 */
+#endif
+#ifndef Tcl_GetAliasObj
+#define Tcl_GetAliasObj(interp, slaveCmd, targetInterpPtr, targetCmdPtr, objcPtr, objv) \
+ (tclStubsPtr->tcl_GetAliasObj)(interp, slaveCmd, targetInterpPtr, targetCmdPtr, objcPtr, objv) /* 108 */
+#endif
+#ifndef Tcl_GetAssocData
+#define Tcl_GetAssocData(interp, name, procPtr) \
+ (tclStubsPtr->tcl_GetAssocData)(interp, name, procPtr) /* 109 */
+#endif
+#ifndef Tcl_GetBoolean
+#define Tcl_GetBoolean(interp, string, boolPtr) \
+ (tclStubsPtr->tcl_GetBoolean)(interp, string, boolPtr) /* 110 */
+#endif
+#ifndef Tcl_GetBooleanFromObj
+#define Tcl_GetBooleanFromObj(interp, objPtr, boolPtr) \
+ (tclStubsPtr->tcl_GetBooleanFromObj)(interp, objPtr, boolPtr) /* 111 */
+#endif
+#ifndef Tcl_GetByteArrayFromObj
+#define Tcl_GetByteArrayFromObj(objPtr, lengthPtr) \
+ (tclStubsPtr->tcl_GetByteArrayFromObj)(objPtr, lengthPtr) /* 112 */
+#endif
+#ifndef Tcl_GetChannel
+#define Tcl_GetChannel(interp, chanName, modePtr) \
+ (tclStubsPtr->tcl_GetChannel)(interp, chanName, modePtr) /* 113 */
+#endif
+#ifndef Tcl_GetChannelBufferSize
+#define Tcl_GetChannelBufferSize(chan) \
+ (tclStubsPtr->tcl_GetChannelBufferSize)(chan) /* 114 */
+#endif
+#ifndef Tcl_GetChannelHandle
+#define Tcl_GetChannelHandle(chan, direction, handlePtr) \
+ (tclStubsPtr->tcl_GetChannelHandle)(chan, direction, handlePtr) /* 115 */
+#endif
+#ifndef Tcl_GetChannelInstanceData
+#define Tcl_GetChannelInstanceData(chan) \
+ (tclStubsPtr->tcl_GetChannelInstanceData)(chan) /* 116 */
+#endif
+#ifndef Tcl_GetChannelMode
+#define Tcl_GetChannelMode(chan) \
+ (tclStubsPtr->tcl_GetChannelMode)(chan) /* 117 */
+#endif
+#ifndef Tcl_GetChannelName
+#define Tcl_GetChannelName(chan) \
+ (tclStubsPtr->tcl_GetChannelName)(chan) /* 118 */
+#endif
+#ifndef Tcl_GetChannelOption
+#define Tcl_GetChannelOption(interp, chan, optionName, dsPtr) \
+ (tclStubsPtr->tcl_GetChannelOption)(interp, chan, optionName, dsPtr) /* 119 */
+#endif
+#ifndef Tcl_GetChannelType
+#define Tcl_GetChannelType(chan) \
+ (tclStubsPtr->tcl_GetChannelType)(chan) /* 120 */
+#endif
+#ifndef Tcl_GetCommandInfo
+#define Tcl_GetCommandInfo(interp, cmdName, infoPtr) \
+ (tclStubsPtr->tcl_GetCommandInfo)(interp, cmdName, infoPtr) /* 121 */
+#endif
+#ifndef Tcl_GetCommandName
+#define Tcl_GetCommandName(interp, command) \
+ (tclStubsPtr->tcl_GetCommandName)(interp, command) /* 122 */
+#endif
+#ifndef Tcl_GetDouble
+#define Tcl_GetDouble(interp, string, doublePtr) \
+ (tclStubsPtr->tcl_GetDouble)(interp, string, doublePtr) /* 123 */
+#endif
+#ifndef Tcl_GetDoubleFromObj
+#define Tcl_GetDoubleFromObj(interp, objPtr, doublePtr) \
+ (tclStubsPtr->tcl_GetDoubleFromObj)(interp, objPtr, doublePtr) /* 124 */
+#endif
+#ifndef Tcl_GetErrno
+#define Tcl_GetErrno() \
+ (tclStubsPtr->tcl_GetErrno)() /* 125 */
+#endif
+#ifndef Tcl_GetHostName
+#define Tcl_GetHostName() \
+ (tclStubsPtr->tcl_GetHostName)() /* 126 */
+#endif
+#ifndef Tcl_GetIndexFromObj
+#define Tcl_GetIndexFromObj(interp, objPtr, tablePtr, msg, flags, indexPtr) \
+ (tclStubsPtr->tcl_GetIndexFromObj)(interp, objPtr, tablePtr, msg, flags, indexPtr) /* 127 */
+#endif
+#ifndef Tcl_GetInt
+#define Tcl_GetInt(interp, string, intPtr) \
+ (tclStubsPtr->tcl_GetInt)(interp, string, intPtr) /* 128 */
+#endif
+#ifndef Tcl_GetInterpPath
+#define Tcl_GetInterpPath(askInterp, slaveInterp) \
+ (tclStubsPtr->tcl_GetInterpPath)(askInterp, slaveInterp) /* 129 */
+#endif
+#ifndef Tcl_GetIntFromObj
+#define Tcl_GetIntFromObj(interp, objPtr, intPtr) \
+ (tclStubsPtr->tcl_GetIntFromObj)(interp, objPtr, intPtr) /* 130 */
+#endif
+#ifndef Tcl_GetLongFromObj
+#define Tcl_GetLongFromObj(interp, objPtr, longPtr) \
+ (tclStubsPtr->tcl_GetLongFromObj)(interp, objPtr, longPtr) /* 131 */
+#endif
+#ifndef Tcl_GetMaster
+#define Tcl_GetMaster(interp) \
+ (tclStubsPtr->tcl_GetMaster)(interp) /* 132 */
+#endif
+#ifndef Tcl_GetNameOfExecutable
+#define Tcl_GetNameOfExecutable() \
+ (tclStubsPtr->tcl_GetNameOfExecutable)() /* 133 */
+#endif
+#ifndef Tcl_GetObjResult
+#define Tcl_GetObjResult(interp) \
+ (tclStubsPtr->tcl_GetObjResult)(interp) /* 134 */
+#endif
+#ifndef Tcl_GetObjType
+#define Tcl_GetObjType(typeName) \
+ (tclStubsPtr->tcl_GetObjType)(typeName) /* 135 */
+#endif
+#ifndef Tcl_GetPathType
+#define Tcl_GetPathType(path) \
+ (tclStubsPtr->tcl_GetPathType)(path) /* 136 */
+#endif
+#ifndef Tcl_Gets
+#define Tcl_Gets(chan, dsPtr) \
+ (tclStubsPtr->tcl_Gets)(chan, dsPtr) /* 137 */
+#endif
+#ifndef Tcl_GetsObj
+#define Tcl_GetsObj(chan, objPtr) \
+ (tclStubsPtr->tcl_GetsObj)(chan, objPtr) /* 138 */
+#endif
+#ifndef Tcl_GetServiceMode
+#define Tcl_GetServiceMode() \
+ (tclStubsPtr->tcl_GetServiceMode)() /* 139 */
+#endif
+#ifndef Tcl_GetSlave
+#define Tcl_GetSlave(interp, slaveName) \
+ (tclStubsPtr->tcl_GetSlave)(interp, slaveName) /* 140 */
+#endif
+#ifndef Tcl_GetStdChannel
+#define Tcl_GetStdChannel(type) \
+ (tclStubsPtr->tcl_GetStdChannel)(type) /* 141 */
+#endif
+#ifndef Tcl_GetStringFromObj
+#define Tcl_GetStringFromObj(objPtr, lengthPtr) \
+ (tclStubsPtr->tcl_GetStringFromObj)(objPtr, lengthPtr) /* 142 */
+#endif
+#ifndef Tcl_GetStringResult
+#define Tcl_GetStringResult(interp) \
+ (tclStubsPtr->tcl_GetStringResult)(interp) /* 143 */
+#endif
+#ifndef Tcl_GetVar
+#define Tcl_GetVar(interp, varName, flags) \
+ (tclStubsPtr->tcl_GetVar)(interp, varName, flags) /* 144 */
+#endif
+#ifndef Tcl_GetVar2
+#define Tcl_GetVar2(interp, part1, part2, flags) \
+ (tclStubsPtr->tcl_GetVar2)(interp, part1, part2, flags) /* 145 */
+#endif
+#ifndef Tcl_GlobalEval
+#define Tcl_GlobalEval(interp, command) \
+ (tclStubsPtr->tcl_GlobalEval)(interp, command) /* 146 */
+#endif
+#ifndef Tcl_GlobalEvalObj
+#define Tcl_GlobalEvalObj(interp, objPtr) \
+ (tclStubsPtr->tcl_GlobalEvalObj)(interp, objPtr) /* 147 */
+#endif
+#ifndef Tcl_HashStats
+#define Tcl_HashStats(tablePtr) \
+ (tclStubsPtr->tcl_HashStats)(tablePtr) /* 148 */
+#endif
+#ifndef Tcl_HideCommand
+#define Tcl_HideCommand(interp, cmdName, hiddenCmdToken) \
+ (tclStubsPtr->tcl_HideCommand)(interp, cmdName, hiddenCmdToken) /* 149 */
+#endif
+#ifndef Tcl_Init
+#define Tcl_Init(interp) \
+ (tclStubsPtr->tcl_Init)(interp) /* 150 */
+#endif
+#ifndef Tcl_InitHashTable
+#define Tcl_InitHashTable(tablePtr, keyType) \
+ (tclStubsPtr->tcl_InitHashTable)(tablePtr, keyType) /* 151 */
+#endif
+#ifndef Tcl_InitMemory
+#define Tcl_InitMemory(interp) \
+ (tclStubsPtr->tcl_InitMemory)(interp) /* 152 */
+#endif
+#ifndef Tcl_InputBlocked
+#define Tcl_InputBlocked(chan) \
+ (tclStubsPtr->tcl_InputBlocked)(chan) /* 153 */
+#endif
+#ifndef Tcl_InputBuffered
+#define Tcl_InputBuffered(chan) \
+ (tclStubsPtr->tcl_InputBuffered)(chan) /* 154 */
+#endif
+#ifndef Tcl_InterpDeleted
+#define Tcl_InterpDeleted(interp) \
+ (tclStubsPtr->tcl_InterpDeleted)(interp) /* 155 */
+#endif
+#ifndef Tcl_IsSafe
+#define Tcl_IsSafe(interp) \
+ (tclStubsPtr->tcl_IsSafe)(interp) /* 156 */
+#endif
+#ifndef Tcl_InvalidateStringRep
+#define Tcl_InvalidateStringRep(objPtr) \
+ (tclStubsPtr->tcl_InvalidateStringRep)(objPtr) /* 157 */
+#endif
+#ifndef Tcl_JoinPath
+#define Tcl_JoinPath(argc, argv, resultPtr) \
+ (tclStubsPtr->tcl_JoinPath)(argc, argv, resultPtr) /* 158 */
+#endif
+#ifndef Tcl_LinkVar
+#define Tcl_LinkVar(interp, varName, addr, type) \
+ (tclStubsPtr->tcl_LinkVar)(interp, varName, addr, type) /* 159 */
+#endif
+#ifndef Tcl_ListObjAppendList
+#define Tcl_ListObjAppendList(interp, listPtr, elemListPtr) \
+ (tclStubsPtr->tcl_ListObjAppendList)(interp, listPtr, elemListPtr) /* 160 */
+#endif
+#ifndef Tcl_ListObjAppendElement
+#define Tcl_ListObjAppendElement(interp, listPtr, objPtr) \
+ (tclStubsPtr->tcl_ListObjAppendElement)(interp, listPtr, objPtr) /* 161 */
+#endif
+#ifndef Tcl_ListObjGetElements
+#define Tcl_ListObjGetElements(interp, listPtr, objcPtr, objvPtr) \
+ (tclStubsPtr->tcl_ListObjGetElements)(interp, listPtr, objcPtr, objvPtr) /* 162 */
+#endif
+#ifndef Tcl_ListObjIndex
+#define Tcl_ListObjIndex(interp, listPtr, index, objPtrPtr) \
+ (tclStubsPtr->tcl_ListObjIndex)(interp, listPtr, index, objPtrPtr) /* 163 */
+#endif
+#ifndef Tcl_ListObjLength
+#define Tcl_ListObjLength(interp, listPtr, intPtr) \
+ (tclStubsPtr->tcl_ListObjLength)(interp, listPtr, intPtr) /* 164 */
+#endif
+#ifndef Tcl_ListObjReplace
+#define Tcl_ListObjReplace(interp, listPtr, first, count, objc, objv) \
+ (tclStubsPtr->tcl_ListObjReplace)(interp, listPtr, first, count, objc, objv) /* 165 */
+#endif
+#ifndef Tcl_MakeFileChannel
+#define Tcl_MakeFileChannel(handle, mode) \
+ (tclStubsPtr->tcl_MakeFileChannel)(handle, mode) /* 166 */
+#endif
+#ifndef Tcl_MakeSafe
+#define Tcl_MakeSafe(interp) \
+ (tclStubsPtr->tcl_MakeSafe)(interp) /* 167 */
+#endif
+#ifndef Tcl_MakeTcpClientChannel
+#define Tcl_MakeTcpClientChannel(tcpSocket) \
+ (tclStubsPtr->tcl_MakeTcpClientChannel)(tcpSocket) /* 168 */
+#endif
+#ifndef Tcl_Merge
+#define Tcl_Merge(argc, argv) \
+ (tclStubsPtr->tcl_Merge)(argc, argv) /* 169 */
+#endif
+#ifndef Tcl_NewBooleanObj
+#define Tcl_NewBooleanObj(boolValue) \
+ (tclStubsPtr->tcl_NewBooleanObj)(boolValue) /* 170 */
+#endif
+#ifndef Tcl_NewByteArrayObj
+#define Tcl_NewByteArrayObj(bytes, length) \
+ (tclStubsPtr->tcl_NewByteArrayObj)(bytes, length) /* 171 */
+#endif
+#ifndef Tcl_NewDoubleObj
+#define Tcl_NewDoubleObj(doubleValue) \
+ (tclStubsPtr->tcl_NewDoubleObj)(doubleValue) /* 172 */
+#endif
+#ifndef Tcl_NewIntObj
+#define Tcl_NewIntObj(intValue) \
+ (tclStubsPtr->tcl_NewIntObj)(intValue) /* 173 */
+#endif
+#ifndef Tcl_NewListObj
+#define Tcl_NewListObj(objc, objv) \
+ (tclStubsPtr->tcl_NewListObj)(objc, objv) /* 174 */
+#endif
+#ifndef Tcl_NewLongObj
+#define Tcl_NewLongObj(longValue) \
+ (tclStubsPtr->tcl_NewLongObj)(longValue) /* 175 */
+#endif
+#ifndef Tcl_NewObj
+#define Tcl_NewObj() \
+ (tclStubsPtr->tcl_NewObj)() /* 176 */
+#endif
+#ifndef Tcl_NewStringObj
+#define Tcl_NewStringObj(bytes, length) \
+ (tclStubsPtr->tcl_NewStringObj)(bytes, length) /* 177 */
+#endif
+#ifndef Tcl_NextHashEntry
+#define Tcl_NextHashEntry(searchPtr) \
+ (tclStubsPtr->tcl_NextHashEntry)(searchPtr) /* 178 */
+#endif
+#ifndef Tcl_NotifyChannel
+#define Tcl_NotifyChannel(channel, mask) \
+ (tclStubsPtr->tcl_NotifyChannel)(channel, mask) /* 179 */
+#endif
+#ifndef Tcl_ObjGetVar2
+#define Tcl_ObjGetVar2(interp, part1Ptr, part2Ptr, flags) \
+ (tclStubsPtr->tcl_ObjGetVar2)(interp, part1Ptr, part2Ptr, flags) /* 180 */
+#endif
+#ifndef Tcl_ObjSetVar2
+#define Tcl_ObjSetVar2(interp, part1Ptr, part2Ptr, newValuePtr, flags) \
+ (tclStubsPtr->tcl_ObjSetVar2)(interp, part1Ptr, part2Ptr, newValuePtr, flags) /* 181 */
+#endif
+#ifndef Tcl_OpenCommandChannel
+#define Tcl_OpenCommandChannel(interp, argc, argv, flags) \
+ (tclStubsPtr->tcl_OpenCommandChannel)(interp, argc, argv, flags) /* 182 */
+#endif
+#ifndef Tcl_OpenFileChannel
+#define Tcl_OpenFileChannel(interp, fileName, modeString, permissions) \
+ (tclStubsPtr->tcl_OpenFileChannel)(interp, fileName, modeString, permissions) /* 183 */
+#endif
+#ifndef Tcl_OpenTcpClient
+#define Tcl_OpenTcpClient(interp, port, address, myaddr, myport, async) \
+ (tclStubsPtr->tcl_OpenTcpClient)(interp, port, address, myaddr, myport, async) /* 184 */
+#endif
+#ifndef Tcl_OpenTcpServer
+#define Tcl_OpenTcpServer(interp, port, host, acceptProc, callbackData) \
+ (tclStubsPtr->tcl_OpenTcpServer)(interp, port, host, acceptProc, callbackData) /* 185 */
+#endif
+#ifndef panic
+#define panic \
+ (tclStubsPtr->panic) /* 186 */
+#endif
+#ifndef panicVA
+#define panicVA(format, argList) \
+ (tclStubsPtr->panicVA)(format, argList) /* 187 */
+#endif
+#ifndef Tcl_ParseVar
+#define Tcl_ParseVar(interp, string, termPtr) \
+ (tclStubsPtr->tcl_ParseVar)(interp, string, termPtr) /* 188 */
+#endif
+#ifndef Tcl_PkgPresent
+#define Tcl_PkgPresent(interp, name, version, exact) \
+ (tclStubsPtr->tcl_PkgPresent)(interp, name, version, exact) /* 189 */
+#endif
+#ifndef Tcl_PkgPresentEx
+#define Tcl_PkgPresentEx(interp, name, version, exact, clientDataPtr) \
+ (tclStubsPtr->tcl_PkgPresentEx)(interp, name, version, exact, clientDataPtr) /* 190 */
+#endif
+#ifndef Tcl_PkgProvide
+#define Tcl_PkgProvide(interp, name, version) \
+ (tclStubsPtr->tcl_PkgProvide)(interp, name, version) /* 191 */
+#endif
+#ifndef Tcl_PkgProvideEx
+#define Tcl_PkgProvideEx(interp, name, version, clientData) \
+ (tclStubsPtr->tcl_PkgProvideEx)(interp, name, version, clientData) /* 192 */
+#endif
+#ifndef Tcl_PkgRequire
+#define Tcl_PkgRequire(interp, name, version, exact) \
+ (tclStubsPtr->tcl_PkgRequire)(interp, name, version, exact) /* 193 */
+#endif
+#ifndef Tcl_PkgRequireEx
+#define Tcl_PkgRequireEx(interp, name, version, exact, clientDataPtr) \
+ (tclStubsPtr->tcl_PkgRequireEx)(interp, name, version, exact, clientDataPtr) /* 194 */
+#endif
+#ifndef Tcl_PosixError
+#define Tcl_PosixError(interp) \
+ (tclStubsPtr->tcl_PosixError)(interp) /* 195 */
+#endif
+#ifndef Tcl_Preserve
+#define Tcl_Preserve(data) \
+ (tclStubsPtr->tcl_Preserve)(data) /* 196 */
+#endif
+#ifndef Tcl_PrintDouble
+#define Tcl_PrintDouble(interp, value, dst) \
+ (tclStubsPtr->tcl_PrintDouble)(interp, value, dst) /* 197 */
+#endif
+#ifndef Tcl_PutEnv
+#define Tcl_PutEnv(string) \
+ (tclStubsPtr->tcl_PutEnv)(string) /* 198 */
+#endif
+#ifndef Tcl_QueueEvent
+#define Tcl_QueueEvent(evPtr, position) \
+ (tclStubsPtr->tcl_QueueEvent)(evPtr, position) /* 199 */
+#endif
+#ifndef Tcl_Read
+#define Tcl_Read(chan, bufPtr, toRead) \
+ (tclStubsPtr->tcl_Read)(chan, bufPtr, toRead) /* 200 */
+#endif
+#ifndef Tcl_Realloc
+#define Tcl_Realloc(ptr, size) \
+ (tclStubsPtr->tcl_Realloc)(ptr, size) /* 201 */
+#endif
+#ifndef Tcl_ReapDetachedProcs
+#define Tcl_ReapDetachedProcs() \
+ (tclStubsPtr->tcl_ReapDetachedProcs)() /* 202 */
+#endif
+#ifndef Tcl_RecordAndEval
+#define Tcl_RecordAndEval(interp, cmd, flags) \
+ (tclStubsPtr->tcl_RecordAndEval)(interp, cmd, flags) /* 203 */
+#endif
+#ifndef Tcl_RecordAndEvalObj
+#define Tcl_RecordAndEvalObj(interp, cmdPtr, flags) \
+ (tclStubsPtr->tcl_RecordAndEvalObj)(interp, cmdPtr, flags) /* 204 */
+#endif
+#ifndef Tcl_RegExpCompile
+#define Tcl_RegExpCompile(interp, string) \
+ (tclStubsPtr->tcl_RegExpCompile)(interp, string) /* 205 */
+#endif
+#ifndef Tcl_RegExpExec
+#define Tcl_RegExpExec(interp, regexp, string, start) \
+ (tclStubsPtr->tcl_RegExpExec)(interp, regexp, string, start) /* 206 */
+#endif
+#ifndef Tcl_RegExpMatch
+#define Tcl_RegExpMatch(interp, string, pattern) \
+ (tclStubsPtr->tcl_RegExpMatch)(interp, string, pattern) /* 207 */
+#endif
+#ifndef Tcl_RegExpRange
+#define Tcl_RegExpRange(regexp, index, startPtr, endPtr) \
+ (tclStubsPtr->tcl_RegExpRange)(regexp, index, startPtr, endPtr) /* 208 */
+#endif
+#ifndef Tcl_RegisterChannel
+#define Tcl_RegisterChannel(interp, chan) \
+ (tclStubsPtr->tcl_RegisterChannel)(interp, chan) /* 209 */
+#endif
+#ifndef Tcl_RegisterObjType
+#define Tcl_RegisterObjType(typePtr) \
+ (tclStubsPtr->tcl_RegisterObjType)(typePtr) /* 210 */
+#endif
+#ifndef Tcl_Release
+#define Tcl_Release(clientData) \
+ (tclStubsPtr->tcl_Release)(clientData) /* 211 */
+#endif
+#ifndef Tcl_ResetResult
+#define Tcl_ResetResult(interp) \
+ (tclStubsPtr->tcl_ResetResult)(interp) /* 212 */
+#endif
+#ifndef Tcl_ScanCountedElement
+#define Tcl_ScanCountedElement(string, length, flagPtr) \
+ (tclStubsPtr->tcl_ScanCountedElement)(string, length, flagPtr) /* 213 */
+#endif
+#ifndef Tcl_ScanElement
+#define Tcl_ScanElement(string, flagPtr) \
+ (tclStubsPtr->tcl_ScanElement)(string, flagPtr) /* 214 */
+#endif
+#ifndef Tcl_Seek
+#define Tcl_Seek(chan, offset, mode) \
+ (tclStubsPtr->tcl_Seek)(chan, offset, mode) /* 215 */
+#endif
+#ifndef Tcl_ServiceAll
+#define Tcl_ServiceAll() \
+ (tclStubsPtr->tcl_ServiceAll)() /* 216 */
+#endif
+#ifndef Tcl_ServiceEvent
+#define Tcl_ServiceEvent(flags) \
+ (tclStubsPtr->tcl_ServiceEvent)(flags) /* 217 */
+#endif
+#ifndef Tcl_SetAssocData
+#define Tcl_SetAssocData(interp, name, proc, clientData) \
+ (tclStubsPtr->tcl_SetAssocData)(interp, name, proc, clientData) /* 218 */
+#endif
+#ifndef Tcl_SetBooleanObj
+#define Tcl_SetBooleanObj(objPtr, boolValue) \
+ (tclStubsPtr->tcl_SetBooleanObj)(objPtr, boolValue) /* 219 */
+#endif
+#ifndef Tcl_SetByteArrayLength
+#define Tcl_SetByteArrayLength(objPtr, length) \
+ (tclStubsPtr->tcl_SetByteArrayLength)(objPtr, length) /* 220 */
+#endif
+#ifndef Tcl_SetByteArrayObj
+#define Tcl_SetByteArrayObj(objPtr, bytes, length) \
+ (tclStubsPtr->tcl_SetByteArrayObj)(objPtr, bytes, length) /* 221 */
+#endif
+#ifndef Tcl_SetChannelBufferSize
+#define Tcl_SetChannelBufferSize(chan, sz) \
+ (tclStubsPtr->tcl_SetChannelBufferSize)(chan, sz) /* 222 */
+#endif
+#ifndef Tcl_SetChannelOption
+#define Tcl_SetChannelOption(interp, chan, optionName, newValue) \
+ (tclStubsPtr->tcl_SetChannelOption)(interp, chan, optionName, newValue) /* 223 */
+#endif
+#ifndef Tcl_SetCommandInfo
+#define Tcl_SetCommandInfo(interp, cmdName, infoPtr) \
+ (tclStubsPtr->tcl_SetCommandInfo)(interp, cmdName, infoPtr) /* 224 */
+#endif
+#ifndef Tcl_SetDoubleObj
+#define Tcl_SetDoubleObj(objPtr, doubleValue) \
+ (tclStubsPtr->tcl_SetDoubleObj)(objPtr, doubleValue) /* 225 */
+#endif
+#ifndef Tcl_SetErrno
+#define Tcl_SetErrno(err) \
+ (tclStubsPtr->tcl_SetErrno)(err) /* 226 */
+#endif
+#ifndef Tcl_SetErrorCode
+#define Tcl_SetErrorCode \
+ (tclStubsPtr->tcl_SetErrorCode) /* 227 */
+#endif
+#ifndef Tcl_SetErrorCodeVA
+#define Tcl_SetErrorCodeVA(interp, argList) \
+ (tclStubsPtr->tcl_SetErrorCodeVA)(interp, argList) /* 228 */
+#endif
+#ifndef Tcl_SetIntObj
+#define Tcl_SetIntObj(objPtr, intValue) \
+ (tclStubsPtr->tcl_SetIntObj)(objPtr, intValue) /* 229 */
+#endif
+#ifndef Tcl_SetListObj
+#define Tcl_SetListObj(objPtr, objc, objv) \
+ (tclStubsPtr->tcl_SetListObj)(objPtr, objc, objv) /* 230 */
+#endif
+#ifndef Tcl_SetLongObj
+#define Tcl_SetLongObj(objPtr, longValue) \
+ (tclStubsPtr->tcl_SetLongObj)(objPtr, longValue) /* 231 */
+#endif
+#ifndef Tcl_SetMaxBlockTime
+#define Tcl_SetMaxBlockTime(timePtr) \
+ (tclStubsPtr->tcl_SetMaxBlockTime)(timePtr) /* 232 */
+#endif
+#ifndef Tcl_SetObjErrorCode
+#define Tcl_SetObjErrorCode(interp, errorObjPtr) \
+ (tclStubsPtr->tcl_SetObjErrorCode)(interp, errorObjPtr) /* 233 */
+#endif
+#ifndef Tcl_SetObjLength
+#define Tcl_SetObjLength(objPtr, length) \
+ (tclStubsPtr->tcl_SetObjLength)(objPtr, length) /* 234 */
+#endif
+#ifndef Tcl_SetObjResult
+#define Tcl_SetObjResult(interp, resultObjPtr) \
+ (tclStubsPtr->tcl_SetObjResult)(interp, resultObjPtr) /* 235 */
+#endif
+#ifndef Tcl_SetPanicProc
+#define Tcl_SetPanicProc(panicProc) \
+ (tclStubsPtr->tcl_SetPanicProc)(panicProc) /* 236 */
+#endif
+#ifndef Tcl_SetRecursionLimit
+#define Tcl_SetRecursionLimit(interp, depth) \
+ (tclStubsPtr->tcl_SetRecursionLimit)(interp, depth) /* 237 */
+#endif
+#ifndef Tcl_SetResult
+#define Tcl_SetResult(interp, string, freeProc) \
+ (tclStubsPtr->tcl_SetResult)(interp, string, freeProc) /* 238 */
+#endif
+#ifndef Tcl_SetServiceMode
+#define Tcl_SetServiceMode(mode) \
+ (tclStubsPtr->tcl_SetServiceMode)(mode) /* 239 */
+#endif
+#ifndef Tcl_SetStdChannel
+#define Tcl_SetStdChannel(channel, type) \
+ (tclStubsPtr->tcl_SetStdChannel)(channel, type) /* 240 */
+#endif
+#ifndef Tcl_SetStringObj
+#define Tcl_SetStringObj(objPtr, bytes, length) \
+ (tclStubsPtr->tcl_SetStringObj)(objPtr, bytes, length) /* 241 */
+#endif
+#ifndef Tcl_SetTimer
+#define Tcl_SetTimer(timePtr) \
+ (tclStubsPtr->tcl_SetTimer)(timePtr) /* 242 */
+#endif
+#ifndef Tcl_SetVar
+#define Tcl_SetVar(interp, varName, newValue, flags) \
+ (tclStubsPtr->tcl_SetVar)(interp, varName, newValue, flags) /* 243 */
+#endif
+#ifndef Tcl_SetVar2
+#define Tcl_SetVar2(interp, part1, part2, newValue, flags) \
+ (tclStubsPtr->tcl_SetVar2)(interp, part1, part2, newValue, flags) /* 244 */
+#endif
+#ifndef Tcl_SignalId
+#define Tcl_SignalId(sig) \
+ (tclStubsPtr->tcl_SignalId)(sig) /* 245 */
+#endif
+#ifndef Tcl_SignalMsg
+#define Tcl_SignalMsg(sig) \
+ (tclStubsPtr->tcl_SignalMsg)(sig) /* 246 */
+#endif
+#ifndef Tcl_Sleep
+#define Tcl_Sleep(ms) \
+ (tclStubsPtr->tcl_Sleep)(ms) /* 247 */
+#endif
+#ifndef Tcl_SourceRCFile
+#define Tcl_SourceRCFile(interp) \
+ (tclStubsPtr->tcl_SourceRCFile)(interp) /* 248 */
+#endif
+#ifndef Tcl_SplitList
+#define Tcl_SplitList(interp, list, argcPtr, argvPtr) \
+ (tclStubsPtr->tcl_SplitList)(interp, list, argcPtr, argvPtr) /* 249 */
+#endif
+#ifndef Tcl_SplitPath
+#define Tcl_SplitPath(path, argcPtr, argvPtr) \
+ (tclStubsPtr->tcl_SplitPath)(path, argcPtr, argvPtr) /* 250 */
+#endif
+#ifndef Tcl_StaticPackage
+#define Tcl_StaticPackage(interp, pkgName, initProc, safeInitProc) \
+ (tclStubsPtr->tcl_StaticPackage)(interp, pkgName, initProc, safeInitProc) /* 251 */
+#endif
+#ifndef Tcl_StringMatch
+#define Tcl_StringMatch(string, pattern) \
+ (tclStubsPtr->tcl_StringMatch)(string, pattern) /* 252 */
+#endif
+#ifndef Tcl_Tell
+#define Tcl_Tell(chan) \
+ (tclStubsPtr->tcl_Tell)(chan) /* 253 */
+#endif
+#ifndef Tcl_TraceVar
+#define Tcl_TraceVar(interp, varName, flags, proc, clientData) \
+ (tclStubsPtr->tcl_TraceVar)(interp, varName, flags, proc, clientData) /* 254 */
+#endif
+#ifndef Tcl_TraceVar2
+#define Tcl_TraceVar2(interp, part1, part2, flags, proc, clientData) \
+ (tclStubsPtr->tcl_TraceVar2)(interp, part1, part2, flags, proc, clientData) /* 255 */
+#endif
+#ifndef Tcl_TranslateFileName
+#define Tcl_TranslateFileName(interp, name, bufferPtr) \
+ (tclStubsPtr->tcl_TranslateFileName)(interp, name, bufferPtr) /* 256 */
+#endif
+#ifndef Tcl_Ungets
+#define Tcl_Ungets(chan, str, len, atHead) \
+ (tclStubsPtr->tcl_Ungets)(chan, str, len, atHead) /* 257 */
+#endif
+#ifndef Tcl_UnlinkVar
+#define Tcl_UnlinkVar(interp, varName) \
+ (tclStubsPtr->tcl_UnlinkVar)(interp, varName) /* 258 */
+#endif
+#ifndef Tcl_UnregisterChannel
+#define Tcl_UnregisterChannel(interp, chan) \
+ (tclStubsPtr->tcl_UnregisterChannel)(interp, chan) /* 259 */
+#endif
+#ifndef Tcl_UnsetVar
+#define Tcl_UnsetVar(interp, varName, flags) \
+ (tclStubsPtr->tcl_UnsetVar)(interp, varName, flags) /* 260 */
+#endif
+#ifndef Tcl_UnsetVar2
+#define Tcl_UnsetVar2(interp, part1, part2, flags) \
+ (tclStubsPtr->tcl_UnsetVar2)(interp, part1, part2, flags) /* 261 */
+#endif
+#ifndef Tcl_UntraceVar
+#define Tcl_UntraceVar(interp, varName, flags, proc, clientData) \
+ (tclStubsPtr->tcl_UntraceVar)(interp, varName, flags, proc, clientData) /* 262 */
+#endif
+#ifndef Tcl_UntraceVar2
+#define Tcl_UntraceVar2(interp, part1, part2, flags, proc, clientData) \
+ (tclStubsPtr->tcl_UntraceVar2)(interp, part1, part2, flags, proc, clientData) /* 263 */
+#endif
+#ifndef Tcl_UpdateLinkedVar
+#define Tcl_UpdateLinkedVar(interp, varName) \
+ (tclStubsPtr->tcl_UpdateLinkedVar)(interp, varName) /* 264 */
+#endif
+#ifndef Tcl_UpVar
+#define Tcl_UpVar(interp, frameName, varName, localName, flags) \
+ (tclStubsPtr->tcl_UpVar)(interp, frameName, varName, localName, flags) /* 265 */
+#endif
+#ifndef Tcl_UpVar2
+#define Tcl_UpVar2(interp, frameName, part1, part2, localName, flags) \
+ (tclStubsPtr->tcl_UpVar2)(interp, frameName, part1, part2, localName, flags) /* 266 */
+#endif
+#ifndef Tcl_ValidateAllMemory
+#define Tcl_ValidateAllMemory(file, line) \
+ (tclStubsPtr->tcl_ValidateAllMemory)(file, line) /* 267 */
+#endif
+#ifndef Tcl_VarEval
+#define Tcl_VarEval \
+ (tclStubsPtr->tcl_VarEval) /* 268 */
+#endif
+#ifndef Tcl_VarEvalVA
+#define Tcl_VarEvalVA(interp, argList) \
+ (tclStubsPtr->tcl_VarEvalVA)(interp, argList) /* 269 */
+#endif
+#ifndef Tcl_VarTraceInfo
+#define Tcl_VarTraceInfo(interp, varName, flags, procPtr, prevClientData) \
+ (tclStubsPtr->tcl_VarTraceInfo)(interp, varName, flags, procPtr, prevClientData) /* 270 */
+#endif
+#ifndef Tcl_VarTraceInfo2
+#define Tcl_VarTraceInfo2(interp, part1, part2, flags, procPtr, prevClientData) \
+ (tclStubsPtr->tcl_VarTraceInfo2)(interp, part1, part2, flags, procPtr, prevClientData) /* 271 */
+#endif
+#ifndef Tcl_WaitForEvent
+#define Tcl_WaitForEvent(timePtr) \
+ (tclStubsPtr->tcl_WaitForEvent)(timePtr) /* 272 */
+#endif
+#ifndef Tcl_WaitPid
+#define Tcl_WaitPid(pid, statPtr, options) \
+ (tclStubsPtr->tcl_WaitPid)(pid, statPtr, options) /* 273 */
+#endif
+#ifndef Tcl_Write
+#define Tcl_Write(chan, s, slen) \
+ (tclStubsPtr->tcl_Write)(chan, s, slen) /* 274 */
+#endif
+#ifndef Tcl_WrongNumArgs
+#define Tcl_WrongNumArgs(interp, objc, objv, message) \
+ (tclStubsPtr->tcl_WrongNumArgs)(interp, objc, objv, message) /* 275 */
+#endif
+
+#endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */
+
+/* !END!: Do not edit above this line. */
+
+#endif /* _TCLDECLS */
+
diff --git a/generic/tclGetDate.y b/generic/tclGetDate.y
index 3313250..6d187b3 100644
--- a/generic/tclGetDate.y
+++ b/generic/tclGetDate.y
@@ -11,7 +11,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclGetDate.y,v 1.2 1998/09/14 18:39:59 stanton Exp $
+ * RCS: @(#) $Id: tclGetDate.y,v 1.2.4.1 1999/03/05 20:18:05 stanton Exp $
*/
%{
@@ -596,7 +596,7 @@ Convert(Month, Day, Year, Hours, Minutes, Seconds, Meridian, DSTmode, TimePtr)
return -1;
Julian += tod;
if (DSTmode == DSTon
- || (DSTmode == DSTmaybe && TclpGetDate(&Julian, 0)->tm_isdst))
+ || (DSTmode == DSTmaybe && TclpGetDate((TclpTime_t)&Julian, 0)->tm_isdst))
Julian -= 60 * 60;
*TimePtr = Julian;
return 0;
@@ -611,8 +611,8 @@ DSTcorrect(Start, Future)
time_t StartDay;
time_t FutureDay;
- StartDay = (TclpGetDate(&Start, 0)->tm_hour + 1) % 24;
- FutureDay = (TclpGetDate(&Future, 0)->tm_hour + 1) % 24;
+ StartDay = (TclpGetDate((TclpTime_t)&Start, 0)->tm_hour + 1) % 24;
+ FutureDay = (TclpGetDate((TclpTime_t)&Future, 0)->tm_hour + 1) % 24;
return (Future - Start) + (StartDay - FutureDay) * 60L * 60L;
}
@@ -627,7 +627,7 @@ RelativeDate(Start, DayOrdinal, DayNumber)
time_t now;
now = Start;
- tm = TclpGetDate(&now, 0);
+ tm = TclpGetDate((TclpTime_t)&now, 0);
now += SECSPERDAY * ((DayNumber - tm->tm_wday + 7) % 7);
now += 7 * SECSPERDAY * (DayOrdinal <= 0 ? DayOrdinal : DayOrdinal - 1);
return DSTcorrect(Start, now);
@@ -650,7 +650,7 @@ RelativeMonth(Start, RelMonth, TimePtr)
*TimePtr = 0;
return 0;
}
- tm = TclpGetDate(&Start, 0);
+ tm = TclpGetDate((TclpTime_t)&Start, 0);
Month = 12 * (tm->tm_year + TM_YEAR_BASE) + tm->tm_mon + RelMonth;
Year = Month / 12;
Month = Month % 12 + 1;
@@ -881,7 +881,7 @@ TclGetDate(p, now, zone, timePtr)
int thisyear;
yyInput = p;
- tm = TclpGetDate((time_t *) &now, 0);
+ tm = TclpGetDate((TclpTime_t) &now, 0);
thisyear = tm->tm_year + TM_YEAR_BASE;
yyYear = thisyear;
yyMonth = tm->tm_mon + 1;
diff --git a/generic/tclInt.decls b/generic/tclInt.decls
new file mode 100644
index 0000000..0fa31d0
--- /dev/null
+++ b/generic/tclInt.decls
@@ -0,0 +1,881 @@
+# tclInt.decls --
+#
+# This file contains the declarations for all unsupported
+# functions that are exported by the Tcl library. This file
+# is used to generate the tclIntDecls.h, tclIntPlatDecls.h,
+# tclIntStub.c, tclPlatStub.c, tclCompileDecls.h and tclCompileStub.c
+# files
+#
+# Copyright (c) 1998-1999 by Scriptics Corporation.
+# See the file "license.terms" for information on usage and redistribution
+# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
+#
+# RCS: @(#) $Id: tclInt.decls,v 1.2.2.1 1999/03/05 20:18:05 stanton Exp $
+
+library tcl
+
+# Define the unsupported generic interfaces.
+
+interface tclInt
+
+# Declare each of the functions in the unsupported internal Tcl
+# interface. These interfaces are allowed to changed between versions.
+# Use at your own risk. Note that the position of functions should not
+# be changed between versions to avoid gratuitous incompatibilities.
+
+declare 0 generic {
+ int TclAccess(CONST char *path, int mode)
+}
+declare 1 generic {
+ int TclAccessDeleteProc(TclAccessProc_ *proc)
+}
+declare 2 generic {
+ int TclAccessInsertProc(TclAccessProc_ *proc)
+}
+declare 3 generic {
+ void TclAllocateFreeObjects(void)
+}
+declare 4 generic {
+ int TclChdir(Tcl_Interp *interp, char *dirName)
+}
+declare 5 generic {
+ int TclCleanupChildren(Tcl_Interp *interp, int numPids, Tcl_Pid *pidPtr, \
+ Tcl_Channel errorChan)
+}
+declare 6 generic {
+ void TclCleanupCommand(Command *cmdPtr)
+}
+declare 7 generic {
+ int TclCopyAndCollapse(int count, char *src, char *dst)
+}
+declare 8 generic {
+ int TclCopyChannel(Tcl_Interp *interp, Tcl_Channel inChan, \
+ Tcl_Channel outChan, int toRead, Tcl_Obj *cmdPtr)
+}
+
+# TclCreatePipeline unofficially exported for use by BLT.
+
+declare 9 generic {
+ int TclCreatePipeline(Tcl_Interp *interp, int argc, char **argv, \
+ Tcl_Pid **pidArrayPtr, TclFile *inPipePtr, TclFile *outPipePtr, \
+ TclFile *errFilePtr)
+}
+declare 10 generic {
+ int TclCreateProc(Tcl_Interp *interp, Namespace *nsPtr, char *procName, \
+ Tcl_Obj *argsPtr, Tcl_Obj *bodyPtr, Proc **procPtrPtr)
+}
+declare 11 generic {
+ void TclDeleteCompiledLocalVars(Interp *iPtr, CallFrame *framePtr)
+}
+declare 12 generic {
+ void TclDeleteVars(Interp *iPtr, Tcl_HashTable *tablePtr)
+}
+declare 13 generic {
+ int TclDoGlob(Tcl_Interp *interp, char *separators, \
+ Tcl_DString *headPtr, char *tail)
+}
+declare 14 generic {
+ void TclDumpMemoryInfo(FILE *outFile)
+}
+declare 15 generic {
+ void TclExpandParseValue(ParseValue *pvPtr, int needed)
+}
+declare 16 generic {
+ void TclExprFloatError(Tcl_Interp *interp, double value)
+}
+declare 17 generic {
+ int TclFileAttrsCmd(Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
+}
+declare 18 generic {
+ int TclFileCopyCmd(Tcl_Interp *interp, int argc, char **argv)
+}
+declare 19 generic {
+ int TclFileDeleteCmd(Tcl_Interp *interp, int argc, char **argv)
+}
+declare 20 generic {
+ int TclFileMakeDirsCmd(Tcl_Interp *interp, int argc, char **argv)
+}
+declare 21 generic {
+ int TclFileRenameCmd(Tcl_Interp *interp, int argc, char **argv)
+}
+declare 22 generic {
+ void TclFinalizeCompExecEnv(void)
+}
+declare 23 generic {
+ void TclFinalizeEnvironment(void)
+}
+declare 24 generic {
+ void TclFinalizeExecEnv(void)
+}
+declare 25 generic {
+ int TclFindElement(Tcl_Interp *interp, char *list, int listLength, \
+ char **elementPtr, char **nextPtr, int *sizePtr, int *bracePtr)
+}
+declare 26 generic {
+ Proc * TclFindProc(Interp *iPtr, char *procName)
+}
+declare 27 generic {
+ int TclFormatInt(char *buffer, long n)
+}
+declare 28 generic {
+ void TclFreePackageInfo(Interp *iPtr)
+}
+declare 29 generic {
+ char * TclGetCwd(Tcl_Interp *interp)
+}
+declare 30 generic {
+ int TclGetDate(char *p, unsigned long now, long zone, \
+ unsigned long *timePtr)
+}
+declare 31 generic {
+ Tcl_Channel TclGetDefaultStdChannel(int type)
+}
+declare 32 generic {
+ Tcl_Obj * TclGetElementOfIndexedArray(Tcl_Interp *interp, \
+ int localIndex, Tcl_Obj *elemPtr, int leaveErrorMsg)
+}
+declare 33 generic {
+ char * TclGetEnv(CONST char *name)
+}
+declare 34 generic {
+ char * TclGetExtension(char *name)
+}
+declare 35 generic {
+ int TclGetFrame(Tcl_Interp *interp, char *string, CallFrame **framePtrPtr)
+}
+declare 36 generic {
+ TclCmdProcType TclGetInterpProc(void)
+}
+declare 37 generic {
+ int TclGetIntForIndex(Tcl_Interp *interp, Tcl_Obj *objPtr, \
+ int endValue, int *indexPtr)
+}
+declare 38 generic {
+ Tcl_Obj * TclGetIndexedScalar(Tcl_Interp *interp, int localIndex, \
+ int leaveErrorMsg)
+}
+declare 39 generic {
+ int TclGetLong(Tcl_Interp *interp, char *string, long *longPtr)
+}
+declare 40 generic {
+ int TclGetLoadedPackages(Tcl_Interp *interp, char *targetName)
+}
+declare 41 generic {
+ int TclGetNamespaceForQualName(Tcl_Interp *interp, char *qualName, \
+ Namespace *cxtNsPtr, int flags, Namespace **nsPtrPtr, \
+ Namespace **altNsPtrPtr, Namespace **actualCxtPtrPtr, \
+ char **simpleNamePtr)
+}
+declare 42 generic {
+ TclObjCmdProcType TclGetObjInterpProc(void)
+}
+declare 43 generic {
+ int TclGetOpenMode(Tcl_Interp *interp, char *string, int *seekFlagPtr)
+}
+declare 44 generic {
+ Tcl_Command TclGetOriginalCommand(Tcl_Command command)
+}
+declare 45 generic {
+ char * TclGetUserHome(char *name, Tcl_DString *bufferPtr)
+}
+declare 46 generic {
+ int TclGlobalInvoke(Tcl_Interp *interp, int argc, char **argv, int flags)
+}
+declare 47 generic {
+ int TclGuessPackageName(char *fileName, Tcl_DString *bufPtr)
+}
+declare 48 generic {
+ int TclHideUnsafeCommands(Tcl_Interp *interp)
+}
+declare 49 generic {
+ int TclInExit(void)
+}
+declare 50 generic {
+ Tcl_Obj * TclIncrElementOfIndexedArray(Tcl_Interp *interp, \
+ int localIndex, Tcl_Obj *elemPtr, long incrAmount)
+}
+declare 51 generic {
+ Tcl_Obj * TclIncrIndexedScalar(Tcl_Interp *interp, int localIndex, \
+ long incrAmount)
+}
+declare 52 generic {
+ Tcl_Obj * TclIncrVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr, \
+ Tcl_Obj *part2Ptr, long incrAmount, int part1NotParsed)
+}
+declare 53 generic {
+ void TclInitCompiledLocals(Tcl_Interp *interp, CallFrame *framePtr, \
+ Namespace *nsPtr)
+}
+declare 54 generic {
+ void TclInitNamespaces(void)
+}
+declare 55 generic {
+ int TclInterpInit(Tcl_Interp *interp)
+}
+declare 56 generic {
+ int TclInvoke(Tcl_Interp *interp, int argc, char **argv, int flags)
+}
+declare 57 generic {
+ int TclInvokeObjectCommand(ClientData clientData, Tcl_Interp *interp, \
+ int argc, char **argv)
+}
+declare 58 generic {
+ int TclInvokeStringCommand(ClientData clientData, Tcl_Interp *interp, \
+ int objc, Tcl_Obj *CONST objv[])
+}
+declare 59 generic {
+ Proc * TclIsProc(Command *cmdPtr)
+}
+declare 60 generic {
+ int TclLoadFile(Tcl_Interp *interp, char *fileName, char *sym1, \
+ char *sym2, Tcl_PackageInitProc **proc1Ptr, \
+ Tcl_PackageInitProc **proc2Ptr)
+}
+declare 61 generic {
+ int TclLooksLikeInt(char *p)
+}
+declare 62 generic {
+ Var * TclLookupVar(Tcl_Interp *interp, char *part1, char *part2, \
+ int flags, char *msg, int createPart1, int createPart2, \
+ Var **arrayPtrPtr)
+}
+declare 63 generic {
+ int TclMatchFiles(Tcl_Interp *interp, char *separators, \
+ Tcl_DString *dirPtr, char *pattern, char *tail)
+}
+declare 64 generic {
+ int TclNeedSpace(char *start, char *end)
+}
+declare 65 generic {
+ Tcl_Obj * TclNewProcBodyObj(Proc *procPtr)
+}
+declare 66 generic {
+ int TclObjCommandComplete(Tcl_Obj *cmdPtr)
+}
+declare 67 generic {
+ int TclObjInterpProc(ClientData clientData, Tcl_Interp *interp, \
+ int objc, Tcl_Obj *CONST objv[])
+}
+declare 68 generic {
+ int TclObjInvoke(Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[], \
+ int flags)
+}
+declare 69 generic {
+ int TclObjInvokeGlobal(Tcl_Interp *interp, int objc, \
+ Tcl_Obj *CONST objv[], int flags)
+}
+declare 70 generic {
+ int TclOpenFileChannelDeleteProc(TclOpenFileChannelProc_ *proc)
+}
+declare 71 generic {
+ int TclOpenFileChannelInsertProc(TclOpenFileChannelProc_ *proc)
+}
+declare 72 generic {
+ int TclpAccess(CONST char *path, int mode)
+}
+declare 73 generic {
+ char * TclpAlloc(unsigned int size)
+}
+declare 74 generic {
+ int TclpCopyFile(char *source, char *dest)
+}
+declare 75 generic {
+ int TclpCopyDirectory(char *source, char *dest, Tcl_DString *errorPtr)
+}
+declare 76 generic {
+ int TclpCreateDirectory(char *path)
+}
+declare 77 generic {
+ int TclpDeleteFile(char *path)
+}
+declare 78 generic {
+ void TclpFree(char *ptr)
+}
+declare 79 generic {
+ unsigned long TclpGetClicks(void)
+}
+declare 80 generic {
+ unsigned long TclpGetSeconds(void)
+}
+declare 81 generic {
+ void TclpGetTime(Tcl_Time *time)
+}
+declare 82 generic {
+ int TclpGetTimeZone(unsigned long time)
+}
+declare 83 generic {
+ int TclpListVolumes(Tcl_Interp *interp)
+}
+declare 84 generic {
+ Tcl_Channel TclpOpenFileChannel(Tcl_Interp *interp, char *fileName, \
+ char *modeString, int permissions)
+}
+declare 85 generic {
+ char * TclpRealloc(char *ptr, unsigned int size)
+}
+declare 86 generic {
+ int TclpRemoveDirectory(char *path, int recursive, Tcl_DString *errorPtr)
+}
+declare 87 generic {
+ int TclpRenameFile(char *source, char *dest)
+}
+declare 88 generic {
+ int TclParseBraces(Tcl_Interp *interp, char *string, char **termPtr, \
+ ParseValue *pvPtr)
+}
+declare 89 generic {
+ int TclParseNestedCmd(Tcl_Interp *interp, char *string, int flags, \
+ char **termPtr, ParseValue *pvPtr)
+}
+declare 90 generic {
+ int TclParseQuotes(Tcl_Interp *interp, char *string, int termChar, \
+ int flags, char **termPtr, ParseValue *pvPtr)
+}
+declare 91 generic {
+ void TclPlatformInit(Tcl_Interp *interp)
+}
+declare 92 generic {
+ char * TclPrecTraceProc(ClientData clientData, Tcl_Interp *interp, \
+ char *name1, char *name2, int flags)
+}
+declare 93 generic {
+ int TclPreventAliasLoop(Tcl_Interp *interp, Tcl_Interp *cmdInterp, \
+ Tcl_Command cmd)
+}
+declare 94 generic {
+ void TclPrintByteCodeObj(Tcl_Interp *interp, Tcl_Obj *objPtr)
+}
+declare 95 generic {
+ void TclProcCleanupProc(Proc *procPtr)
+}
+declare 96 generic {
+ int TclProcCompileProc(Tcl_Interp *interp, Proc *procPtr, \
+ Tcl_Obj *bodyPtr, Namespace *nsPtr, CONST char *description, \
+ CONST char *procName)
+}
+declare 97 generic {
+ void TclProcDeleteProc(ClientData clientData)
+}
+declare 98 generic {
+ int TclProcInterpProc(ClientData clientData, Tcl_Interp *interp, \
+ int argc, char **argv)
+}
+declare 99 generic {
+ int TclpStat(CONST char *path, struct stat *buf)
+}
+declare 100 generic {
+ int TclRenameCommand(Tcl_Interp *interp, char *oldName, char *newName)
+}
+declare 101 generic {
+ void TclResetShadowedCmdRefs(Tcl_Interp *interp, Command *newCmdPtr)
+}
+declare 102 generic {
+ int TclServiceIdle(void)
+}
+declare 103 generic {
+ Tcl_Obj * TclSetElementOfIndexedArray(Tcl_Interp *interp, \
+ int localIndex, Tcl_Obj *elemPtr, Tcl_Obj *objPtr, int leaveErrorMsg)
+}
+declare 104 generic {
+ Tcl_Obj * TclSetIndexedScalar(Tcl_Interp *interp, int localIndex, \
+ Tcl_Obj *objPtr, int leaveErrorMsg)
+}
+declare 105 generic {
+ char * TclSetPreInitScript(char *string)
+}
+declare 106 generic {
+ void TclSetupEnv(Tcl_Interp *interp)
+}
+declare 107 generic {
+ int TclSockGetPort(Tcl_Interp *interp, char *string, char *proto, \
+ int *portPtr)
+}
+declare 108 generic {
+ int TclSockMinimumBuffers(int sock, int size)
+}
+declare 109 generic {
+ int TclStat(CONST char *path, TclStat_ *buf)
+}
+declare 110 generic {
+ int TclStatDeleteProc(TclStatProc_ *proc)
+}
+declare 111 generic {
+ int TclStatInsertProc(TclStatProc_ *proc)
+}
+declare 112 generic {
+ void TclTeardownNamespace(Namespace *nsPtr)
+}
+declare 113 generic {
+ int TclUpdateReturnInfo(Interp *iPtr)
+}
+declare 114 generic {
+ char * TclWordEnd(char *start, char *lastChar, int nested, int *semiPtr)
+}
+
+# Procedures used in conjunction with Tcl namespaces. They are
+# defined here instead of in tcl.decls since they are not stable yet.
+
+declare 115 generic {
+ void Tcl_AddInterpResolvers(Tcl_Interp *interp, char *name, \
+ Tcl_ResolveCmdProc *cmdProc, Tcl_ResolveVarProc *varProc, \
+ Tcl_ResolveCompiledVarProc *compiledVarProc)
+}
+declare 116 generic {
+ int Tcl_AppendExportList(Tcl_Interp *interp, Tcl_Namespace *nsPtr, \
+ Tcl_Obj *objPtr)
+}
+declare 117 generic {
+ Tcl_Namespace * Tcl_CreateNamespace(Tcl_Interp *interp, char *name, \
+ ClientData clientData, Tcl_NamespaceDeleteProc *deleteProc)
+}
+declare 118 generic {
+ void Tcl_DeleteNamespace(Tcl_Namespace *nsPtr)
+}
+declare 119 generic {
+ int Tcl_Export(Tcl_Interp *interp, Tcl_Namespace *nsPtr, char *pattern, \
+ int resetListFirst)
+}
+declare 120 generic {
+ Tcl_Command Tcl_FindCommand(Tcl_Interp *interp, char *name, \
+ Tcl_Namespace *contextNsPtr, int flags)
+}
+declare 121 generic {
+ Tcl_Namespace * Tcl_FindNamespace(Tcl_Interp *interp, char *name, \
+ Tcl_Namespace *contextNsPtr, int flags)
+}
+declare 122 generic {
+ int Tcl_GetInterpResolvers(Tcl_Interp *interp, char *name, \
+ Tcl_ResolverInfo *resInfo)
+}
+declare 123 generic {
+ int Tcl_GetNamespaceResolvers(Tcl_Namespace *namespacePtr, \
+ Tcl_ResolverInfo *resInfo)
+}
+declare 124 generic {
+ Tcl_Var Tcl_FindNamespaceVar(Tcl_Interp *interp, char *name, \
+ Tcl_Namespace *contextNsPtr, int flags)
+}
+declare 125 generic {
+ int Tcl_ForgetImport(Tcl_Interp *interp, Tcl_Namespace *nsPtr, \
+ char *pattern)
+}
+declare 126 generic {
+ Tcl_Command Tcl_GetCommandFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr)
+}
+declare 127 generic {
+ void Tcl_GetCommandFullName(Tcl_Interp *interp, Tcl_Command command, \
+ Tcl_Obj *objPtr)
+}
+declare 128 generic {
+ Tcl_Namespace * Tcl_GetCurrentNamespace(Tcl_Interp *interp)
+}
+declare 129 generic {
+ Tcl_Namespace * Tcl_GetGlobalNamespace(Tcl_Interp *interp)
+}
+declare 130 generic {
+ void Tcl_GetVariableFullName(Tcl_Interp *interp, Tcl_Var variable, \
+ Tcl_Obj *objPtr)
+}
+declare 131 generic {
+ int Tcl_Import(Tcl_Interp *interp, Tcl_Namespace *nsPtr, \
+ char *pattern, int allowOverwrite)
+}
+declare 132 generic {
+ void Tcl_PopCallFrame(Tcl_Interp* interp)
+}
+declare 133 generic {
+ int Tcl_PushCallFrame(Tcl_Interp* interp, Tcl_CallFrame *framePtr, \
+ Tcl_Namespace *nsPtr, int isProcCallFrame)
+}
+declare 134 generic {
+ int Tcl_RemoveInterpResolvers(Tcl_Interp *interp, char *name)
+}
+declare 135 generic {
+ void Tcl_SetNamespaceResolvers(Tcl_Namespace *namespacePtr, \
+ Tcl_ResolveCmdProc *cmdProc, Tcl_ResolveVarProc *varProc, \
+ Tcl_ResolveCompiledVarProc *compiledVarProc)
+}
+
+# Compilation procedures for commands in the generic core:
+
+declare 136 generic {
+ int TclCompileBreakCmd(Tcl_Interp *interp, char *string, char *lastChar, \
+ int compileFlags, struct CompileEnv *compileEnvPtr)
+}
+declare 137 generic {
+ int TclCompileCatchCmd(Tcl_Interp *interp, char *string, char *lastChar, \
+ int compileFlags, struct CompileEnv *compileEnvPtr)
+}
+declare 138 generic {
+ int TclCompileContinueCmd(Tcl_Interp *interp, char *string, \
+ char *lastChar, int compileFlags, struct CompileEnv *compileEnvPtr)
+}
+declare 139 generic {
+ int TclCompileExprCmd(Tcl_Interp *interp, char *string, char *lastChar, \
+ int compileFlags, struct CompileEnv *compileEnvPtr)
+}
+declare 140 generic {
+ int TclCompileForCmd(Tcl_Interp *interp, char *string, char *lastChar, \
+ int compileFlags, struct CompileEnv *compileEnvPtr)
+}
+declare 141 generic {
+ int TclCompileForeachCmd(Tcl_Interp *interp, char *string, \
+ char *lastChar, int compileFlags, struct CompileEnv *compileEnvPtr)
+}
+declare 142 generic {
+ int TclCompileIfCmd(Tcl_Interp *interp, char *string, char *lastChar, \
+ int compileFlags, struct CompileEnv *compileEnvPtr)
+}
+declare 143 generic {
+ int TclCompileIncrCmd(Tcl_Interp *interp, char *string, char *lastChar, \
+ int compileFlags, struct CompileEnv *compileEnvPtr)
+}
+declare 144 generic {
+ int TclCompileSetCmd(Tcl_Interp *interp, char *string, char *lastChar, \
+ int compileFlags, struct CompileEnv *compileEnvPtr)
+}
+declare 145 generic {
+ int TclCompileWhileCmd(Tcl_Interp *interp, char *string, char *lastChar, \
+ int compileFlags, struct CompileEnv *compileEnvPtr)
+}
+
+declare 146 generic {
+ int TclHasSockets(Tcl_Interp *interp)
+}
+declare 147 generic {
+ struct tm * TclpGetDate(TclpTime_t time, int useGMT)
+}
+declare 148 generic {
+ size_t TclStrftime(char *s, size_t maxsize, const char *format, \
+ const struct tm *t)
+}
+declare 149 generic {
+ int TclpCheckStackSpace(void)
+}
+
+##############################################################################
+
+# Define the platform specific internal Tcl interface. These functions are
+# only available on the designated platform.
+
+interface tclIntPlat
+
+########################
+# Mac specific internals
+
+declare 0 mac {
+ VOID * TclpSysAlloc(long size, int isBin)
+}
+declare 1 mac {
+ void TclpSysFree(VOID *ptr)
+}
+declare 2 mac {
+ VOID * TclpSysRealloc(VOID *cp, unsigned int size)
+}
+declare 3 mac {
+ void TclPlatformExit(int status)
+}
+
+# Prototypes for functions found in the tclMacUtil.c compatability library.
+
+declare 4 mac {
+ int FSpGetDefaultDir(FSSpecPtr theSpec)
+}
+declare 5 mac {
+ int FSpSetDefaultDir(FSSpecPtr theSpec)
+}
+declare 6 mac {
+ OSErr FSpFindFolder(short vRefNum, OSType folderType, \
+ Boolean createFolder, FSSpec *spec)
+}
+declare 7 mac {
+ void GetGlobalMouse(Point *mouse)
+}
+
+# The following routines are utility functions in Tcl. They are exported
+# here because they are needed in Tk. They are not officially supported,
+# however. The first set are from the MoreFiles package.
+
+declare 8 mac {
+ pascal OSErr FSpGetDirectoryID(const FSSpec *spec, long *theDirID, \
+ Boolean *isDirectory)
+}
+declare 9 mac {
+ pascal short FSpOpenResFileCompat(const FSSpec *spec, \
+ SignedByte permission)
+}
+declare 10 mac {
+ pascal void FSpCreateResFileCompat(const FSSpec *spec, OSType creator, \
+ OSType fileType, ScriptCode scriptTag)
+}
+
+# Like the MoreFiles routines these fix problems in the standard
+# Mac calls. These routines are from tclMacUtils.h.
+
+declare 11 mac {
+ int FSpLocationFromPath(int length, CONST char *path, FSSpecPtr theSpec)
+}
+declare 12 mac {
+ OSErr FSpPathFromLocation(FSSpecPtr theSpec, int *length, \
+ Handle *fullPath)
+}
+
+# Prototypes of Mac only internal functions.
+
+declare 13 mac {
+ void TclMacExitHandler(void)
+}
+declare 14 mac {
+ void TclMacInitExitToShell(int usePatch)
+}
+declare 15 mac {
+ OSErr TclMacInstallExitToShellPatch(ExitToShellProcPtr newProc)
+}
+declare 16 mac {
+ int TclMacOSErrorToPosixError(int error)
+}
+declare 17 mac {
+ void TclMacRemoveTimer(void *timerToken)
+}
+declare 18 mac {
+ void * TclMacStartTimer(long ms)
+}
+declare 19 mac {
+ int TclMacTimerExpired(void *timerToken)
+}
+declare 20 mac {
+ int TclMacRegisterResourceFork(short fileRef, Tcl_Obj *tokenPtr, \
+ int insert)
+}
+declare 21 mac {
+ short TclMacUnRegisterResourceFork(char *tokenPtr, Tcl_Obj *resultPtr)
+}
+declare 22 mac {
+ int TclMacCreateEnv(void)
+}
+declare 23 mac {
+ FILE * TclMacFOpenHack(const char *path, const char *mode)
+}
+declare 24 mac {
+ int TclMacReadlink(char *path, char *buf, int size)
+}
+declare 25 mac {
+ int TclMacChmod(char *path, int mode)
+}
+
+
+############################
+# Windows specific internals
+
+declare 0 win {
+ void TclWinConvertError(DWORD errCode)
+}
+declare 1 win {
+ void TclWinConvertWSAError(DWORD errCode)
+}
+declare 2 win {
+ struct servent * TclWinGetServByName(const char *nm, \
+ const char *proto)
+}
+declare 3 win {
+ int TclWinGetSockOpt(SOCKET s, int level, int optname, \
+ char FAR * optval, int FAR *optlen)
+}
+declare 4 win {
+ HINSTANCE TclWinGetTclInstance(void)
+}
+declare 5 win {
+ HINSTANCE TclWinLoadLibrary(char *name)
+}
+declare 6 win {
+ u_short TclWinNToHS(u_short ns)
+}
+declare 7 win {
+ int TclWinSetSockOpt(SOCKET s, int level, int optname, \
+ const char FAR * optval, int optlen)
+}
+declare 8 win {
+ unsigned long TclpGetPid(Tcl_Pid pid)
+}
+declare 9 win {
+ void TclpFinalize(void)
+}
+declare 10 win {
+ int TclWinGetPlatformId(void)
+}
+declare 11 win {
+ void TclWinInit(HINSTANCE hInst)
+}
+declare 12 win {
+ int TclWinSynchSpawn(void *args, int type, void **trans, Tcl_Pid *pidPtr)
+}
+
+# Pipe channel functions
+
+declare 13 win {
+ void TclGetAndDetachPids(Tcl_Interp *interp, Tcl_Channel chan)
+}
+declare 14 win {
+ int TclpCloseFile(TclFile file)
+}
+declare 15 win {
+ Tcl_Channel TclpCreateCommandChannel(TclFile readFile, \
+ TclFile writeFile, TclFile errorFile, int numPids, Tcl_Pid *pidPtr)
+}
+declare 16 win {
+ int TclpCreatePipe(TclFile *readPipe, TclFile *writePipe)
+}
+declare 17 win {
+ int TclpCreateProcess(Tcl_Interp *interp, int argc, char **argv, \
+ TclFile inputFile, TclFile outputFile, TclFile errorFile, \
+ Tcl_Pid *pidPtr)
+}
+declare 18 win {
+ TclFile TclpCreateTempFile(char *contents,
+ Tcl_DString *namePtr)
+}
+declare 19 win {
+ char * TclpGetTZName(void)
+}
+declare 20 win {
+ TclFile TclpMakeFile(Tcl_Channel channel, int direction)
+}
+declare 21 win {
+ TclFile TclpOpenFile(char *fname, int mode)
+}
+
+#########################
+# Unix specific internals
+
+# Pipe channel functions
+
+declare 0 unix {
+ void TclGetAndDetachPids(Tcl_Interp *interp, Tcl_Channel chan)
+}
+declare 1 unix {
+ int TclpCloseFile(TclFile file)
+}
+declare 2 unix {
+ Tcl_Channel TclpCreateCommandChannel(TclFile readFile, \
+ TclFile writeFile, TclFile errorFile, int numPids, Tcl_Pid *pidPtr)
+}
+declare 3 unix {
+ int TclpCreatePipe(TclFile *readPipe, TclFile *writePipe)
+}
+declare 4 unix {
+ int TclpCreateProcess(Tcl_Interp *interp, int argc, char **argv, \
+ TclFile inputFile, TclFile outputFile, TclFile errorFile, \
+ Tcl_Pid *pidPtr)
+}
+declare 5 unix {
+ TclFile TclpCreateTempFile(char *contents,
+ Tcl_DString *namePtr)
+}
+declare 6 unix {
+ TclFile TclpMakeFile(Tcl_Channel channel, int direction)
+}
+declare 7 unix {
+ TclFile TclpOpenFile(char *fname, int mode)
+}
+declare 8 unix {
+ int TclUnixWaitForFile(int fd, int mask, int timeout)
+}
+
+##############################################################################
+
+# Declare the functions used by tclCompile.h. This is an internal API and
+# is subject to change. Use at your own risk.
+
+interface tclCompile
+
+declare 0 generic {
+ void TclCleanupByteCode(ByteCode *codePtr)
+}
+declare 1 generic {
+ int TclCompileExpr(Tcl_Interp *interp, char *string, char *lastChar, \
+ int flags, CompileEnv *envPtr)
+}
+declare 2 generic {
+ int TclCompileQuotes(Tcl_Interp *interp, char *string, char *lastChar, \
+ int termChar, int flags, CompileEnv *envPtr)
+}
+declare 3 generic {
+ int TclCompileString(Tcl_Interp *interp, char *string, char *lastChar, \
+ int flags, CompileEnv *envPtr)
+}
+declare 4 generic {
+ int TclCompileDollarVar(Tcl_Interp *interp, char *string, \
+ char *lastChar, int flags, CompileEnv *envPtr)
+}
+declare 5 generic {
+ int TclCreateAuxData(ClientData clientData, AuxDataType *typePtr, \
+ CompileEnv *envPtr)
+}
+declare 6 generic {
+ ExecEnv * TclCreateExecEnv(Tcl_Interp *interp)
+}
+declare 7 generic {
+ void TclDeleteExecEnv(ExecEnv *eePtr)
+}
+declare 8 generic {
+ void TclEmitForwardJump(CompileEnv *envPtr, TclJumpType jumpType, \
+ JumpFixup *jumpFixupPtr)
+}
+declare 9 generic {
+ AuxDataType *TclGetAuxDataType(char *typeName)
+}
+declare 10 generic {
+ ExceptionRange * TclGetExceptionRangeForPc(unsigned char *pc, \
+ int catchOnly, ByteCode* codePtr)
+}
+declare 11 generic {
+ InstructionDesc * TclGetInstructionTable(void)
+}
+declare 12 generic {
+ int TclExecuteByteCode(Tcl_Interp *interp, ByteCode *codePtr)
+}
+declare 13 generic {
+ void TclExpandCodeArray(CompileEnv *envPtr)
+}
+declare 14 generic {
+ void TclExpandJumpFixupArray(JumpFixupArray *fixupArrayPtr)
+}
+declare 15 generic {
+ void TclFinalizeAuxDataTypeTable(void)
+}
+declare 16 generic {
+ int TclFixupForwardJump(CompileEnv *envPtr, JumpFixup *jumpFixupPtr, \
+ int jumpDist, int distThreshold)
+}
+declare 17 generic {
+ void TclFreeCompileEnv(CompileEnv *envPtr)
+}
+declare 18 generic {
+ void TclFreeJumpFixupArray(JumpFixupArray *fixupArrayPtr)
+}
+declare 19 generic {
+ void TclInitAuxDataTypeTable(void)
+}
+declare 20 generic {
+ void TclInitByteCodeObj(Tcl_Obj *objPtr, CompileEnv *envPtr)
+}
+declare 21 generic {
+ void TclInitCompileEnv(Tcl_Interp *interp, CompileEnv *envPtr, \
+ char *string)
+}
+declare 22 generic {
+ void TclInitJumpFixupArray(JumpFixupArray *fixupArrayPtr)
+}
+declare 23 generic {
+ int TclObjIndexForString(char *start, int length, int allocStrRep, \
+ int inHeap, CompileEnv *envPtr)
+}
+declare 24 generic {
+ int TclPrintInstruction(ByteCode* codePtr, unsigned char *pc)
+}
+declare 25 generic {
+ void TclPrintSource(FILE *outFile, char *string, int maxChars)
+}
+declare 26 generic {
+ void TclRegisterAuxDataType(AuxDataType *typePtr)
+}
diff --git a/generic/tclProc.c b/generic/tclProc.c
index 34c6ce6..6e2fd35 100644
--- a/generic/tclProc.c
+++ b/generic/tclProc.c
@@ -10,7 +10,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclProc.c,v 1.17 1999/02/03 00:55:06 stanton Exp $
+ * RCS: @(#) $Id: tclProc.c,v 1.17.4.1 1999/03/05 20:18:05 stanton Exp $
*/
#include "tclInt.h"
@@ -185,7 +185,7 @@ TclCreateProc(interp, nsPtr, procName, argsPtr, bodyPtr, procPtrPtr)
register Proc *procPtr;
int i, length, result, numArgs;
char *args, *bytes, *p;
- register CompiledLocal *localPtr;
+ register CompiledLocal *localPtr = NULL;
Tcl_Obj *defPtr;
int precompiled = 0;
diff --git a/generic/tclStubInit.c b/generic/tclStubInit.c
new file mode 100644
index 0000000..7b773f6
--- /dev/null
+++ b/generic/tclStubInit.c
@@ -0,0 +1,621 @@
+/*
+ * tclStubInit.c --
+ *
+ * This file contains the initializers for the Tcl stub vectors.
+ *
+ * Copyright (c) 1998-1999 by Scriptics Corporation.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
+ *
+ * RCS: @(#) $Id: tclStubInit.c,v 1.2.2.1 1999/03/05 20:18:06 stanton Exp $
+ */
+
+#include "tclInt.h"
+#include "tclPort.h"
+#include "tclCompile.h"
+
+/*
+ * Remove macros that will interfere with the definitions below.
+ */
+
+#undef Tcl_Alloc
+#undef Tcl_Free
+#undef Tcl_Realloc
+#undef Tcl_NewBooleanObj
+#undef Tcl_NewByteArrayObj
+#undef Tcl_NewDoubleObj
+#undef Tcl_NewIntObj
+#undef Tcl_NewListObj
+#undef Tcl_NewLongObj
+#undef Tcl_NewObj
+#undef Tcl_NewStringObj
+#undef Tcl_DumpActiveMemory
+#undef Tcl_ValidateAllMemory
+
+/*
+ * WARNING: The contents of this file is automatically generated by the
+ * tools/genStubs.tcl script. Any modifications to the function declarations
+ * below should be made in the generic/tcl.decls script.
+ */
+
+/* !BEGIN!: Do not edit below this line. */
+
+static TclStubHooks tclStubHooks;
+
+TclStubs tclStubs = {
+ TCL_STUB_MAGIC,
+ &tclStubHooks,
+ Tcl_AddErrorInfo, /* 0 */
+ Tcl_AddObjErrorInfo, /* 1 */
+ Tcl_Alloc, /* 2 */
+ Tcl_AllowExceptions, /* 3 */
+ Tcl_AppendAllObjTypes, /* 4 */
+ Tcl_AppendElement, /* 5 */
+ Tcl_AppendResult, /* 6 */
+ Tcl_AppendResultVA, /* 7 */
+ Tcl_AppendToObj, /* 8 */
+ Tcl_AppendStringsToObj, /* 9 */
+ Tcl_AppendStringsToObjVA, /* 10 */
+ Tcl_AsyncCreate, /* 11 */
+ Tcl_AsyncDelete, /* 12 */
+ Tcl_AsyncInvoke, /* 13 */
+ Tcl_AsyncMark, /* 14 */
+ Tcl_AsyncReady, /* 15 */
+ Tcl_BackgroundError, /* 16 */
+ Tcl_Backslash, /* 17 */
+ Tcl_BadChannelOption, /* 18 */
+ Tcl_CallWhenDeleted, /* 19 */
+ Tcl_CancelIdleCall, /* 20 */
+ Tcl_Close, /* 21 */
+ Tcl_CommandComplete, /* 22 */
+ Tcl_Concat, /* 23 */
+ Tcl_ConcatObj, /* 24 */
+ Tcl_ConvertCountedElement, /* 25 */
+ Tcl_ConvertElement, /* 26 */
+ Tcl_ConvertToType, /* 27 */
+ Tcl_CreateAlias, /* 28 */
+ Tcl_CreateAliasObj, /* 29 */
+ Tcl_CreateChannel, /* 30 */
+ Tcl_CreateChannelHandler, /* 31 */
+ Tcl_CreateCloseHandler, /* 32 */
+ Tcl_CreateCommand, /* 33 */
+ Tcl_CreateEventSource, /* 34 */
+ Tcl_CreateExitHandler, /* 35 */
+ Tcl_CreateInterp, /* 36 */
+ Tcl_CreateMathFunc, /* 37 */
+ Tcl_CreateObjCommand, /* 38 */
+ Tcl_CreateSlave, /* 39 */
+ Tcl_CreateTimerHandler, /* 40 */
+ Tcl_CreateTrace, /* 41 */
+ Tcl_DbCkalloc, /* 42 */
+ Tcl_DbCkfree, /* 43 */
+ Tcl_DbCkrealloc, /* 44 */
+ Tcl_DbDecrRefCount, /* 45 */
+ Tcl_DbIncrRefCount, /* 46 */
+ Tcl_DbIsShared, /* 47 */
+ Tcl_DbNewBooleanObj, /* 48 */
+ Tcl_DbNewByteArrayObj, /* 49 */
+ Tcl_DbNewDoubleObj, /* 50 */
+ Tcl_DbNewListObj, /* 51 */
+ Tcl_DbNewLongObj, /* 52 */
+ Tcl_DbNewObj, /* 53 */
+ Tcl_DbNewStringObj, /* 54 */
+ Tcl_DeleteAssocData, /* 55 */
+ Tcl_DeleteCommand, /* 56 */
+ Tcl_DeleteCommandFromToken, /* 57 */
+ Tcl_DeleteChannelHandler, /* 58 */
+ Tcl_DeleteCloseHandler, /* 59 */
+ Tcl_DeleteEvents, /* 60 */
+ Tcl_DeleteEventSource, /* 61 */
+ Tcl_DeleteExitHandler, /* 62 */
+ Tcl_DeleteHashEntry, /* 63 */
+ Tcl_DeleteHashTable, /* 64 */
+ Tcl_DeleteInterp, /* 65 */
+ Tcl_DeleteTimerHandler, /* 66 */
+ Tcl_DeleteTrace, /* 67 */
+ Tcl_DetachPids, /* 68 */
+ Tcl_DontCallWhenDeleted, /* 69 */
+ Tcl_DoOneEvent, /* 70 */
+ Tcl_DoWhenIdle, /* 71 */
+ Tcl_DStringAppend, /* 72 */
+ Tcl_DStringAppendElement, /* 73 */
+ Tcl_DStringEndSublist, /* 74 */
+ Tcl_DStringFree, /* 75 */
+ Tcl_DStringGetResult, /* 76 */
+ Tcl_DStringInit, /* 77 */
+ Tcl_DStringResult, /* 78 */
+ Tcl_DStringSetLength, /* 79 */
+ Tcl_DStringStartSublist, /* 80 */
+ Tcl_DumpActiveMemory, /* 81 */
+ Tcl_DuplicateObj, /* 82 */
+ Tcl_Eof, /* 83 */
+ Tcl_ErrnoId, /* 84 */
+ Tcl_ErrnoMsg, /* 85 */
+ Tcl_Eval, /* 86 */
+ Tcl_EvalFile, /* 87 */
+ Tcl_EventuallyFree, /* 88 */
+ Tcl_EvalObj, /* 89 */
+ Tcl_Exit, /* 90 */
+ Tcl_ExposeCommand, /* 91 */
+ Tcl_ExprBoolean, /* 92 */
+ Tcl_ExprBooleanObj, /* 93 */
+ Tcl_ExprDouble, /* 94 */
+ Tcl_ExprDoubleObj, /* 95 */
+ Tcl_ExprLong, /* 96 */
+ Tcl_ExprLongObj, /* 97 */
+ Tcl_ExprObj, /* 98 */
+ Tcl_ExprString, /* 99 */
+ Tcl_Finalize, /* 100 */
+ Tcl_FindExecutable, /* 101 */
+ Tcl_FirstHashEntry, /* 102 */
+ Tcl_Flush, /* 103 */
+ Tcl_Free, /* 104 */
+ TclFreeObj, /* 105 */
+ Tcl_FreeResult, /* 106 */
+ Tcl_GetAlias, /* 107 */
+ Tcl_GetAliasObj, /* 108 */
+ Tcl_GetAssocData, /* 109 */
+ Tcl_GetBoolean, /* 110 */
+ Tcl_GetBooleanFromObj, /* 111 */
+ Tcl_GetByteArrayFromObj, /* 112 */
+ Tcl_GetChannel, /* 113 */
+ Tcl_GetChannelBufferSize, /* 114 */
+ Tcl_GetChannelHandle, /* 115 */
+ Tcl_GetChannelInstanceData, /* 116 */
+ Tcl_GetChannelMode, /* 117 */
+ Tcl_GetChannelName, /* 118 */
+ Tcl_GetChannelOption, /* 119 */
+ Tcl_GetChannelType, /* 120 */
+ Tcl_GetCommandInfo, /* 121 */
+ Tcl_GetCommandName, /* 122 */
+ Tcl_GetDouble, /* 123 */
+ Tcl_GetDoubleFromObj, /* 124 */
+ Tcl_GetErrno, /* 125 */
+ Tcl_GetHostName, /* 126 */
+ Tcl_GetIndexFromObj, /* 127 */
+ Tcl_GetInt, /* 128 */
+ Tcl_GetInterpPath, /* 129 */
+ Tcl_GetIntFromObj, /* 130 */
+ Tcl_GetLongFromObj, /* 131 */
+ Tcl_GetMaster, /* 132 */
+ Tcl_GetNameOfExecutable, /* 133 */
+ Tcl_GetObjResult, /* 134 */
+ Tcl_GetObjType, /* 135 */
+ Tcl_GetPathType, /* 136 */
+ Tcl_Gets, /* 137 */
+ Tcl_GetsObj, /* 138 */
+ Tcl_GetServiceMode, /* 139 */
+ Tcl_GetSlave, /* 140 */
+ Tcl_GetStdChannel, /* 141 */
+ Tcl_GetStringFromObj, /* 142 */
+ Tcl_GetStringResult, /* 143 */
+ Tcl_GetVar, /* 144 */
+ Tcl_GetVar2, /* 145 */
+ Tcl_GlobalEval, /* 146 */
+ Tcl_GlobalEvalObj, /* 147 */
+ Tcl_HashStats, /* 148 */
+ Tcl_HideCommand, /* 149 */
+ Tcl_Init, /* 150 */
+ Tcl_InitHashTable, /* 151 */
+ Tcl_InitMemory, /* 152 */
+ Tcl_InputBlocked, /* 153 */
+ Tcl_InputBuffered, /* 154 */
+ Tcl_InterpDeleted, /* 155 */
+ Tcl_IsSafe, /* 156 */
+ Tcl_InvalidateStringRep, /* 157 */
+ Tcl_JoinPath, /* 158 */
+ Tcl_LinkVar, /* 159 */
+ Tcl_ListObjAppendList, /* 160 */
+ Tcl_ListObjAppendElement, /* 161 */
+ Tcl_ListObjGetElements, /* 162 */
+ Tcl_ListObjIndex, /* 163 */
+ Tcl_ListObjLength, /* 164 */
+ Tcl_ListObjReplace, /* 165 */
+ Tcl_MakeFileChannel, /* 166 */
+ Tcl_MakeSafe, /* 167 */
+ Tcl_MakeTcpClientChannel, /* 168 */
+ Tcl_Merge, /* 169 */
+ Tcl_NewBooleanObj, /* 170 */
+ Tcl_NewByteArrayObj, /* 171 */
+ Tcl_NewDoubleObj, /* 172 */
+ Tcl_NewIntObj, /* 173 */
+ Tcl_NewListObj, /* 174 */
+ Tcl_NewLongObj, /* 175 */
+ Tcl_NewObj, /* 176 */
+ Tcl_NewStringObj, /* 177 */
+ Tcl_NextHashEntry, /* 178 */
+ Tcl_NotifyChannel, /* 179 */
+ Tcl_ObjGetVar2, /* 180 */
+ Tcl_ObjSetVar2, /* 181 */
+ Tcl_OpenCommandChannel, /* 182 */
+ Tcl_OpenFileChannel, /* 183 */
+ Tcl_OpenTcpClient, /* 184 */
+ Tcl_OpenTcpServer, /* 185 */
+ panic, /* 186 */
+ panicVA, /* 187 */
+ Tcl_ParseVar, /* 188 */
+ Tcl_PkgPresent, /* 189 */
+ Tcl_PkgPresentEx, /* 190 */
+ Tcl_PkgProvide, /* 191 */
+ Tcl_PkgProvideEx, /* 192 */
+ Tcl_PkgRequire, /* 193 */
+ Tcl_PkgRequireEx, /* 194 */
+ Tcl_PosixError, /* 195 */
+ Tcl_Preserve, /* 196 */
+ Tcl_PrintDouble, /* 197 */
+ Tcl_PutEnv, /* 198 */
+ Tcl_QueueEvent, /* 199 */
+ Tcl_Read, /* 200 */
+ Tcl_Realloc, /* 201 */
+ Tcl_ReapDetachedProcs, /* 202 */
+ Tcl_RecordAndEval, /* 203 */
+ Tcl_RecordAndEvalObj, /* 204 */
+ Tcl_RegExpCompile, /* 205 */
+ Tcl_RegExpExec, /* 206 */
+ Tcl_RegExpMatch, /* 207 */
+ Tcl_RegExpRange, /* 208 */
+ Tcl_RegisterChannel, /* 209 */
+ Tcl_RegisterObjType, /* 210 */
+ Tcl_Release, /* 211 */
+ Tcl_ResetResult, /* 212 */
+ Tcl_ScanCountedElement, /* 213 */
+ Tcl_ScanElement, /* 214 */
+ Tcl_Seek, /* 215 */
+ Tcl_ServiceAll, /* 216 */
+ Tcl_ServiceEvent, /* 217 */
+ Tcl_SetAssocData, /* 218 */
+ Tcl_SetBooleanObj, /* 219 */
+ Tcl_SetByteArrayLength, /* 220 */
+ Tcl_SetByteArrayObj, /* 221 */
+ Tcl_SetChannelBufferSize, /* 222 */
+ Tcl_SetChannelOption, /* 223 */
+ Tcl_SetCommandInfo, /* 224 */
+ Tcl_SetDoubleObj, /* 225 */
+ Tcl_SetErrno, /* 226 */
+ Tcl_SetErrorCode, /* 227 */
+ Tcl_SetErrorCodeVA, /* 228 */
+ Tcl_SetIntObj, /* 229 */
+ Tcl_SetListObj, /* 230 */
+ Tcl_SetLongObj, /* 231 */
+ Tcl_SetMaxBlockTime, /* 232 */
+ Tcl_SetObjErrorCode, /* 233 */
+ Tcl_SetObjLength, /* 234 */
+ Tcl_SetObjResult, /* 235 */
+ Tcl_SetPanicProc, /* 236 */
+ Tcl_SetRecursionLimit, /* 237 */
+ Tcl_SetResult, /* 238 */
+ Tcl_SetServiceMode, /* 239 */
+ Tcl_SetStdChannel, /* 240 */
+ Tcl_SetStringObj, /* 241 */
+ Tcl_SetTimer, /* 242 */
+ Tcl_SetVar, /* 243 */
+ Tcl_SetVar2, /* 244 */
+ Tcl_SignalId, /* 245 */
+ Tcl_SignalMsg, /* 246 */
+ Tcl_Sleep, /* 247 */
+ Tcl_SourceRCFile, /* 248 */
+ Tcl_SplitList, /* 249 */
+ Tcl_SplitPath, /* 250 */
+ Tcl_StaticPackage, /* 251 */
+ Tcl_StringMatch, /* 252 */
+ Tcl_Tell, /* 253 */
+ Tcl_TraceVar, /* 254 */
+ Tcl_TraceVar2, /* 255 */
+ Tcl_TranslateFileName, /* 256 */
+ Tcl_Ungets, /* 257 */
+ Tcl_UnlinkVar, /* 258 */
+ Tcl_UnregisterChannel, /* 259 */
+ Tcl_UnsetVar, /* 260 */
+ Tcl_UnsetVar2, /* 261 */
+ Tcl_UntraceVar, /* 262 */
+ Tcl_UntraceVar2, /* 263 */
+ Tcl_UpdateLinkedVar, /* 264 */
+ Tcl_UpVar, /* 265 */
+ Tcl_UpVar2, /* 266 */
+ Tcl_ValidateAllMemory, /* 267 */
+ Tcl_VarEval, /* 268 */
+ Tcl_VarEvalVA, /* 269 */
+ Tcl_VarTraceInfo, /* 270 */
+ Tcl_VarTraceInfo2, /* 271 */
+ Tcl_WaitForEvent, /* 272 */
+ Tcl_WaitPid, /* 273 */
+ Tcl_Write, /* 274 */
+ Tcl_WrongNumArgs, /* 275 */
+};
+
+TclStubs *tclStubsPtr = &tclStubs;
+
+TclCompileStubs tclCompileStubs = {
+ TCL_STUB_MAGIC,
+ NULL,
+ TclCleanupByteCode, /* 0 */
+ TclCompileExpr, /* 1 */
+ TclCompileQuotes, /* 2 */
+ TclCompileString, /* 3 */
+ TclCompileDollarVar, /* 4 */
+ TclCreateAuxData, /* 5 */
+ TclCreateExecEnv, /* 6 */
+ TclDeleteExecEnv, /* 7 */
+ TclEmitForwardJump, /* 8 */
+ TclGetAuxDataType, /* 9 */
+ TclGetExceptionRangeForPc, /* 10 */
+ TclGetInstructionTable, /* 11 */
+ TclExecuteByteCode, /* 12 */
+ TclExpandCodeArray, /* 13 */
+ TclExpandJumpFixupArray, /* 14 */
+ TclFinalizeAuxDataTypeTable, /* 15 */
+ TclFixupForwardJump, /* 16 */
+ TclFreeCompileEnv, /* 17 */
+ TclFreeJumpFixupArray, /* 18 */
+ TclInitAuxDataTypeTable, /* 19 */
+ TclInitByteCodeObj, /* 20 */
+ TclInitCompileEnv, /* 21 */
+ TclInitJumpFixupArray, /* 22 */
+ TclObjIndexForString, /* 23 */
+ TclPrintInstruction, /* 24 */
+ TclPrintSource, /* 25 */
+ TclRegisterAuxDataType, /* 26 */
+};
+
+TclCompileStubs *tclCompileStubsPtr = &tclCompileStubs;
+
+TclIntStubs tclIntStubs = {
+ TCL_STUB_MAGIC,
+ NULL,
+ TclAccess, /* 0 */
+ TclAccessDeleteProc, /* 1 */
+ TclAccessInsertProc, /* 2 */
+ TclAllocateFreeObjects, /* 3 */
+ TclChdir, /* 4 */
+ TclCleanupChildren, /* 5 */
+ TclCleanupCommand, /* 6 */
+ TclCopyAndCollapse, /* 7 */
+ TclCopyChannel, /* 8 */
+ TclCreatePipeline, /* 9 */
+ TclCreateProc, /* 10 */
+ TclDeleteCompiledLocalVars, /* 11 */
+ TclDeleteVars, /* 12 */
+ TclDoGlob, /* 13 */
+ TclDumpMemoryInfo, /* 14 */
+ TclExpandParseValue, /* 15 */
+ TclExprFloatError, /* 16 */
+ TclFileAttrsCmd, /* 17 */
+ TclFileCopyCmd, /* 18 */
+ TclFileDeleteCmd, /* 19 */
+ TclFileMakeDirsCmd, /* 20 */
+ TclFileRenameCmd, /* 21 */
+ TclFinalizeCompExecEnv, /* 22 */
+ TclFinalizeEnvironment, /* 23 */
+ TclFinalizeExecEnv, /* 24 */
+ TclFindElement, /* 25 */
+ TclFindProc, /* 26 */
+ TclFormatInt, /* 27 */
+ TclFreePackageInfo, /* 28 */
+ TclGetCwd, /* 29 */
+ TclGetDate, /* 30 */
+ TclGetDefaultStdChannel, /* 31 */
+ TclGetElementOfIndexedArray, /* 32 */
+ TclGetEnv, /* 33 */
+ TclGetExtension, /* 34 */
+ TclGetFrame, /* 35 */
+ TclGetInterpProc, /* 36 */
+ TclGetIntForIndex, /* 37 */
+ TclGetIndexedScalar, /* 38 */
+ TclGetLong, /* 39 */
+ TclGetLoadedPackages, /* 40 */
+ TclGetNamespaceForQualName, /* 41 */
+ TclGetObjInterpProc, /* 42 */
+ TclGetOpenMode, /* 43 */
+ TclGetOriginalCommand, /* 44 */
+ TclGetUserHome, /* 45 */
+ TclGlobalInvoke, /* 46 */
+ TclGuessPackageName, /* 47 */
+ TclHideUnsafeCommands, /* 48 */
+ TclInExit, /* 49 */
+ TclIncrElementOfIndexedArray, /* 50 */
+ TclIncrIndexedScalar, /* 51 */
+ TclIncrVar2, /* 52 */
+ TclInitCompiledLocals, /* 53 */
+ TclInitNamespaces, /* 54 */
+ TclInterpInit, /* 55 */
+ TclInvoke, /* 56 */
+ TclInvokeObjectCommand, /* 57 */
+ TclInvokeStringCommand, /* 58 */
+ TclIsProc, /* 59 */
+ TclLoadFile, /* 60 */
+ TclLooksLikeInt, /* 61 */
+ TclLookupVar, /* 62 */
+ TclMatchFiles, /* 63 */
+ TclNeedSpace, /* 64 */
+ TclNewProcBodyObj, /* 65 */
+ TclObjCommandComplete, /* 66 */
+ TclObjInterpProc, /* 67 */
+ TclObjInvoke, /* 68 */
+ TclObjInvokeGlobal, /* 69 */
+ TclOpenFileChannelDeleteProc, /* 70 */
+ TclOpenFileChannelInsertProc, /* 71 */
+ TclpAccess, /* 72 */
+ TclpAlloc, /* 73 */
+ TclpCopyFile, /* 74 */
+ TclpCopyDirectory, /* 75 */
+ TclpCreateDirectory, /* 76 */
+ TclpDeleteFile, /* 77 */
+ TclpFree, /* 78 */
+ TclpGetClicks, /* 79 */
+ TclpGetSeconds, /* 80 */
+ TclpGetTime, /* 81 */
+ TclpGetTimeZone, /* 82 */
+ TclpListVolumes, /* 83 */
+ TclpOpenFileChannel, /* 84 */
+ TclpRealloc, /* 85 */
+ TclpRemoveDirectory, /* 86 */
+ TclpRenameFile, /* 87 */
+ TclParseBraces, /* 88 */
+ TclParseNestedCmd, /* 89 */
+ TclParseQuotes, /* 90 */
+ TclPlatformInit, /* 91 */
+ TclPrecTraceProc, /* 92 */
+ TclPreventAliasLoop, /* 93 */
+ TclPrintByteCodeObj, /* 94 */
+ TclProcCleanupProc, /* 95 */
+ TclProcCompileProc, /* 96 */
+ TclProcDeleteProc, /* 97 */
+ TclProcInterpProc, /* 98 */
+ TclpStat, /* 99 */
+ TclRenameCommand, /* 100 */
+ TclResetShadowedCmdRefs, /* 101 */
+ TclServiceIdle, /* 102 */
+ TclSetElementOfIndexedArray, /* 103 */
+ TclSetIndexedScalar, /* 104 */
+ TclSetPreInitScript, /* 105 */
+ TclSetupEnv, /* 106 */
+ TclSockGetPort, /* 107 */
+ TclSockMinimumBuffers, /* 108 */
+ TclStat, /* 109 */
+ TclStatDeleteProc, /* 110 */
+ TclStatInsertProc, /* 111 */
+ TclTeardownNamespace, /* 112 */
+ TclUpdateReturnInfo, /* 113 */
+ TclWordEnd, /* 114 */
+ Tcl_AddInterpResolvers, /* 115 */
+ Tcl_AppendExportList, /* 116 */
+ Tcl_CreateNamespace, /* 117 */
+ Tcl_DeleteNamespace, /* 118 */
+ Tcl_Export, /* 119 */
+ Tcl_FindCommand, /* 120 */
+ Tcl_FindNamespace, /* 121 */
+ Tcl_GetInterpResolvers, /* 122 */
+ Tcl_GetNamespaceResolvers, /* 123 */
+ Tcl_FindNamespaceVar, /* 124 */
+ Tcl_ForgetImport, /* 125 */
+ Tcl_GetCommandFromObj, /* 126 */
+ Tcl_GetCommandFullName, /* 127 */
+ Tcl_GetCurrentNamespace, /* 128 */
+ Tcl_GetGlobalNamespace, /* 129 */
+ Tcl_GetVariableFullName, /* 130 */
+ Tcl_Import, /* 131 */
+ Tcl_PopCallFrame, /* 132 */
+ Tcl_PushCallFrame, /* 133 */
+ Tcl_RemoveInterpResolvers, /* 134 */
+ Tcl_SetNamespaceResolvers, /* 135 */
+ TclCompileBreakCmd, /* 136 */
+ TclCompileCatchCmd, /* 137 */
+ TclCompileContinueCmd, /* 138 */
+ TclCompileExprCmd, /* 139 */
+ TclCompileForCmd, /* 140 */
+ TclCompileForeachCmd, /* 141 */
+ TclCompileIfCmd, /* 142 */
+ TclCompileIncrCmd, /* 143 */
+ TclCompileSetCmd, /* 144 */
+ TclCompileWhileCmd, /* 145 */
+ TclHasSockets, /* 146 */
+ TclpGetDate, /* 147 */
+ TclStrftime, /* 148 */
+ TclpCheckStackSpace, /* 149 */
+};
+
+TclIntStubs *tclIntStubsPtr = &tclIntStubs;
+
+TclIntPlatStubs tclIntPlatStubs = {
+ TCL_STUB_MAGIC,
+ NULL,
+#ifdef __WIN32__
+ TclWinConvertError, /* 0 */
+ TclWinConvertWSAError, /* 1 */
+ TclWinGetServByName, /* 2 */
+ TclWinGetSockOpt, /* 3 */
+ TclWinGetTclInstance, /* 4 */
+ TclWinLoadLibrary, /* 5 */
+ TclWinNToHS, /* 6 */
+ TclWinSetSockOpt, /* 7 */
+ TclpGetPid, /* 8 */
+ TclpFinalize, /* 9 */
+ TclWinGetPlatformId, /* 10 */
+ TclWinInit, /* 11 */
+ TclWinSynchSpawn, /* 12 */
+ TclGetAndDetachPids, /* 13 */
+ TclpCloseFile, /* 14 */
+ TclpCreateCommandChannel, /* 15 */
+ TclpCreatePipe, /* 16 */
+ TclpCreateProcess, /* 17 */
+ TclpCreateTempFile, /* 18 */
+ TclpGetTZName, /* 19 */
+ TclpMakeFile, /* 20 */
+ TclpOpenFile, /* 21 */
+#endif /* __WIN32__ */
+#if !defined(__WIN32__) && !defined(MAC_TCL)
+ TclGetAndDetachPids, /* 0 */
+ TclpCloseFile, /* 1 */
+ TclpCreateCommandChannel, /* 2 */
+ TclpCreatePipe, /* 3 */
+ TclpCreateProcess, /* 4 */
+ TclpCreateTempFile, /* 5 */
+ TclpMakeFile, /* 6 */
+ TclpOpenFile, /* 7 */
+ TclUnixWaitForFile, /* 8 */
+#endif /* UNIX */
+#ifdef MAC_TCL
+ TclpSysAlloc, /* 0 */
+ TclpSysFree, /* 1 */
+ TclpSysRealloc, /* 2 */
+ TclPlatformExit, /* 3 */
+ FSpGetDefaultDir, /* 4 */
+ FSpSetDefaultDir, /* 5 */
+ FSpFindFolder, /* 6 */
+ GetGlobalMouse, /* 7 */
+ FSpGetDirectoryID, /* 8 */
+ FSpOpenResFileCompat, /* 9 */
+ FSpCreateResFileCompat, /* 10 */
+ FSpLocationFromPath, /* 11 */
+ FSpPathFromLocation, /* 12 */
+ TclMacExitHandler, /* 13 */
+ TclMacInitExitToShell, /* 14 */
+ TclMacInstallExitToShellPatch, /* 15 */
+ TclMacOSErrorToPosixError, /* 16 */
+ TclMacRemoveTimer, /* 17 */
+ TclMacStartTimer, /* 18 */
+ TclMacTimerExpired, /* 19 */
+ TclMacRegisterResourceFork, /* 20 */
+ TclMacUnRegisterResourceFork, /* 21 */
+ TclMacCreateEnv, /* 22 */
+ TclMacFOpenHack, /* 23 */
+ TclMacReadlink, /* 24 */
+ TclMacChmod, /* 25 */
+#endif /* MAC_TCL */
+};
+
+TclIntPlatStubs *tclIntPlatStubsPtr = &tclIntPlatStubs;
+
+TclPlatStubs tclPlatStubs = {
+ TCL_STUB_MAGIC,
+ NULL,
+#if !defined(__WIN32__) && !defined(MAC_TCL)
+ Tcl_CreateFileHandler, /* 0 */
+ Tcl_DeleteFileHandler, /* 1 */
+ Tcl_GetOpenFile, /* 2 */
+#endif /* UNIX */
+#ifdef MAC_TCL
+ Tcl_MacSetEventProc, /* 0 */
+ Tcl_MacConvertTextResource, /* 1 */
+ Tcl_MacEvalResource, /* 2 */
+ Tcl_MacFindResource, /* 3 */
+ Tcl_GetOSTypeFromObj, /* 4 */
+ Tcl_SetOSTypeObj, /* 5 */
+ Tcl_NewOSTypeObj, /* 6 */
+ strncasecmp, /* 7 */
+ strcasecmp, /* 8 */
+#endif /* MAC_TCL */
+};
+
+TclPlatStubs *tclPlatStubsPtr = &tclPlatStubs;
+
+static TclStubHooks tclStubHooks = {
+ &tclPlatStubs,
+ &tclIntStubs,
+ &tclIntPlatStubs,
+ &tclCompileStubs
+};
+
+
+/* !END!: Do not edit above this line. */
diff --git a/generic/tclStubLib.c b/generic/tclStubLib.c
new file mode 100644
index 0000000..ad66578
--- /dev/null
+++ b/generic/tclStubLib.c
@@ -0,0 +1,113 @@
+/*
+ * tclStubLib.c --
+ *
+ * Stub object that will be statically linked into extensions that wish
+ * to access Tcl.
+ *
+ * Copyright (c) 1998-1999 by Scriptics Corporation.
+ * Copyright (c) 1998 Paul Duffin.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
+ *
+ * RCS: @(#) $Id: tclStubLib.c,v 1.2.2.1 1999/03/05 20:18:06 stanton Exp $
+ */
+
+/*
+ * We need to ensure that we use the stub macros so that this file contains
+ * no references to any of the stub functions. This will make it possible
+ * to build an extension that references Tcl_InitStubs but doesn't end up
+ * including the rest of the stub functions.
+ */
+
+#ifndef USE_TCL_STUBS
+#define USE_TCL_STUBS
+#endif
+#undef USE_TCL_STUB_PROCS
+
+#include "tclInt.h"
+#include "tclPort.h"
+
+/*
+ * Ensure that Tcl_InitStubs is built as an exported symbol. The other stub
+ * functions should be built as non-exported symbols.
+ */
+
+#undef TCL_STORAGE_CLASS
+#define TCL_STORAGE_CLASS DLLEXPORT
+
+TclStubs *tclStubsPtr;
+TclPlatStubs *tclPlatStubsPtr;
+TclIntStubs *tclIntStubsPtr;
+TclIntPlatStubs *tclIntPlatStubsPtr;
+
+static TclStubs * HasStubSupport _ANSI_ARGS_((Tcl_Interp *interp));
+
+static TclStubs *
+HasStubSupport (interp)
+ Tcl_Interp *interp;
+{
+ Interp *iPtr = (Interp *) interp;
+
+ if (iPtr->stubTable && (iPtr->stubTable->magic == TCL_STUB_MAGIC)) {
+ return iPtr->stubTable;
+ }
+ interp->result = "This interpreter does not support stubs-enabled extensions.";
+ interp->freeProc = TCL_STATIC;
+
+ return NULL;
+}
+
+/*
+ *----------------------------------------------------------------------
+ *
+ * Tcl_InitStubs --
+ *
+ * Tries to initialise the stub table pointers and ensures that
+ * the correct version of Tcl is loaded.
+ *
+ * Results:
+ * The actual version of Tcl that satisfies the request, or
+ * NULL to indicate that an error occurred.
+ *
+ * Side effects:
+ * Sets the stub table pointers.
+ *
+ *----------------------------------------------------------------------
+ */
+
+char *
+Tcl_InitStubs (interp, version, exact)
+ Tcl_Interp *interp;
+ char *version;
+ int exact;
+{
+ char *actualVersion;
+ TclStubs *tmp;
+
+ if (!tclStubsPtr) {
+ tclStubsPtr = HasStubSupport(interp);
+ if (!tclStubsPtr) {
+ return NULL;
+ }
+ }
+
+ actualVersion = Tcl_PkgRequireEx(interp, "Tcl", version, exact,
+ (ClientData *) &tmp);
+ if (actualVersion == NULL) {
+ tclStubsPtr = NULL;
+ return NULL;
+ }
+
+ if (tclStubsPtr->hooks) {
+ tclPlatStubsPtr = tclStubsPtr->hooks->tclPlatStubs;
+ tclIntStubsPtr = tclStubsPtr->hooks->tclIntStubs;
+ tclIntPlatStubsPtr = tclStubsPtr->hooks->tclIntPlatStubs;
+ } else {
+ tclPlatStubsPtr = NULL;
+ tclIntStubsPtr = NULL;
+ tclIntPlatStubsPtr = NULL;
+ }
+
+ return actualVersion;
+}
diff --git a/generic/tclStubs.c b/generic/tclStubs.c
new file mode 100644
index 0000000..14d7df4
--- /dev/null
+++ b/generic/tclStubs.c
@@ -0,0 +1,2669 @@
+/*
+ * tclStubs.c --
+ *
+ * This file contains the wrapper functions for the platform independent
+ * public Tcl API.
+ *
+ * Copyright (c) 1998-1999 by Scriptics Corporation.
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
+ *
+ * RCS: @(#) $Id: tclStubs.c,v 1.2.2.1 1999/03/05 20:18:06 stanton Exp $
+ */
+
+#include "tcl.h"
+
+/*
+ * Undefine function macros that will interfere with the defintions below.
+ */
+
+#undef Tcl_Alloc
+#undef Tcl_Free
+#undef Tcl_Realloc
+#undef Tcl_NewBooleanObj
+#undef Tcl_NewByteArrayObj
+#undef Tcl_NewDoubleObj
+#undef Tcl_NewIntObj
+#undef Tcl_NewListObj
+#undef Tcl_NewLongObj
+#undef Tcl_NewObj
+#undef Tcl_NewStringObj
+#undef Tcl_DumpActiveMemory
+#undef Tcl_ValidateAllMemory
+
+/*
+ * WARNING: This file is automatically generated by the tools/genStubs.tcl
+ * script. Any modifications to the function declarations below should be made
+ * in the generic/tcl.decls script.
+ */
+
+/* !BEGIN!: Do not edit below this line. */
+
+/*
+ * Exported stub functions:
+ */
+
+/* Slot 0 */
+void
+Tcl_AddErrorInfo(interp, message)
+ Tcl_Interp * interp;
+ char * message;
+{
+ (tclStubsPtr->tcl_AddErrorInfo)(interp, message);
+}
+
+/* Slot 1 */
+void
+Tcl_AddObjErrorInfo(interp, message, length)
+ Tcl_Interp * interp;
+ char * message;
+ int length;
+{
+ (tclStubsPtr->tcl_AddObjErrorInfo)(interp, message, length);
+}
+
+/* Slot 2 */
+char *
+Tcl_Alloc(size)
+ unsigned int size;
+{
+ return (tclStubsPtr->tcl_Alloc)(size);
+}
+
+/* Slot 3 */
+void
+Tcl_AllowExceptions(interp)
+ Tcl_Interp * interp;
+{
+ (tclStubsPtr->tcl_AllowExceptions)(interp);
+}
+
+/* Slot 4 */
+int
+Tcl_AppendAllObjTypes(interp, objPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+{
+ return (tclStubsPtr->tcl_AppendAllObjTypes)(interp, objPtr);
+}
+
+/* Slot 5 */
+void
+Tcl_AppendElement(interp, string)
+ Tcl_Interp * interp;
+ char * string;
+{
+ (tclStubsPtr->tcl_AppendElement)(interp, string);
+}
+
+/* Slot 6 */
+void
+Tcl_AppendResult TCL_VARARGS_DEF(Tcl_Interp *,interp)
+{
+ Tcl_Interp * var;
+ va_list argList;
+
+ var = (Tcl_Interp *) TCL_VARARGS_START(Tcl_Interp *,interp,argList);
+
+ (tclStubsPtr->tcl_AppendResultVA)(var, argList);
+ va_end(argList);
+}
+
+/* Slot 7 */
+void
+Tcl_AppendResultVA(interp, argList)
+ Tcl_Interp * interp;
+ va_list argList;
+{
+ (tclStubsPtr->tcl_AppendResultVA)(interp, argList);
+}
+
+/* Slot 8 */
+void
+Tcl_AppendToObj(objPtr, bytes, length)
+ Tcl_Obj * objPtr;
+ char * bytes;
+ int length;
+{
+ (tclStubsPtr->tcl_AppendToObj)(objPtr, bytes, length);
+}
+
+/* Slot 9 */
+void
+Tcl_AppendStringsToObj TCL_VARARGS_DEF(Tcl_Obj *,objPtr)
+{
+ Tcl_Obj * var;
+ va_list argList;
+
+ var = (Tcl_Obj *) TCL_VARARGS_START(Tcl_Obj *,objPtr,argList);
+
+ (tclStubsPtr->tcl_AppendStringsToObjVA)(var, argList);
+ va_end(argList);
+}
+
+/* Slot 10 */
+void
+Tcl_AppendStringsToObjVA(objPtr, argList)
+ Tcl_Obj * objPtr;
+ va_list argList;
+{
+ (tclStubsPtr->tcl_AppendStringsToObjVA)(objPtr, argList);
+}
+
+/* Slot 11 */
+Tcl_AsyncHandler
+Tcl_AsyncCreate(proc, clientData)
+ Tcl_AsyncProc * proc;
+ ClientData clientData;
+{
+ return (tclStubsPtr->tcl_AsyncCreate)(proc, clientData);
+}
+
+/* Slot 12 */
+void
+Tcl_AsyncDelete(async)
+ Tcl_AsyncHandler async;
+{
+ (tclStubsPtr->tcl_AsyncDelete)(async);
+}
+
+/* Slot 13 */
+int
+Tcl_AsyncInvoke(interp, code)
+ Tcl_Interp * interp;
+ int code;
+{
+ return (tclStubsPtr->tcl_AsyncInvoke)(interp, code);
+}
+
+/* Slot 14 */
+void
+Tcl_AsyncMark(async)
+ Tcl_AsyncHandler async;
+{
+ (tclStubsPtr->tcl_AsyncMark)(async);
+}
+
+/* Slot 15 */
+int
+Tcl_AsyncReady()
+{
+ return (tclStubsPtr->tcl_AsyncReady)();
+}
+
+/* Slot 16 */
+void
+Tcl_BackgroundError(interp)
+ Tcl_Interp * interp;
+{
+ (tclStubsPtr->tcl_BackgroundError)(interp);
+}
+
+/* Slot 17 */
+char
+Tcl_Backslash(src, readPtr)
+ CONST char * src;
+ int * readPtr;
+{
+ return (tclStubsPtr->tcl_Backslash)(src, readPtr);
+}
+
+/* Slot 18 */
+int
+Tcl_BadChannelOption(interp, optionName, optionList)
+ Tcl_Interp * interp;
+ char * optionName;
+ char * optionList;
+{
+ return (tclStubsPtr->tcl_BadChannelOption)(interp, optionName, optionList);
+}
+
+/* Slot 19 */
+void
+Tcl_CallWhenDeleted(interp, proc, clientData)
+ Tcl_Interp * interp;
+ Tcl_InterpDeleteProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_CallWhenDeleted)(interp, proc, clientData);
+}
+
+/* Slot 20 */
+void
+Tcl_CancelIdleCall(idleProc, clientData)
+ Tcl_IdleProc * idleProc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_CancelIdleCall)(idleProc, clientData);
+}
+
+/* Slot 21 */
+int
+Tcl_Close(interp, chan)
+ Tcl_Interp * interp;
+ Tcl_Channel chan;
+{
+ return (tclStubsPtr->tcl_Close)(interp, chan);
+}
+
+/* Slot 22 */
+int
+Tcl_CommandComplete(cmd)
+ char * cmd;
+{
+ return (tclStubsPtr->tcl_CommandComplete)(cmd);
+}
+
+/* Slot 23 */
+char *
+Tcl_Concat(argc, argv)
+ int argc;
+ char ** argv;
+{
+ return (tclStubsPtr->tcl_Concat)(argc, argv);
+}
+
+/* Slot 24 */
+Tcl_Obj *
+Tcl_ConcatObj(objc, objv)
+ int objc;
+ Tcl_Obj *CONST objv[];
+{
+ return (tclStubsPtr->tcl_ConcatObj)(objc, objv);
+}
+
+/* Slot 25 */
+int
+Tcl_ConvertCountedElement(src, length, dst, flags)
+ CONST char * src;
+ int length;
+ char * dst;
+ int flags;
+{
+ return (tclStubsPtr->tcl_ConvertCountedElement)(src, length, dst, flags);
+}
+
+/* Slot 26 */
+int
+Tcl_ConvertElement(src, dst, flags)
+ CONST char * src;
+ char * dst;
+ int flags;
+{
+ return (tclStubsPtr->tcl_ConvertElement)(src, dst, flags);
+}
+
+/* Slot 27 */
+int
+Tcl_ConvertToType(interp, objPtr, typePtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+ Tcl_ObjType * typePtr;
+{
+ return (tclStubsPtr->tcl_ConvertToType)(interp, objPtr, typePtr);
+}
+
+/* Slot 28 */
+int
+Tcl_CreateAlias(slave, slaveCmd, target, targetCmd, argc, argv)
+ Tcl_Interp * slave;
+ char * slaveCmd;
+ Tcl_Interp * target;
+ char * targetCmd;
+ int argc;
+ char ** argv;
+{
+ return (tclStubsPtr->tcl_CreateAlias)(slave, slaveCmd, target, targetCmd, argc, argv);
+}
+
+/* Slot 29 */
+int
+Tcl_CreateAliasObj(slave, slaveCmd, target, targetCmd, objc, objv)
+ Tcl_Interp * slave;
+ char * slaveCmd;
+ Tcl_Interp * target;
+ char * targetCmd;
+ int objc;
+ Tcl_Obj *CONST objv[];
+{
+ return (tclStubsPtr->tcl_CreateAliasObj)(slave, slaveCmd, target, targetCmd, objc, objv);
+}
+
+/* Slot 30 */
+Tcl_Channel
+Tcl_CreateChannel(typePtr, chanName, instanceData, mask)
+ Tcl_ChannelType * typePtr;
+ char * chanName;
+ ClientData instanceData;
+ int mask;
+{
+ return (tclStubsPtr->tcl_CreateChannel)(typePtr, chanName, instanceData, mask);
+}
+
+/* Slot 31 */
+void
+Tcl_CreateChannelHandler(chan, mask, proc, clientData)
+ Tcl_Channel chan;
+ int mask;
+ Tcl_ChannelProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_CreateChannelHandler)(chan, mask, proc, clientData);
+}
+
+/* Slot 32 */
+void
+Tcl_CreateCloseHandler(chan, proc, clientData)
+ Tcl_Channel chan;
+ Tcl_CloseProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_CreateCloseHandler)(chan, proc, clientData);
+}
+
+/* Slot 33 */
+Tcl_Command
+Tcl_CreateCommand(interp, cmdName, proc, clientData, deleteProc)
+ Tcl_Interp * interp;
+ char * cmdName;
+ Tcl_CmdProc * proc;
+ ClientData clientData;
+ Tcl_CmdDeleteProc * deleteProc;
+{
+ return (tclStubsPtr->tcl_CreateCommand)(interp, cmdName, proc, clientData, deleteProc);
+}
+
+/* Slot 34 */
+void
+Tcl_CreateEventSource(setupProc, checkProc, clientData)
+ Tcl_EventSetupProc * setupProc;
+ Tcl_EventCheckProc * checkProc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_CreateEventSource)(setupProc, checkProc, clientData);
+}
+
+/* Slot 35 */
+void
+Tcl_CreateExitHandler(proc, clientData)
+ Tcl_ExitProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_CreateExitHandler)(proc, clientData);
+}
+
+/* Slot 36 */
+Tcl_Interp *
+Tcl_CreateInterp()
+{
+ return (tclStubsPtr->tcl_CreateInterp)();
+}
+
+/* Slot 37 */
+void
+Tcl_CreateMathFunc(interp, name, numArgs, argTypes, proc, clientData)
+ Tcl_Interp * interp;
+ char * name;
+ int numArgs;
+ Tcl_ValueType * argTypes;
+ Tcl_MathProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_CreateMathFunc)(interp, name, numArgs, argTypes, proc, clientData);
+}
+
+/* Slot 38 */
+Tcl_Command
+Tcl_CreateObjCommand(interp, cmdName, proc, clientData, deleteProc)
+ Tcl_Interp * interp;
+ char * cmdName;
+ Tcl_ObjCmdProc * proc;
+ ClientData clientData;
+ Tcl_CmdDeleteProc * deleteProc;
+{
+ return (tclStubsPtr->tcl_CreateObjCommand)(interp, cmdName, proc, clientData, deleteProc);
+}
+
+/* Slot 39 */
+Tcl_Interp *
+Tcl_CreateSlave(interp, slaveName, isSafe)
+ Tcl_Interp * interp;
+ char * slaveName;
+ int isSafe;
+{
+ return (tclStubsPtr->tcl_CreateSlave)(interp, slaveName, isSafe);
+}
+
+/* Slot 40 */
+Tcl_TimerToken
+Tcl_CreateTimerHandler(milliseconds, proc, clientData)
+ int milliseconds;
+ Tcl_TimerProc * proc;
+ ClientData clientData;
+{
+ return (tclStubsPtr->tcl_CreateTimerHandler)(milliseconds, proc, clientData);
+}
+
+/* Slot 41 */
+Tcl_Trace
+Tcl_CreateTrace(interp, level, proc, clientData)
+ Tcl_Interp * interp;
+ int level;
+ Tcl_CmdTraceProc * proc;
+ ClientData clientData;
+{
+ return (tclStubsPtr->tcl_CreateTrace)(interp, level, proc, clientData);
+}
+
+/* Slot 42 */
+char *
+Tcl_DbCkalloc(size, file, line)
+ unsigned int size;
+ char * file;
+ int line;
+{
+ return (tclStubsPtr->tcl_DbCkalloc)(size, file, line);
+}
+
+/* Slot 43 */
+int
+Tcl_DbCkfree(ptr, file, line)
+ char * ptr;
+ char * file;
+ int line;
+{
+ return (tclStubsPtr->tcl_DbCkfree)(ptr, file, line);
+}
+
+/* Slot 44 */
+char *
+Tcl_DbCkrealloc(ptr, size, file, line)
+ char * ptr;
+ unsigned int size;
+ char * file;
+ int line;
+{
+ return (tclStubsPtr->tcl_DbCkrealloc)(ptr, size, file, line);
+}
+
+/* Slot 45 */
+void
+Tcl_DbDecrRefCount(objPtr, file, line)
+ Tcl_Obj * objPtr;
+ char * file;
+ int line;
+{
+ (tclStubsPtr->tcl_DbDecrRefCount)(objPtr, file, line);
+}
+
+/* Slot 46 */
+void
+Tcl_DbIncrRefCount(objPtr, file, line)
+ Tcl_Obj * objPtr;
+ char * file;
+ int line;
+{
+ (tclStubsPtr->tcl_DbIncrRefCount)(objPtr, file, line);
+}
+
+/* Slot 47 */
+int
+Tcl_DbIsShared(objPtr, file, line)
+ Tcl_Obj * objPtr;
+ char * file;
+ int line;
+{
+ return (tclStubsPtr->tcl_DbIsShared)(objPtr, file, line);
+}
+
+/* Slot 48 */
+Tcl_Obj *
+Tcl_DbNewBooleanObj(boolValue, file, line)
+ int boolValue;
+ char * file;
+ int line;
+{
+ return (tclStubsPtr->tcl_DbNewBooleanObj)(boolValue, file, line);
+}
+
+/* Slot 49 */
+Tcl_Obj *
+Tcl_DbNewByteArrayObj(bytes, length, file, line)
+ unsigned char * bytes;
+ int length;
+ char * file;
+ int line;
+{
+ return (tclStubsPtr->tcl_DbNewByteArrayObj)(bytes, length, file, line);
+}
+
+/* Slot 50 */
+Tcl_Obj *
+Tcl_DbNewDoubleObj(doubleValue, file, line)
+ double doubleValue;
+ char * file;
+ int line;
+{
+ return (tclStubsPtr->tcl_DbNewDoubleObj)(doubleValue, file, line);
+}
+
+/* Slot 51 */
+Tcl_Obj *
+Tcl_DbNewListObj(objc, objv, file, line)
+ int objc;
+ Tcl_Obj *CONST objv[];
+ char * file;
+ int line;
+{
+ return (tclStubsPtr->tcl_DbNewListObj)(objc, objv, file, line);
+}
+
+/* Slot 52 */
+Tcl_Obj *
+Tcl_DbNewLongObj(longValue, file, line)
+ long longValue;
+ char * file;
+ int line;
+{
+ return (tclStubsPtr->tcl_DbNewLongObj)(longValue, file, line);
+}
+
+/* Slot 53 */
+Tcl_Obj *
+Tcl_DbNewObj(file, line)
+ char * file;
+ int line;
+{
+ return (tclStubsPtr->tcl_DbNewObj)(file, line);
+}
+
+/* Slot 54 */
+Tcl_Obj *
+Tcl_DbNewStringObj(bytes, length, file, line)
+ char * bytes;
+ int length;
+ char * file;
+ int line;
+{
+ return (tclStubsPtr->tcl_DbNewStringObj)(bytes, length, file, line);
+}
+
+/* Slot 55 */
+void
+Tcl_DeleteAssocData(interp, name)
+ Tcl_Interp * interp;
+ char * name;
+{
+ (tclStubsPtr->tcl_DeleteAssocData)(interp, name);
+}
+
+/* Slot 56 */
+int
+Tcl_DeleteCommand(interp, cmdName)
+ Tcl_Interp * interp;
+ char * cmdName;
+{
+ return (tclStubsPtr->tcl_DeleteCommand)(interp, cmdName);
+}
+
+/* Slot 57 */
+int
+Tcl_DeleteCommandFromToken(interp, command)
+ Tcl_Interp * interp;
+ Tcl_Command command;
+{
+ return (tclStubsPtr->tcl_DeleteCommandFromToken)(interp, command);
+}
+
+/* Slot 58 */
+void
+Tcl_DeleteChannelHandler(chan, proc, clientData)
+ Tcl_Channel chan;
+ Tcl_ChannelProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_DeleteChannelHandler)(chan, proc, clientData);
+}
+
+/* Slot 59 */
+void
+Tcl_DeleteCloseHandler(chan, proc, clientData)
+ Tcl_Channel chan;
+ Tcl_CloseProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_DeleteCloseHandler)(chan, proc, clientData);
+}
+
+/* Slot 60 */
+void
+Tcl_DeleteEvents(proc, clientData)
+ Tcl_EventDeleteProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_DeleteEvents)(proc, clientData);
+}
+
+/* Slot 61 */
+void
+Tcl_DeleteEventSource(setupProc, checkProc, clientData)
+ Tcl_EventSetupProc * setupProc;
+ Tcl_EventCheckProc * checkProc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_DeleteEventSource)(setupProc, checkProc, clientData);
+}
+
+/* Slot 62 */
+void
+Tcl_DeleteExitHandler(proc, clientData)
+ Tcl_ExitProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_DeleteExitHandler)(proc, clientData);
+}
+
+/* Slot 63 */
+void
+Tcl_DeleteHashEntry(entryPtr)
+ Tcl_HashEntry * entryPtr;
+{
+ (tclStubsPtr->tcl_DeleteHashEntry)(entryPtr);
+}
+
+/* Slot 64 */
+void
+Tcl_DeleteHashTable(tablePtr)
+ Tcl_HashTable * tablePtr;
+{
+ (tclStubsPtr->tcl_DeleteHashTable)(tablePtr);
+}
+
+/* Slot 65 */
+void
+Tcl_DeleteInterp(interp)
+ Tcl_Interp * interp;
+{
+ (tclStubsPtr->tcl_DeleteInterp)(interp);
+}
+
+/* Slot 66 */
+void
+Tcl_DeleteTimerHandler(token)
+ Tcl_TimerToken token;
+{
+ (tclStubsPtr->tcl_DeleteTimerHandler)(token);
+}
+
+/* Slot 67 */
+void
+Tcl_DeleteTrace(interp, trace)
+ Tcl_Interp * interp;
+ Tcl_Trace trace;
+{
+ (tclStubsPtr->tcl_DeleteTrace)(interp, trace);
+}
+
+/* Slot 68 */
+void
+Tcl_DetachPids(numPids, pidPtr)
+ int numPids;
+ Tcl_Pid * pidPtr;
+{
+ (tclStubsPtr->tcl_DetachPids)(numPids, pidPtr);
+}
+
+/* Slot 69 */
+void
+Tcl_DontCallWhenDeleted(interp, proc, clientData)
+ Tcl_Interp * interp;
+ Tcl_InterpDeleteProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_DontCallWhenDeleted)(interp, proc, clientData);
+}
+
+/* Slot 70 */
+int
+Tcl_DoOneEvent(flags)
+ int flags;
+{
+ return (tclStubsPtr->tcl_DoOneEvent)(flags);
+}
+
+/* Slot 71 */
+void
+Tcl_DoWhenIdle(proc, clientData)
+ Tcl_IdleProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_DoWhenIdle)(proc, clientData);
+}
+
+/* Slot 72 */
+char *
+Tcl_DStringAppend(dsPtr, string, length)
+ Tcl_DString * dsPtr;
+ CONST char * string;
+ int length;
+{
+ return (tclStubsPtr->tcl_DStringAppend)(dsPtr, string, length);
+}
+
+/* Slot 73 */
+char *
+Tcl_DStringAppendElement(dsPtr, string)
+ Tcl_DString * dsPtr;
+ CONST char * string;
+{
+ return (tclStubsPtr->tcl_DStringAppendElement)(dsPtr, string);
+}
+
+/* Slot 74 */
+void
+Tcl_DStringEndSublist(dsPtr)
+ Tcl_DString * dsPtr;
+{
+ (tclStubsPtr->tcl_DStringEndSublist)(dsPtr);
+}
+
+/* Slot 75 */
+void
+Tcl_DStringFree(dsPtr)
+ Tcl_DString * dsPtr;
+{
+ (tclStubsPtr->tcl_DStringFree)(dsPtr);
+}
+
+/* Slot 76 */
+void
+Tcl_DStringGetResult(interp, dsPtr)
+ Tcl_Interp * interp;
+ Tcl_DString * dsPtr;
+{
+ (tclStubsPtr->tcl_DStringGetResult)(interp, dsPtr);
+}
+
+/* Slot 77 */
+void
+Tcl_DStringInit(dsPtr)
+ Tcl_DString * dsPtr;
+{
+ (tclStubsPtr->tcl_DStringInit)(dsPtr);
+}
+
+/* Slot 78 */
+void
+Tcl_DStringResult(interp, dsPtr)
+ Tcl_Interp * interp;
+ Tcl_DString * dsPtr;
+{
+ (tclStubsPtr->tcl_DStringResult)(interp, dsPtr);
+}
+
+/* Slot 79 */
+void
+Tcl_DStringSetLength(dsPtr, length)
+ Tcl_DString * dsPtr;
+ int length;
+{
+ (tclStubsPtr->tcl_DStringSetLength)(dsPtr, length);
+}
+
+/* Slot 80 */
+void
+Tcl_DStringStartSublist(dsPtr)
+ Tcl_DString * dsPtr;
+{
+ (tclStubsPtr->tcl_DStringStartSublist)(dsPtr);
+}
+
+/* Slot 81 */
+int
+Tcl_DumpActiveMemory(fileName)
+ char * fileName;
+{
+ return (tclStubsPtr->tcl_DumpActiveMemory)(fileName);
+}
+
+/* Slot 82 */
+Tcl_Obj *
+Tcl_DuplicateObj(objPtr)
+ Tcl_Obj * objPtr;
+{
+ return (tclStubsPtr->tcl_DuplicateObj)(objPtr);
+}
+
+/* Slot 83 */
+int
+Tcl_Eof(chan)
+ Tcl_Channel chan;
+{
+ return (tclStubsPtr->tcl_Eof)(chan);
+}
+
+/* Slot 84 */
+char *
+Tcl_ErrnoId()
+{
+ return (tclStubsPtr->tcl_ErrnoId)();
+}
+
+/* Slot 85 */
+char *
+Tcl_ErrnoMsg(err)
+ int err;
+{
+ return (tclStubsPtr->tcl_ErrnoMsg)(err);
+}
+
+/* Slot 86 */
+int
+Tcl_Eval(interp, string)
+ Tcl_Interp * interp;
+ char * string;
+{
+ return (tclStubsPtr->tcl_Eval)(interp, string);
+}
+
+/* Slot 87 */
+int
+Tcl_EvalFile(interp, fileName)
+ Tcl_Interp * interp;
+ char * fileName;
+{
+ return (tclStubsPtr->tcl_EvalFile)(interp, fileName);
+}
+
+/* Slot 88 */
+void
+Tcl_EventuallyFree(clientData, freeProc)
+ ClientData clientData;
+ Tcl_FreeProc * freeProc;
+{
+ (tclStubsPtr->tcl_EventuallyFree)(clientData, freeProc);
+}
+
+/* Slot 89 */
+int
+Tcl_EvalObj(interp, objPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+{
+ return (tclStubsPtr->tcl_EvalObj)(interp, objPtr);
+}
+
+/* Slot 90 */
+void
+Tcl_Exit(status)
+ int status;
+{
+ (tclStubsPtr->tcl_Exit)(status);
+}
+
+/* Slot 91 */
+int
+Tcl_ExposeCommand(interp, hiddenCmdToken, cmdName)
+ Tcl_Interp * interp;
+ char * hiddenCmdToken;
+ char * cmdName;
+{
+ return (tclStubsPtr->tcl_ExposeCommand)(interp, hiddenCmdToken, cmdName);
+}
+
+/* Slot 92 */
+int
+Tcl_ExprBoolean(interp, string, ptr)
+ Tcl_Interp * interp;
+ char * string;
+ int * ptr;
+{
+ return (tclStubsPtr->tcl_ExprBoolean)(interp, string, ptr);
+}
+
+/* Slot 93 */
+int
+Tcl_ExprBooleanObj(interp, objPtr, ptr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+ int * ptr;
+{
+ return (tclStubsPtr->tcl_ExprBooleanObj)(interp, objPtr, ptr);
+}
+
+/* Slot 94 */
+int
+Tcl_ExprDouble(interp, string, ptr)
+ Tcl_Interp * interp;
+ char * string;
+ double * ptr;
+{
+ return (tclStubsPtr->tcl_ExprDouble)(interp, string, ptr);
+}
+
+/* Slot 95 */
+int
+Tcl_ExprDoubleObj(interp, objPtr, ptr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+ double * ptr;
+{
+ return (tclStubsPtr->tcl_ExprDoubleObj)(interp, objPtr, ptr);
+}
+
+/* Slot 96 */
+int
+Tcl_ExprLong(interp, string, ptr)
+ Tcl_Interp * interp;
+ char * string;
+ long * ptr;
+{
+ return (tclStubsPtr->tcl_ExprLong)(interp, string, ptr);
+}
+
+/* Slot 97 */
+int
+Tcl_ExprLongObj(interp, objPtr, ptr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+ long * ptr;
+{
+ return (tclStubsPtr->tcl_ExprLongObj)(interp, objPtr, ptr);
+}
+
+/* Slot 98 */
+int
+Tcl_ExprObj(interp, objPtr, resultPtrPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+ Tcl_Obj ** resultPtrPtr;
+{
+ return (tclStubsPtr->tcl_ExprObj)(interp, objPtr, resultPtrPtr);
+}
+
+/* Slot 99 */
+int
+Tcl_ExprString(interp, string)
+ Tcl_Interp * interp;
+ char * string;
+{
+ return (tclStubsPtr->tcl_ExprString)(interp, string);
+}
+
+/* Slot 100 */
+void
+Tcl_Finalize()
+{
+ (tclStubsPtr->tcl_Finalize)();
+}
+
+/* Slot 101 */
+void
+Tcl_FindExecutable(argv0)
+ char * argv0;
+{
+ (tclStubsPtr->tcl_FindExecutable)(argv0);
+}
+
+/* Slot 102 */
+Tcl_HashEntry *
+Tcl_FirstHashEntry(tablePtr, searchPtr)
+ Tcl_HashTable * tablePtr;
+ Tcl_HashSearch * searchPtr;
+{
+ return (tclStubsPtr->tcl_FirstHashEntry)(tablePtr, searchPtr);
+}
+
+/* Slot 103 */
+int
+Tcl_Flush(chan)
+ Tcl_Channel chan;
+{
+ return (tclStubsPtr->tcl_Flush)(chan);
+}
+
+/* Slot 104 */
+void
+Tcl_Free(ptr)
+ char * ptr;
+{
+ (tclStubsPtr->tcl_Free)(ptr);
+}
+
+/* Slot 105 */
+void
+TclFreeObj(objPtr)
+ Tcl_Obj * objPtr;
+{
+ (tclStubsPtr->tclFreeObj)(objPtr);
+}
+
+/* Slot 106 */
+void
+Tcl_FreeResult(interp)
+ Tcl_Interp * interp;
+{
+ (tclStubsPtr->tcl_FreeResult)(interp);
+}
+
+/* Slot 107 */
+int
+Tcl_GetAlias(interp, slaveCmd, targetInterpPtr, targetCmdPtr, argcPtr, argvPtr)
+ Tcl_Interp * interp;
+ char * slaveCmd;
+ Tcl_Interp ** targetInterpPtr;
+ char ** targetCmdPtr;
+ int * argcPtr;
+ char *** argvPtr;
+{
+ return (tclStubsPtr->tcl_GetAlias)(interp, slaveCmd, targetInterpPtr, targetCmdPtr, argcPtr, argvPtr);
+}
+
+/* Slot 108 */
+int
+Tcl_GetAliasObj(interp, slaveCmd, targetInterpPtr, targetCmdPtr, objcPtr, objv)
+ Tcl_Interp * interp;
+ char * slaveCmd;
+ Tcl_Interp ** targetInterpPtr;
+ char ** targetCmdPtr;
+ int * objcPtr;
+ Tcl_Obj *** objv;
+{
+ return (tclStubsPtr->tcl_GetAliasObj)(interp, slaveCmd, targetInterpPtr, targetCmdPtr, objcPtr, objv);
+}
+
+/* Slot 109 */
+ClientData
+Tcl_GetAssocData(interp, name, procPtr)
+ Tcl_Interp * interp;
+ char * name;
+ Tcl_InterpDeleteProc ** procPtr;
+{
+ return (tclStubsPtr->tcl_GetAssocData)(interp, name, procPtr);
+}
+
+/* Slot 110 */
+int
+Tcl_GetBoolean(interp, string, boolPtr)
+ Tcl_Interp * interp;
+ char * string;
+ int * boolPtr;
+{
+ return (tclStubsPtr->tcl_GetBoolean)(interp, string, boolPtr);
+}
+
+/* Slot 111 */
+int
+Tcl_GetBooleanFromObj(interp, objPtr, boolPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+ int * boolPtr;
+{
+ return (tclStubsPtr->tcl_GetBooleanFromObj)(interp, objPtr, boolPtr);
+}
+
+/* Slot 112 */
+unsigned char *
+Tcl_GetByteArrayFromObj(objPtr, lengthPtr)
+ Tcl_Obj * objPtr;
+ int * lengthPtr;
+{
+ return (tclStubsPtr->tcl_GetByteArrayFromObj)(objPtr, lengthPtr);
+}
+
+/* Slot 113 */
+Tcl_Channel
+Tcl_GetChannel(interp, chanName, modePtr)
+ Tcl_Interp * interp;
+ char * chanName;
+ int * modePtr;
+{
+ return (tclStubsPtr->tcl_GetChannel)(interp, chanName, modePtr);
+}
+
+/* Slot 114 */
+int
+Tcl_GetChannelBufferSize(chan)
+ Tcl_Channel chan;
+{
+ return (tclStubsPtr->tcl_GetChannelBufferSize)(chan);
+}
+
+/* Slot 115 */
+int
+Tcl_GetChannelHandle(chan, direction, handlePtr)
+ Tcl_Channel chan;
+ int direction;
+ ClientData * handlePtr;
+{
+ return (tclStubsPtr->tcl_GetChannelHandle)(chan, direction, handlePtr);
+}
+
+/* Slot 116 */
+ClientData
+Tcl_GetChannelInstanceData(chan)
+ Tcl_Channel chan;
+{
+ return (tclStubsPtr->tcl_GetChannelInstanceData)(chan);
+}
+
+/* Slot 117 */
+int
+Tcl_GetChannelMode(chan)
+ Tcl_Channel chan;
+{
+ return (tclStubsPtr->tcl_GetChannelMode)(chan);
+}
+
+/* Slot 118 */
+char *
+Tcl_GetChannelName(chan)
+ Tcl_Channel chan;
+{
+ return (tclStubsPtr->tcl_GetChannelName)(chan);
+}
+
+/* Slot 119 */
+int
+Tcl_GetChannelOption(interp, chan, optionName, dsPtr)
+ Tcl_Interp * interp;
+ Tcl_Channel chan;
+ char * optionName;
+ Tcl_DString * dsPtr;
+{
+ return (tclStubsPtr->tcl_GetChannelOption)(interp, chan, optionName, dsPtr);
+}
+
+/* Slot 120 */
+Tcl_ChannelType *
+Tcl_GetChannelType(chan)
+ Tcl_Channel chan;
+{
+ return (tclStubsPtr->tcl_GetChannelType)(chan);
+}
+
+/* Slot 121 */
+int
+Tcl_GetCommandInfo(interp, cmdName, infoPtr)
+ Tcl_Interp * interp;
+ char * cmdName;
+ Tcl_CmdInfo * infoPtr;
+{
+ return (tclStubsPtr->tcl_GetCommandInfo)(interp, cmdName, infoPtr);
+}
+
+/* Slot 122 */
+char *
+Tcl_GetCommandName(interp, command)
+ Tcl_Interp * interp;
+ Tcl_Command command;
+{
+ return (tclStubsPtr->tcl_GetCommandName)(interp, command);
+}
+
+/* Slot 123 */
+int
+Tcl_GetDouble(interp, string, doublePtr)
+ Tcl_Interp * interp;
+ char * string;
+ double * doublePtr;
+{
+ return (tclStubsPtr->tcl_GetDouble)(interp, string, doublePtr);
+}
+
+/* Slot 124 */
+int
+Tcl_GetDoubleFromObj(interp, objPtr, doublePtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+ double * doublePtr;
+{
+ return (tclStubsPtr->tcl_GetDoubleFromObj)(interp, objPtr, doublePtr);
+}
+
+/* Slot 125 */
+int
+Tcl_GetErrno()
+{
+ return (tclStubsPtr->tcl_GetErrno)();
+}
+
+/* Slot 126 */
+char *
+Tcl_GetHostName()
+{
+ return (tclStubsPtr->tcl_GetHostName)();
+}
+
+/* Slot 127 */
+int
+Tcl_GetIndexFromObj(interp, objPtr, tablePtr, msg, flags, indexPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+ char ** tablePtr;
+ char * msg;
+ int flags;
+ int * indexPtr;
+{
+ return (tclStubsPtr->tcl_GetIndexFromObj)(interp, objPtr, tablePtr, msg, flags, indexPtr);
+}
+
+/* Slot 128 */
+int
+Tcl_GetInt(interp, string, intPtr)
+ Tcl_Interp * interp;
+ char * string;
+ int * intPtr;
+{
+ return (tclStubsPtr->tcl_GetInt)(interp, string, intPtr);
+}
+
+/* Slot 129 */
+int
+Tcl_GetInterpPath(askInterp, slaveInterp)
+ Tcl_Interp * askInterp;
+ Tcl_Interp * slaveInterp;
+{
+ return (tclStubsPtr->tcl_GetInterpPath)(askInterp, slaveInterp);
+}
+
+/* Slot 130 */
+int
+Tcl_GetIntFromObj(interp, objPtr, intPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+ int * intPtr;
+{
+ return (tclStubsPtr->tcl_GetIntFromObj)(interp, objPtr, intPtr);
+}
+
+/* Slot 131 */
+int
+Tcl_GetLongFromObj(interp, objPtr, longPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+ long * longPtr;
+{
+ return (tclStubsPtr->tcl_GetLongFromObj)(interp, objPtr, longPtr);
+}
+
+/* Slot 132 */
+Tcl_Interp *
+Tcl_GetMaster(interp)
+ Tcl_Interp * interp;
+{
+ return (tclStubsPtr->tcl_GetMaster)(interp);
+}
+
+/* Slot 133 */
+CONST char *
+Tcl_GetNameOfExecutable()
+{
+ return (tclStubsPtr->tcl_GetNameOfExecutable)();
+}
+
+/* Slot 134 */
+Tcl_Obj *
+Tcl_GetObjResult(interp)
+ Tcl_Interp * interp;
+{
+ return (tclStubsPtr->tcl_GetObjResult)(interp);
+}
+
+/* Slot 135 */
+Tcl_ObjType *
+Tcl_GetObjType(typeName)
+ char * typeName;
+{
+ return (tclStubsPtr->tcl_GetObjType)(typeName);
+}
+
+/* Slot 136 */
+Tcl_PathType
+Tcl_GetPathType(path)
+ char * path;
+{
+ return (tclStubsPtr->tcl_GetPathType)(path);
+}
+
+/* Slot 137 */
+int
+Tcl_Gets(chan, dsPtr)
+ Tcl_Channel chan;
+ Tcl_DString * dsPtr;
+{
+ return (tclStubsPtr->tcl_Gets)(chan, dsPtr);
+}
+
+/* Slot 138 */
+int
+Tcl_GetsObj(chan, objPtr)
+ Tcl_Channel chan;
+ Tcl_Obj * objPtr;
+{
+ return (tclStubsPtr->tcl_GetsObj)(chan, objPtr);
+}
+
+/* Slot 139 */
+int
+Tcl_GetServiceMode()
+{
+ return (tclStubsPtr->tcl_GetServiceMode)();
+}
+
+/* Slot 140 */
+Tcl_Interp *
+Tcl_GetSlave(interp, slaveName)
+ Tcl_Interp * interp;
+ char * slaveName;
+{
+ return (tclStubsPtr->tcl_GetSlave)(interp, slaveName);
+}
+
+/* Slot 141 */
+Tcl_Channel
+Tcl_GetStdChannel(type)
+ int type;
+{
+ return (tclStubsPtr->tcl_GetStdChannel)(type);
+}
+
+/* Slot 142 */
+char *
+Tcl_GetStringFromObj(objPtr, lengthPtr)
+ Tcl_Obj * objPtr;
+ int * lengthPtr;
+{
+ return (tclStubsPtr->tcl_GetStringFromObj)(objPtr, lengthPtr);
+}
+
+/* Slot 143 */
+char *
+Tcl_GetStringResult(interp)
+ Tcl_Interp * interp;
+{
+ return (tclStubsPtr->tcl_GetStringResult)(interp);
+}
+
+/* Slot 144 */
+char *
+Tcl_GetVar(interp, varName, flags)
+ Tcl_Interp * interp;
+ char * varName;
+ int flags;
+{
+ return (tclStubsPtr->tcl_GetVar)(interp, varName, flags);
+}
+
+/* Slot 145 */
+char *
+Tcl_GetVar2(interp, part1, part2, flags)
+ Tcl_Interp * interp;
+ char * part1;
+ char * part2;
+ int flags;
+{
+ return (tclStubsPtr->tcl_GetVar2)(interp, part1, part2, flags);
+}
+
+/* Slot 146 */
+int
+Tcl_GlobalEval(interp, command)
+ Tcl_Interp * interp;
+ char * command;
+{
+ return (tclStubsPtr->tcl_GlobalEval)(interp, command);
+}
+
+/* Slot 147 */
+int
+Tcl_GlobalEvalObj(interp, objPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * objPtr;
+{
+ return (tclStubsPtr->tcl_GlobalEvalObj)(interp, objPtr);
+}
+
+/* Slot 148 */
+char *
+Tcl_HashStats(tablePtr)
+ Tcl_HashTable * tablePtr;
+{
+ return (tclStubsPtr->tcl_HashStats)(tablePtr);
+}
+
+/* Slot 149 */
+int
+Tcl_HideCommand(interp, cmdName, hiddenCmdToken)
+ Tcl_Interp * interp;
+ char * cmdName;
+ char * hiddenCmdToken;
+{
+ return (tclStubsPtr->tcl_HideCommand)(interp, cmdName, hiddenCmdToken);
+}
+
+/* Slot 150 */
+int
+Tcl_Init(interp)
+ Tcl_Interp * interp;
+{
+ return (tclStubsPtr->tcl_Init)(interp);
+}
+
+/* Slot 151 */
+void
+Tcl_InitHashTable(tablePtr, keyType)
+ Tcl_HashTable * tablePtr;
+ int keyType;
+{
+ (tclStubsPtr->tcl_InitHashTable)(tablePtr, keyType);
+}
+
+/* Slot 152 */
+void
+Tcl_InitMemory(interp)
+ Tcl_Interp * interp;
+{
+ (tclStubsPtr->tcl_InitMemory)(interp);
+}
+
+/* Slot 153 */
+int
+Tcl_InputBlocked(chan)
+ Tcl_Channel chan;
+{
+ return (tclStubsPtr->tcl_InputBlocked)(chan);
+}
+
+/* Slot 154 */
+int
+Tcl_InputBuffered(chan)
+ Tcl_Channel chan;
+{
+ return (tclStubsPtr->tcl_InputBuffered)(chan);
+}
+
+/* Slot 155 */
+int
+Tcl_InterpDeleted(interp)
+ Tcl_Interp * interp;
+{
+ return (tclStubsPtr->tcl_InterpDeleted)(interp);
+}
+
+/* Slot 156 */
+int
+Tcl_IsSafe(interp)
+ Tcl_Interp * interp;
+{
+ return (tclStubsPtr->tcl_IsSafe)(interp);
+}
+
+/* Slot 157 */
+void
+Tcl_InvalidateStringRep(objPtr)
+ Tcl_Obj * objPtr;
+{
+ (tclStubsPtr->tcl_InvalidateStringRep)(objPtr);
+}
+
+/* Slot 158 */
+char *
+Tcl_JoinPath(argc, argv, resultPtr)
+ int argc;
+ char ** argv;
+ Tcl_DString * resultPtr;
+{
+ return (tclStubsPtr->tcl_JoinPath)(argc, argv, resultPtr);
+}
+
+/* Slot 159 */
+int
+Tcl_LinkVar(interp, varName, addr, type)
+ Tcl_Interp * interp;
+ char * varName;
+ char * addr;
+ int type;
+{
+ return (tclStubsPtr->tcl_LinkVar)(interp, varName, addr, type);
+}
+
+/* Slot 160 */
+int
+Tcl_ListObjAppendList(interp, listPtr, elemListPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * listPtr;
+ Tcl_Obj * elemListPtr;
+{
+ return (tclStubsPtr->tcl_ListObjAppendList)(interp, listPtr, elemListPtr);
+}
+
+/* Slot 161 */
+int
+Tcl_ListObjAppendElement(interp, listPtr, objPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * listPtr;
+ Tcl_Obj * objPtr;
+{
+ return (tclStubsPtr->tcl_ListObjAppendElement)(interp, listPtr, objPtr);
+}
+
+/* Slot 162 */
+int
+Tcl_ListObjGetElements(interp, listPtr, objcPtr, objvPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * listPtr;
+ int * objcPtr;
+ Tcl_Obj *** objvPtr;
+{
+ return (tclStubsPtr->tcl_ListObjGetElements)(interp, listPtr, objcPtr, objvPtr);
+}
+
+/* Slot 163 */
+int
+Tcl_ListObjIndex(interp, listPtr, index, objPtrPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * listPtr;
+ int index;
+ Tcl_Obj ** objPtrPtr;
+{
+ return (tclStubsPtr->tcl_ListObjIndex)(interp, listPtr, index, objPtrPtr);
+}
+
+/* Slot 164 */
+int
+Tcl_ListObjLength(interp, listPtr, intPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * listPtr;
+ int * intPtr;
+{
+ return (tclStubsPtr->tcl_ListObjLength)(interp, listPtr, intPtr);
+}
+
+/* Slot 165 */
+int
+Tcl_ListObjReplace(interp, listPtr, first, count, objc, objv)
+ Tcl_Interp * interp;
+ Tcl_Obj * listPtr;
+ int first;
+ int count;
+ int objc;
+ Tcl_Obj *CONST objv[];
+{
+ return (tclStubsPtr->tcl_ListObjReplace)(interp, listPtr, first, count, objc, objv);
+}
+
+/* Slot 166 */
+Tcl_Channel
+Tcl_MakeFileChannel(handle, mode)
+ ClientData handle;
+ int mode;
+{
+ return (tclStubsPtr->tcl_MakeFileChannel)(handle, mode);
+}
+
+/* Slot 167 */
+int
+Tcl_MakeSafe(interp)
+ Tcl_Interp * interp;
+{
+ return (tclStubsPtr->tcl_MakeSafe)(interp);
+}
+
+/* Slot 168 */
+Tcl_Channel
+Tcl_MakeTcpClientChannel(tcpSocket)
+ ClientData tcpSocket;
+{
+ return (tclStubsPtr->tcl_MakeTcpClientChannel)(tcpSocket);
+}
+
+/* Slot 169 */
+char *
+Tcl_Merge(argc, argv)
+ int argc;
+ char ** argv;
+{
+ return (tclStubsPtr->tcl_Merge)(argc, argv);
+}
+
+/* Slot 170 */
+Tcl_Obj *
+Tcl_NewBooleanObj(boolValue)
+ int boolValue;
+{
+ return (tclStubsPtr->tcl_NewBooleanObj)(boolValue);
+}
+
+/* Slot 171 */
+Tcl_Obj *
+Tcl_NewByteArrayObj(bytes, length)
+ unsigned char * bytes;
+ int length;
+{
+ return (tclStubsPtr->tcl_NewByteArrayObj)(bytes, length);
+}
+
+/* Slot 172 */
+Tcl_Obj *
+Tcl_NewDoubleObj(doubleValue)
+ double doubleValue;
+{
+ return (tclStubsPtr->tcl_NewDoubleObj)(doubleValue);
+}
+
+/* Slot 173 */
+Tcl_Obj *
+Tcl_NewIntObj(intValue)
+ int intValue;
+{
+ return (tclStubsPtr->tcl_NewIntObj)(intValue);
+}
+
+/* Slot 174 */
+Tcl_Obj *
+Tcl_NewListObj(objc, objv)
+ int objc;
+ Tcl_Obj *CONST objv[];
+{
+ return (tclStubsPtr->tcl_NewListObj)(objc, objv);
+}
+
+/* Slot 175 */
+Tcl_Obj *
+Tcl_NewLongObj(longValue)
+ long longValue;
+{
+ return (tclStubsPtr->tcl_NewLongObj)(longValue);
+}
+
+/* Slot 176 */
+Tcl_Obj *
+Tcl_NewObj()
+{
+ return (tclStubsPtr->tcl_NewObj)();
+}
+
+/* Slot 177 */
+Tcl_Obj *
+Tcl_NewStringObj(bytes, length)
+ char * bytes;
+ int length;
+{
+ return (tclStubsPtr->tcl_NewStringObj)(bytes, length);
+}
+
+/* Slot 178 */
+Tcl_HashEntry *
+Tcl_NextHashEntry(searchPtr)
+ Tcl_HashSearch * searchPtr;
+{
+ return (tclStubsPtr->tcl_NextHashEntry)(searchPtr);
+}
+
+/* Slot 179 */
+void
+Tcl_NotifyChannel(channel, mask)
+ Tcl_Channel channel;
+ int mask;
+{
+ (tclStubsPtr->tcl_NotifyChannel)(channel, mask);
+}
+
+/* Slot 180 */
+Tcl_Obj *
+Tcl_ObjGetVar2(interp, part1Ptr, part2Ptr, flags)
+ Tcl_Interp * interp;
+ Tcl_Obj * part1Ptr;
+ Tcl_Obj * part2Ptr;
+ int flags;
+{
+ return (tclStubsPtr->tcl_ObjGetVar2)(interp, part1Ptr, part2Ptr, flags);
+}
+
+/* Slot 181 */
+Tcl_Obj *
+Tcl_ObjSetVar2(interp, part1Ptr, part2Ptr, newValuePtr, flags)
+ Tcl_Interp * interp;
+ Tcl_Obj * part1Ptr;
+ Tcl_Obj * part2Ptr;
+ Tcl_Obj * newValuePtr;
+ int flags;
+{
+ return (tclStubsPtr->tcl_ObjSetVar2)(interp, part1Ptr, part2Ptr, newValuePtr, flags);
+}
+
+/* Slot 182 */
+Tcl_Channel
+Tcl_OpenCommandChannel(interp, argc, argv, flags)
+ Tcl_Interp * interp;
+ int argc;
+ char ** argv;
+ int flags;
+{
+ return (tclStubsPtr->tcl_OpenCommandChannel)(interp, argc, argv, flags);
+}
+
+/* Slot 183 */
+Tcl_Channel
+Tcl_OpenFileChannel(interp, fileName, modeString, permissions)
+ Tcl_Interp * interp;
+ char * fileName;
+ char * modeString;
+ int permissions;
+{
+ return (tclStubsPtr->tcl_OpenFileChannel)(interp, fileName, modeString, permissions);
+}
+
+/* Slot 184 */
+Tcl_Channel
+Tcl_OpenTcpClient(interp, port, address, myaddr, myport, async)
+ Tcl_Interp * interp;
+ int port;
+ char * address;
+ char * myaddr;
+ int myport;
+ int async;
+{
+ return (tclStubsPtr->tcl_OpenTcpClient)(interp, port, address, myaddr, myport, async);
+}
+
+/* Slot 185 */
+Tcl_Channel
+Tcl_OpenTcpServer(interp, port, host, acceptProc, callbackData)
+ Tcl_Interp * interp;
+ int port;
+ char * host;
+ Tcl_TcpAcceptProc * acceptProc;
+ ClientData callbackData;
+{
+ return (tclStubsPtr->tcl_OpenTcpServer)(interp, port, host, acceptProc, callbackData);
+}
+
+/* Slot 186 */
+void
+panic TCL_VARARGS_DEF(char *,format)
+{
+ char * var;
+ va_list argList;
+
+ var = (char *) TCL_VARARGS_START(char *,format,argList);
+
+ (tclStubsPtr->panicVA)(var, argList);
+ va_end(argList);
+}
+
+/* Slot 187 */
+void
+panicVA(format, argList)
+ char * format;
+ va_list argList;
+{
+ (tclStubsPtr->panicVA)(format, argList);
+}
+
+/* Slot 188 */
+char *
+Tcl_ParseVar(interp, string, termPtr)
+ Tcl_Interp * interp;
+ char * string;
+ char ** termPtr;
+{
+ return (tclStubsPtr->tcl_ParseVar)(interp, string, termPtr);
+}
+
+/* Slot 189 */
+char *
+Tcl_PkgPresent(interp, name, version, exact)
+ Tcl_Interp * interp;
+ char * name;
+ char * version;
+ int exact;
+{
+ return (tclStubsPtr->tcl_PkgPresent)(interp, name, version, exact);
+}
+
+/* Slot 190 */
+char *
+Tcl_PkgPresentEx(interp, name, version, exact, clientDataPtr)
+ Tcl_Interp * interp;
+ char * name;
+ char * version;
+ int exact;
+ ClientData * clientDataPtr;
+{
+ return (tclStubsPtr->tcl_PkgPresentEx)(interp, name, version, exact, clientDataPtr);
+}
+
+/* Slot 191 */
+int
+Tcl_PkgProvide(interp, name, version)
+ Tcl_Interp * interp;
+ char * name;
+ char * version;
+{
+ return (tclStubsPtr->tcl_PkgProvide)(interp, name, version);
+}
+
+/* Slot 192 */
+int
+Tcl_PkgProvideEx(interp, name, version, clientData)
+ Tcl_Interp * interp;
+ char * name;
+ char * version;
+ ClientData clientData;
+{
+ return (tclStubsPtr->tcl_PkgProvideEx)(interp, name, version, clientData);
+}
+
+/* Slot 193 */
+char *
+Tcl_PkgRequire(interp, name, version, exact)
+ Tcl_Interp * interp;
+ char * name;
+ char * version;
+ int exact;
+{
+ return (tclStubsPtr->tcl_PkgRequire)(interp, name, version, exact);
+}
+
+/* Slot 194 */
+char *
+Tcl_PkgRequireEx(interp, name, version, exact, clientDataPtr)
+ Tcl_Interp * interp;
+ char * name;
+ char * version;
+ int exact;
+ ClientData * clientDataPtr;
+{
+ return (tclStubsPtr->tcl_PkgRequireEx)(interp, name, version, exact, clientDataPtr);
+}
+
+/* Slot 195 */
+char *
+Tcl_PosixError(interp)
+ Tcl_Interp * interp;
+{
+ return (tclStubsPtr->tcl_PosixError)(interp);
+}
+
+/* Slot 196 */
+void
+Tcl_Preserve(data)
+ ClientData data;
+{
+ (tclStubsPtr->tcl_Preserve)(data);
+}
+
+/* Slot 197 */
+void
+Tcl_PrintDouble(interp, value, dst)
+ Tcl_Interp * interp;
+ double value;
+ char * dst;
+{
+ (tclStubsPtr->tcl_PrintDouble)(interp, value, dst);
+}
+
+/* Slot 198 */
+int
+Tcl_PutEnv(string)
+ CONST char * string;
+{
+ return (tclStubsPtr->tcl_PutEnv)(string);
+}
+
+/* Slot 199 */
+void
+Tcl_QueueEvent(evPtr, position)
+ Tcl_Event * evPtr;
+ Tcl_QueuePosition position;
+{
+ (tclStubsPtr->tcl_QueueEvent)(evPtr, position);
+}
+
+/* Slot 200 */
+int
+Tcl_Read(chan, bufPtr, toRead)
+ Tcl_Channel chan;
+ char * bufPtr;
+ int toRead;
+{
+ return (tclStubsPtr->tcl_Read)(chan, bufPtr, toRead);
+}
+
+/* Slot 201 */
+char *
+Tcl_Realloc(ptr, size)
+ char * ptr;
+ unsigned int size;
+{
+ return (tclStubsPtr->tcl_Realloc)(ptr, size);
+}
+
+/* Slot 202 */
+void
+Tcl_ReapDetachedProcs()
+{
+ (tclStubsPtr->tcl_ReapDetachedProcs)();
+}
+
+/* Slot 203 */
+int
+Tcl_RecordAndEval(interp, cmd, flags)
+ Tcl_Interp * interp;
+ char * cmd;
+ int flags;
+{
+ return (tclStubsPtr->tcl_RecordAndEval)(interp, cmd, flags);
+}
+
+/* Slot 204 */
+int
+Tcl_RecordAndEvalObj(interp, cmdPtr, flags)
+ Tcl_Interp * interp;
+ Tcl_Obj * cmdPtr;
+ int flags;
+{
+ return (tclStubsPtr->tcl_RecordAndEvalObj)(interp, cmdPtr, flags);
+}
+
+/* Slot 205 */
+Tcl_RegExp
+Tcl_RegExpCompile(interp, string)
+ Tcl_Interp * interp;
+ char * string;
+{
+ return (tclStubsPtr->tcl_RegExpCompile)(interp, string);
+}
+
+/* Slot 206 */
+int
+Tcl_RegExpExec(interp, regexp, string, start)
+ Tcl_Interp * interp;
+ Tcl_RegExp regexp;
+ char * string;
+ char * start;
+{
+ return (tclStubsPtr->tcl_RegExpExec)(interp, regexp, string, start);
+}
+
+/* Slot 207 */
+int
+Tcl_RegExpMatch(interp, string, pattern)
+ Tcl_Interp * interp;
+ char * string;
+ char * pattern;
+{
+ return (tclStubsPtr->tcl_RegExpMatch)(interp, string, pattern);
+}
+
+/* Slot 208 */
+void
+Tcl_RegExpRange(regexp, index, startPtr, endPtr)
+ Tcl_RegExp regexp;
+ int index;
+ char ** startPtr;
+ char ** endPtr;
+{
+ (tclStubsPtr->tcl_RegExpRange)(regexp, index, startPtr, endPtr);
+}
+
+/* Slot 209 */
+void
+Tcl_RegisterChannel(interp, chan)
+ Tcl_Interp * interp;
+ Tcl_Channel chan;
+{
+ (tclStubsPtr->tcl_RegisterChannel)(interp, chan);
+}
+
+/* Slot 210 */
+void
+Tcl_RegisterObjType(typePtr)
+ Tcl_ObjType * typePtr;
+{
+ (tclStubsPtr->tcl_RegisterObjType)(typePtr);
+}
+
+/* Slot 211 */
+void
+Tcl_Release(clientData)
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_Release)(clientData);
+}
+
+/* Slot 212 */
+void
+Tcl_ResetResult(interp)
+ Tcl_Interp * interp;
+{
+ (tclStubsPtr->tcl_ResetResult)(interp);
+}
+
+/* Slot 213 */
+int
+Tcl_ScanCountedElement(string, length, flagPtr)
+ CONST char * string;
+ int length;
+ int * flagPtr;
+{
+ return (tclStubsPtr->tcl_ScanCountedElement)(string, length, flagPtr);
+}
+
+/* Slot 214 */
+int
+Tcl_ScanElement(string, flagPtr)
+ CONST char * string;
+ int * flagPtr;
+{
+ return (tclStubsPtr->tcl_ScanElement)(string, flagPtr);
+}
+
+/* Slot 215 */
+int
+Tcl_Seek(chan, offset, mode)
+ Tcl_Channel chan;
+ int offset;
+ int mode;
+{
+ return (tclStubsPtr->tcl_Seek)(chan, offset, mode);
+}
+
+/* Slot 216 */
+int
+Tcl_ServiceAll()
+{
+ return (tclStubsPtr->tcl_ServiceAll)();
+}
+
+/* Slot 217 */
+int
+Tcl_ServiceEvent(flags)
+ int flags;
+{
+ return (tclStubsPtr->tcl_ServiceEvent)(flags);
+}
+
+/* Slot 218 */
+void
+Tcl_SetAssocData(interp, name, proc, clientData)
+ Tcl_Interp * interp;
+ char * name;
+ Tcl_InterpDeleteProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_SetAssocData)(interp, name, proc, clientData);
+}
+
+/* Slot 219 */
+void
+Tcl_SetBooleanObj(objPtr, boolValue)
+ Tcl_Obj * objPtr;
+ int boolValue;
+{
+ (tclStubsPtr->tcl_SetBooleanObj)(objPtr, boolValue);
+}
+
+/* Slot 220 */
+unsigned char *
+Tcl_SetByteArrayLength(objPtr, length)
+ Tcl_Obj * objPtr;
+ int length;
+{
+ return (tclStubsPtr->tcl_SetByteArrayLength)(objPtr, length);
+}
+
+/* Slot 221 */
+void
+Tcl_SetByteArrayObj(objPtr, bytes, length)
+ Tcl_Obj * objPtr;
+ unsigned char * bytes;
+ int length;
+{
+ (tclStubsPtr->tcl_SetByteArrayObj)(objPtr, bytes, length);
+}
+
+/* Slot 222 */
+void
+Tcl_SetChannelBufferSize(chan, sz)
+ Tcl_Channel chan;
+ int sz;
+{
+ (tclStubsPtr->tcl_SetChannelBufferSize)(chan, sz);
+}
+
+/* Slot 223 */
+int
+Tcl_SetChannelOption(interp, chan, optionName, newValue)
+ Tcl_Interp * interp;
+ Tcl_Channel chan;
+ char * optionName;
+ char * newValue;
+{
+ return (tclStubsPtr->tcl_SetChannelOption)(interp, chan, optionName, newValue);
+}
+
+/* Slot 224 */
+int
+Tcl_SetCommandInfo(interp, cmdName, infoPtr)
+ Tcl_Interp * interp;
+ char * cmdName;
+ Tcl_CmdInfo * infoPtr;
+{
+ return (tclStubsPtr->tcl_SetCommandInfo)(interp, cmdName, infoPtr);
+}
+
+/* Slot 225 */
+void
+Tcl_SetDoubleObj(objPtr, doubleValue)
+ Tcl_Obj * objPtr;
+ double doubleValue;
+{
+ (tclStubsPtr->tcl_SetDoubleObj)(objPtr, doubleValue);
+}
+
+/* Slot 226 */
+void
+Tcl_SetErrno(err)
+ int err;
+{
+ (tclStubsPtr->tcl_SetErrno)(err);
+}
+
+/* Slot 227 */
+void
+Tcl_SetErrorCode TCL_VARARGS_DEF(Tcl_Interp *,interp)
+{
+ Tcl_Interp * var;
+ va_list argList;
+
+ var = (Tcl_Interp *) TCL_VARARGS_START(Tcl_Interp *,interp,argList);
+
+ (tclStubsPtr->tcl_SetErrorCodeVA)(var, argList);
+ va_end(argList);
+}
+
+/* Slot 228 */
+void
+Tcl_SetErrorCodeVA(interp, argList)
+ Tcl_Interp * interp;
+ va_list argList;
+{
+ (tclStubsPtr->tcl_SetErrorCodeVA)(interp, argList);
+}
+
+/* Slot 229 */
+void
+Tcl_SetIntObj(objPtr, intValue)
+ Tcl_Obj * objPtr;
+ int intValue;
+{
+ (tclStubsPtr->tcl_SetIntObj)(objPtr, intValue);
+}
+
+/* Slot 230 */
+void
+Tcl_SetListObj(objPtr, objc, objv)
+ Tcl_Obj * objPtr;
+ int objc;
+ Tcl_Obj *CONST objv[];
+{
+ (tclStubsPtr->tcl_SetListObj)(objPtr, objc, objv);
+}
+
+/* Slot 231 */
+void
+Tcl_SetLongObj(objPtr, longValue)
+ Tcl_Obj * objPtr;
+ long longValue;
+{
+ (tclStubsPtr->tcl_SetLongObj)(objPtr, longValue);
+}
+
+/* Slot 232 */
+void
+Tcl_SetMaxBlockTime(timePtr)
+ Tcl_Time * timePtr;
+{
+ (tclStubsPtr->tcl_SetMaxBlockTime)(timePtr);
+}
+
+/* Slot 233 */
+void
+Tcl_SetObjErrorCode(interp, errorObjPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * errorObjPtr;
+{
+ (tclStubsPtr->tcl_SetObjErrorCode)(interp, errorObjPtr);
+}
+
+/* Slot 234 */
+void
+Tcl_SetObjLength(objPtr, length)
+ Tcl_Obj * objPtr;
+ int length;
+{
+ (tclStubsPtr->tcl_SetObjLength)(objPtr, length);
+}
+
+/* Slot 235 */
+void
+Tcl_SetObjResult(interp, resultObjPtr)
+ Tcl_Interp * interp;
+ Tcl_Obj * resultObjPtr;
+{
+ (tclStubsPtr->tcl_SetObjResult)(interp, resultObjPtr);
+}
+
+/* Slot 236 */
+void
+Tcl_SetPanicProc(panicProc)
+ Tcl_PanicProc * panicProc;
+{
+ (tclStubsPtr->tcl_SetPanicProc)(panicProc);
+}
+
+/* Slot 237 */
+int
+Tcl_SetRecursionLimit(interp, depth)
+ Tcl_Interp * interp;
+ int depth;
+{
+ return (tclStubsPtr->tcl_SetRecursionLimit)(interp, depth);
+}
+
+/* Slot 238 */
+void
+Tcl_SetResult(interp, string, freeProc)
+ Tcl_Interp * interp;
+ char * string;
+ Tcl_FreeProc * freeProc;
+{
+ (tclStubsPtr->tcl_SetResult)(interp, string, freeProc);
+}
+
+/* Slot 239 */
+int
+Tcl_SetServiceMode(mode)
+ int mode;
+{
+ return (tclStubsPtr->tcl_SetServiceMode)(mode);
+}
+
+/* Slot 240 */
+void
+Tcl_SetStdChannel(channel, type)
+ Tcl_Channel channel;
+ int type;
+{
+ (tclStubsPtr->tcl_SetStdChannel)(channel, type);
+}
+
+/* Slot 241 */
+void
+Tcl_SetStringObj(objPtr, bytes, length)
+ Tcl_Obj * objPtr;
+ char * bytes;
+ int length;
+{
+ (tclStubsPtr->tcl_SetStringObj)(objPtr, bytes, length);
+}
+
+/* Slot 242 */
+void
+Tcl_SetTimer(timePtr)
+ Tcl_Time * timePtr;
+{
+ (tclStubsPtr->tcl_SetTimer)(timePtr);
+}
+
+/* Slot 243 */
+char *
+Tcl_SetVar(interp, varName, newValue, flags)
+ Tcl_Interp * interp;
+ char * varName;
+ char * newValue;
+ int flags;
+{
+ return (tclStubsPtr->tcl_SetVar)(interp, varName, newValue, flags);
+}
+
+/* Slot 244 */
+char *
+Tcl_SetVar2(interp, part1, part2, newValue, flags)
+ Tcl_Interp * interp;
+ char * part1;
+ char * part2;
+ char * newValue;
+ int flags;
+{
+ return (tclStubsPtr->tcl_SetVar2)(interp, part1, part2, newValue, flags);
+}
+
+/* Slot 245 */
+char *
+Tcl_SignalId(sig)
+ int sig;
+{
+ return (tclStubsPtr->tcl_SignalId)(sig);
+}
+
+/* Slot 246 */
+char *
+Tcl_SignalMsg(sig)
+ int sig;
+{
+ return (tclStubsPtr->tcl_SignalMsg)(sig);
+}
+
+/* Slot 247 */
+void
+Tcl_Sleep(ms)
+ int ms;
+{
+ (tclStubsPtr->tcl_Sleep)(ms);
+}
+
+/* Slot 248 */
+void
+Tcl_SourceRCFile(interp)
+ Tcl_Interp * interp;
+{
+ (tclStubsPtr->tcl_SourceRCFile)(interp);
+}
+
+/* Slot 249 */
+int
+Tcl_SplitList(interp, list, argcPtr, argvPtr)
+ Tcl_Interp * interp;
+ char * list;
+ int * argcPtr;
+ char *** argvPtr;
+{
+ return (tclStubsPtr->tcl_SplitList)(interp, list, argcPtr, argvPtr);
+}
+
+/* Slot 250 */
+void
+Tcl_SplitPath(path, argcPtr, argvPtr)
+ char * path;
+ int * argcPtr;
+ char *** argvPtr;
+{
+ (tclStubsPtr->tcl_SplitPath)(path, argcPtr, argvPtr);
+}
+
+/* Slot 251 */
+void
+Tcl_StaticPackage(interp, pkgName, initProc, safeInitProc)
+ Tcl_Interp * interp;
+ char * pkgName;
+ Tcl_PackageInitProc * initProc;
+ Tcl_PackageInitProc * safeInitProc;
+{
+ (tclStubsPtr->tcl_StaticPackage)(interp, pkgName, initProc, safeInitProc);
+}
+
+/* Slot 252 */
+int
+Tcl_StringMatch(string, pattern)
+ char * string;
+ char * pattern;
+{
+ return (tclStubsPtr->tcl_StringMatch)(string, pattern);
+}
+
+/* Slot 253 */
+int
+Tcl_Tell(chan)
+ Tcl_Channel chan;
+{
+ return (tclStubsPtr->tcl_Tell)(chan);
+}
+
+/* Slot 254 */
+int
+Tcl_TraceVar(interp, varName, flags, proc, clientData)
+ Tcl_Interp * interp;
+ char * varName;
+ int flags;
+ Tcl_VarTraceProc * proc;
+ ClientData clientData;
+{
+ return (tclStubsPtr->tcl_TraceVar)(interp, varName, flags, proc, clientData);
+}
+
+/* Slot 255 */
+int
+Tcl_TraceVar2(interp, part1, part2, flags, proc, clientData)
+ Tcl_Interp * interp;
+ char * part1;
+ char * part2;
+ int flags;
+ Tcl_VarTraceProc * proc;
+ ClientData clientData;
+{
+ return (tclStubsPtr->tcl_TraceVar2)(interp, part1, part2, flags, proc, clientData);
+}
+
+/* Slot 256 */
+char *
+Tcl_TranslateFileName(interp, name, bufferPtr)
+ Tcl_Interp * interp;
+ char * name;
+ Tcl_DString * bufferPtr;
+{
+ return (tclStubsPtr->tcl_TranslateFileName)(interp, name, bufferPtr);
+}
+
+/* Slot 257 */
+int
+Tcl_Ungets(chan, str, len, atHead)
+ Tcl_Channel chan;
+ char * str;
+ int len;
+ int atHead;
+{
+ return (tclStubsPtr->tcl_Ungets)(chan, str, len, atHead);
+}
+
+/* Slot 258 */
+void
+Tcl_UnlinkVar(interp, varName)
+ Tcl_Interp * interp;
+ char * varName;
+{
+ (tclStubsPtr->tcl_UnlinkVar)(interp, varName);
+}
+
+/* Slot 259 */
+int
+Tcl_UnregisterChannel(interp, chan)
+ Tcl_Interp * interp;
+ Tcl_Channel chan;
+{
+ return (tclStubsPtr->tcl_UnregisterChannel)(interp, chan);
+}
+
+/* Slot 260 */
+int
+Tcl_UnsetVar(interp, varName, flags)
+ Tcl_Interp * interp;
+ char * varName;
+ int flags;
+{
+ return (tclStubsPtr->tcl_UnsetVar)(interp, varName, flags);
+}
+
+/* Slot 261 */
+int
+Tcl_UnsetVar2(interp, part1, part2, flags)
+ Tcl_Interp * interp;
+ char * part1;
+ char * part2;
+ int flags;
+{
+ return (tclStubsPtr->tcl_UnsetVar2)(interp, part1, part2, flags);
+}
+
+/* Slot 262 */
+void
+Tcl_UntraceVar(interp, varName, flags, proc, clientData)
+ Tcl_Interp * interp;
+ char * varName;
+ int flags;
+ Tcl_VarTraceProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_UntraceVar)(interp, varName, flags, proc, clientData);
+}
+
+/* Slot 263 */
+void
+Tcl_UntraceVar2(interp, part1, part2, flags, proc, clientData)
+ Tcl_Interp * interp;
+ char * part1;
+ char * part2;
+ int flags;
+ Tcl_VarTraceProc * proc;
+ ClientData clientData;
+{
+ (tclStubsPtr->tcl_UntraceVar2)(interp, part1, part2, flags, proc, clientData);
+}
+
+/* Slot 264 */
+void
+Tcl_UpdateLinkedVar(interp, varName)
+ Tcl_Interp * interp;
+ char * varName;
+{
+ (tclStubsPtr->tcl_UpdateLinkedVar)(interp, varName);
+}
+
+/* Slot 265 */
+int
+Tcl_UpVar(interp, frameName, varName, localName, flags)
+ Tcl_Interp * interp;
+ char * frameName;
+ char * varName;
+ char * localName;
+ int flags;
+{
+ return (tclStubsPtr->tcl_UpVar)(interp, frameName, varName, localName, flags);
+}
+
+/* Slot 266 */
+int
+Tcl_UpVar2(interp, frameName, part1, part2, localName, flags)
+ Tcl_Interp * interp;
+ char * frameName;
+ char * part1;
+ char * part2;
+ char * localName;
+ int flags;
+{
+ return (tclStubsPtr->tcl_UpVar2)(interp, frameName, part1, part2, localName, flags);
+}
+
+/* Slot 267 */
+void
+Tcl_ValidateAllMemory(file, line)
+ char * file;
+ int line;
+{
+ (tclStubsPtr->tcl_ValidateAllMemory)(file, line);
+}
+
+/* Slot 268 */
+int
+Tcl_VarEval TCL_VARARGS_DEF(Tcl_Interp *,interp)
+{
+ Tcl_Interp * var;
+ va_list argList;
+ int resultValue;
+
+ var = (Tcl_Interp *) TCL_VARARGS_START(Tcl_Interp *,interp,argList);
+
+ resultValue = (tclStubsPtr->tcl_VarEvalVA)(var, argList);
+ va_end(argList);
+return resultValue;
+}
+
+/* Slot 269 */
+int
+Tcl_VarEvalVA(interp, argList)
+ Tcl_Interp * interp;
+ va_list argList;
+{
+ return (tclStubsPtr->tcl_VarEvalVA)(interp, argList);
+}
+
+/* Slot 270 */
+ClientData
+Tcl_VarTraceInfo(interp, varName, flags, procPtr, prevClientData)
+ Tcl_Interp * interp;
+ char * varName;
+ int flags;
+ Tcl_VarTraceProc * procPtr;
+ ClientData prevClientData;
+{
+ return (tclStubsPtr->tcl_VarTraceInfo)(interp, varName, flags, procPtr, prevClientData);
+}
+
+/* Slot 271 */
+ClientData
+Tcl_VarTraceInfo2(interp, part1, part2, flags, procPtr, prevClientData)
+ Tcl_Interp * interp;
+ char * part1;
+ char * part2;
+ int flags;
+ Tcl_VarTraceProc * procPtr;
+ ClientData prevClientData;
+{
+ return (tclStubsPtr->tcl_VarTraceInfo2)(interp, part1, part2, flags, procPtr, prevClientData);
+}
+
+/* Slot 272 */
+int
+Tcl_WaitForEvent(timePtr)
+ Tcl_Time * timePtr;
+{
+ return (tclStubsPtr->tcl_WaitForEvent)(timePtr);
+}
+
+/* Slot 273 */
+Tcl_Pid
+Tcl_WaitPid(pid, statPtr, options)
+ Tcl_Pid pid;
+ int * statPtr;
+ int options;
+{
+ return (tclStubsPtr->tcl_WaitPid)(pid, statPtr, options);
+}
+
+/* Slot 274 */
+int
+Tcl_Write(chan, s, slen)
+ Tcl_Channel chan;
+ char * s;
+ int slen;
+{
+ return (tclStubsPtr->tcl_Write)(chan, s, slen);
+}
+
+/* Slot 275 */
+void
+Tcl_WrongNumArgs(interp, objc, objv, message)
+ Tcl_Interp * interp;
+ int objc;
+ Tcl_Obj *CONST objv[];
+ char * message;
+{
+ (tclStubsPtr->tcl_WrongNumArgs)(interp, objc, objv, message);
+}
+
+
+/* !END!: Do not edit above this line. */
diff --git a/generic/tclTest.c b/generic/tclTest.c
index 23dc31f..eea2e1f 100644
--- a/generic/tclTest.c
+++ b/generic/tclTest.c
@@ -12,7 +12,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclTest.c,v 1.8 1999/02/03 02:58:25 stanton Exp $
+ * RCS: @(#) $Id: tclTest.c,v 1.8.4.1 1999/03/05 20:18:07 stanton Exp $
*/
#define TCL_TEST
@@ -2716,6 +2716,7 @@ NoopObjCmd(unused, interp, objc, objv)
*/
/* ARGSUSED */
+static int
TestsetCmd(data, interp, argc, argv)
ClientData data; /* Additional flags for Get/SetVar2. */
register Tcl_Interp *interp; /* Current interpreter. */
diff --git a/tools/genStubs.tcl b/tools/genStubs.tcl
index 38b958f..b408456 100644
--- a/tools/genStubs.tcl
+++ b/tools/genStubs.tcl
@@ -8,7 +8,7 @@
# See the file "license.terms" for information on usage and redistribution
# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
#
-# RCS: @(#) $Id: genStubs.tcl,v 1.1 1999/03/03 00:38:45 stanton Exp $
+# RCS: @(#) $Id: genStubs.tcl,v 1.1.2.1 1999/03/05 20:18:07 stanton Exp $
namespace eval genStubs {
# libraryName --
@@ -791,7 +791,7 @@ proc genStubs::makeInit {name textVar} {
}
}
append text "\};\n\n"
- append text "extern ${capName}Stubs *${name}StubsPtr = &${name}Stubs;\n"
+ append text "${capName}Stubs *${name}StubsPtr = &${name}Stubs;\n"
return
}
diff --git a/unix/Makefile.in b/unix/Makefile.in
index d8ebc40..8a8e997 100644
--- a/unix/Makefile.in
+++ b/unix/Makefile.in
@@ -5,7 +5,7 @@
# "autoconf" program (constructs like "@foo@" will get replaced in the
# actual Makefile.
#
-# RCS: @(#) $Id: Makefile.in,v 1.17.4.2 1999/03/04 00:58:46 stanton Exp $
+# RCS: @(#) $Id: Makefile.in,v 1.17.4.3 1999/03/05 20:18:08 stanton Exp $
# Current Tcl version; used in various names.
@@ -173,6 +173,7 @@ TCL_SHLIB_CFLAGS = @TCL_SHLIB_CFLAGS@
# these definitions by hand.
SHLIB_LD = @SHLIB_LD@
+SHLIB_CFLAGS = @SHLIB_CFLAGS@
SHLIB_SUFFIX = @SHLIB_SUFFIX@
#SHLIB_SUFFIX =
@@ -225,17 +226,19 @@ CC = @CC@
CC_SWITCHES = ${CFLAGS} ${CFLAGS_WARNING} ${TCL_SHLIB_CFLAGS} \
-I${GENERIC_DIR} -I${SRC_DIR} \
${AC_FLAGS} ${MATH_FLAGS} ${GENERIC_FLAGS} ${PROTO_FLAGS} ${MEM_DEBUG_FLAGS} \
-${COMPILE_DEBUG_FLAGS} ${ENV_FLAGS} -DTCL_SHLIB_EXT=\"${SHLIB_SUFFIX}\" \
-$(STUB_FLAGS)
+${COMPILE_DEBUG_FLAGS} ${ENV_FLAGS} -DTCL_SHLIB_EXT=\"${SHLIB_SUFFIX}\"
+STUB_CC_SWITCHES = ${CFLAGS} ${CFLAGS_WARNING} ${SHLIB_CFLAGS} \
+-I${GENERIC_DIR} -I${SRC_DIR} \
+${AC_FLAGS} ${MATH_FLAGS} ${GENERIC_FLAGS} ${PROTO_FLAGS} ${MEM_DEBUG_FLAGS} \
+${COMPILE_DEBUG_FLAGS} ${ENV_FLAGS} -DTCL_SHLIB_EXT=\"${SHLIB_SUFFIX}\"
LIBS = @DL_LIBS@ @LIBS@ $(MATH_LIBS) -lc
DEPEND_SWITCHES = ${CFLAGS} -I${GENERIC_DIR} -I${SRC_DIR} \
${AC_FLAGS} ${MATH_FLAGS} \
${GENERIC_FLAGS} ${PROTO_FLAGS} ${MEM_DEBUG_FLAGS} \
--DTCL_SHLIB_EXT=\"${SHLIB_SUFFIX}\" \
-$(STUB_FLAGS)
+-DTCL_SHLIB_EXT=\"${SHLIB_SUFFIX}\" $(STUB_FLAGS)
TCLSH_OBJS = tclAppInit.o
@@ -245,7 +248,8 @@ TCLTEST_OBJS = tclTestInit.o tclTest.o tclTestObj.o tclTestProcBodyObj.o \
XTTEST_OBJS = tclTest.o tclTestObj.o tclUnixTest.o tclXtNotify.o \
tclXtTest.o xtTestInit.o
-GENERIC_OBJS = regexp.o tclAsync.o tclBasic.o tclBinary.o tclCkalloc.o \
+GENERIC_OBJS = regexp.o tclAlloc.o tclAsync.o tclBasic.o tclBinary.o \
+ tclCkalloc.o \
tclClock.o tclCmdAH.o tclCmdIL.o tclCmdMZ.o tclCompExpr.o \
tclCompile.o tclDate.o tclEnv.o tclEvent.o tclExecute.o \
tclFCmd.o tclFileName.o tclGet.o tclHash.o tclHistory.o \
@@ -261,6 +265,10 @@ STUB_LIB_OBJS = tclIntPlatStubs.o tclIntStubs.o tclPlatStubs.o tclStubLib.o \
OBJS = ${GENERIC_OBJS} ${UNIX_OBJS} ${NOTIFY_OBJS} ${COMPAT_OBJS} \
@DL_OBJS@
+TCL_DECLS = \
+ $(GENERIC_DIR)/tcl.decls \
+ $(GENERIC_DIR)/tclInt.decls
+
GENERIC_HDRS = \
$(GENERIC_DIR)/tclRegexp.h \
$(GENERIC_DIR)/tcl.h \
@@ -320,6 +328,7 @@ GENERIC_SRCS = \
$(GENERIC_DIR)/tclVar.c
STUB_SRCS = \
+ $(GENERIC_DIR)/tclCompileStubs.c \
$(GENERIC_DIR)/tclIntPlatStubs.c \
$(GENERIC_DIR)/tclIntStubs.c \
$(GENERIC_DIR)/tclPlatStubs.c \
@@ -436,7 +445,7 @@ topDirName:
gendate:
yacc -l $(GENERIC_DIR)/tclGetDate.y
sed -e 's/yy/TclDate/g' -e '/^#include <values.h>/d' \
- -e 's/SCCSID/RCS: @(#) $Id: Makefile.in,v 1.17.4.2 1999/03/04 00:58:46 stanton Exp $'
+ -e 's/SCCSID/RCS: @(#) $Id: Makefile.in,v 1.17.4.3 1999/03/05 20:18:08 stanton Exp $'
-e '/#ifdef __STDC__/,/#endif/d' -e '/TclDateerrlab:/d' \
-e '/TclDatenewstate:/d' -e '/#pragma/d' \
<y.tab.c >$(GENERIC_DIR)/tclDate.c
@@ -516,25 +525,11 @@ install-libraries:
else true; \
fi; \
done;
- @echo "Installing tcl.h"
- @$(INSTALL_DATA) $(GENERIC_DIR)/tcl.h $(INCLUDE_INSTALL_DIR)/tcl.h
- @if test "$(STUB_LIB_OBJ)" != "" ; then \
- echo "Installing tclStub.h"; \
- $(INSTALL_DATA) $(GENERIC_DIR)/tclStub.h \
- $(INCLUDE_INSTALL_DIR)/tclStub.h; \
- echo "Installing tclStubInls.h"; \
- $(INSTALL_DATA) $(GENERIC_DIR)/tclStubInls.h \
- $(INCLUDE_INSTALL_DIR)/tclStubInls.h; \
- echo "Installing tclStubLib.c"; \
- $(INSTALL_DATA) $(GENERIC_DIR)/tclStubLib.c \
- $(INCLUDE_INSTALL_DIR)/tclStubLib.c; \
- echo "Installing tclStubFns.c"; \
- $(INSTALL_DATA) $(GENERIC_DIR)/tclStubFns.c \
- $(INCLUDE_INSTALL_DIR)/tclStubFns.c; \
- echo "Installing tclpStubFns.c"; \
- $(INSTALL_DATA) $(GENERIC_DIR)/tclpStubFns.c \
- $(INCLUDE_INSTALL_DIR)/tclpStubFns.c; \
- fi
+ @for i in $(GENERIC_DIR)/tcl.h $(GENERIC_DIR)/tclDecls.h ; \
+ do \
+ echo "Installing $$i"; \
+ $(INSTALL_DATA) $$i $(INCLUDE_INSTALL_DIR); \
+ done;
@for i in $(TOP_DIR)/library/*.tcl $(TOP_DIR)/library/tclIndex $(UNIX_DIR)/tclAppInit.c $(UNIX_DIR)/ldAix; \
do \
echo "Installing $$i"; \
@@ -644,8 +639,11 @@ regexp.o: $(GENERIC_DIR)/regexp.c
tclAppInit.o: $(UNIX_DIR)/tclAppInit.c
$(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclAppInit.c
+# On unix we want to use the normal malloc/free implementation, so we
+# specifically set the USE_NATIVE_MALLOC flag.
+
tclAlloc.o: $(GENERIC_DIR)/tclAlloc.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclAlloc.c
+ $(CC) -c $(CC_SWITCHES) -DUSE_NATIVE_MALLOC $(GENERIC_DIR)/tclAlloc.c
tclAsync.o: $(GENERIC_DIR)/tclAsync.c
$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclAsync.c
@@ -710,12 +708,6 @@ tclIndexObj.o: $(GENERIC_DIR)/tclIndexObj.c
tclInterp.o: $(GENERIC_DIR)/tclInterp.c
$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclInterp.c
-tclIntPlatStubs.o: $(GENERIC_DIR)/tclIntPlatStubs.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIntPlatStubs.c
-
-tclIntStubs.o: $(GENERIC_DIR)/tclIntStubs.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIntStubs.c
-
tclIO.o: $(GENERIC_DIR)/tclIO.c
$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIO.c
@@ -788,9 +780,6 @@ tclPipe.o: $(GENERIC_DIR)/tclPipe.c
tclPkg.o: $(GENERIC_DIR)/tclPkg.c
$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclPkg.c
-tclPlatStubs.o: $(GENERIC_DIR)/tclPlatStubs.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclPlatStubs.c
-
tclPosixStr.o: $(GENERIC_DIR)/tclPosixStr.c
$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclPosixStr.c
@@ -806,11 +795,8 @@ tclResolve.o: $(GENERIC_DIR)/tclResolve.c
tclStringObj.o: $(GENERIC_DIR)/tclStringObj.c
$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclStringObj.c
-tclStubLib.o: $(GENERIC_DIR)/tclStubLib.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclStubLib.c
-
-tclStubs.o: $(GENERIC_DIR)/tclStubs.c
- $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclStubs.c
+tclStubInit.o: $(GENERIC_DIR)/tclStubInit.c
+ $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclStubInit.c
tclUtil.o: $(GENERIC_DIR)/tclUtil.c
$(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclUtil.c
@@ -894,10 +880,57 @@ tmpnam.o: $(COMPAT_DIR)/tmpnam.c
waitpid.o: $(COMPAT_DIR)/waitpid.c
$(CC) -c $(CC_SWITCHES) $(COMPAT_DIR)/waitpid.c
+
+# Stub library binaries, these must be compiled for use in a shared library
+# even though they will be placed in a static archive
+
+tclCompileStubs.o: $(GENERIC_DIR)/tclCompileStubs.c
+ $(CC) -c $(STUB_CC_SWITCHES) $(GENERIC_DIR)/tclCompileStubs.c
+
+tclIntPlatStubs.o: $(GENERIC_DIR)/tclIntPlatStubs.c
+ $(CC) -c $(STUB_CC_SWITCHES) $(GENERIC_DIR)/tclIntPlatStubs.c
+
+tclIntStubs.o: $(GENERIC_DIR)/tclIntStubs.c
+ $(CC) -c $(STUB_CC_SWITCHES) $(GENERIC_DIR)/tclIntStubs.c
+
+tclPlatStubs.o: $(GENERIC_DIR)/tclPlatStubs.c
+ $(CC) -c $(STUB_CC_SWITCHES) $(GENERIC_DIR)/tclPlatStubs.c
+
+tclStubLib.o: $(GENERIC_DIR)/tclStubLib.c
+ $(CC) -c $(STUB_CC_SWITCHES) $(GENERIC_DIR)/tclStubLib.c
+
+tclStubs.o: $(GENERIC_DIR)/tclStubs.c
+ $(CC) -c $(STUB_CC_SWITCHES) $(GENERIC_DIR)/tclStubs.c
+
.c.o:
$(CC) -c $(CC_SWITCHES) $<
#
+# Target to regenerate header files and stub files from the *.decls tables.
+#
+
+genstubs:
+ tclsh $(TOOL_DIR)/genStubs.tcl $(GENERIC_DIR) \
+ $(GENERIC_DIR)/tcl.decls $(GENERIC_DIR)/tclInt.decls
+
+#
+# Target to check that all exported functions have an entry in the stubs
+# tables.
+#
+
+checkstubs:
+ -@for i in `nm -p $(TCL_LIB_FILE) | awk '$$2 ~ /T/ { print $$3 }' \
+ | sort -n`; do \
+ match=1; \
+ for j in $(TCL_DECLS); do \
+ if [ `grep -c $$i $$j` -eq 0 ]; then \
+ match=0; \
+ fi; \
+ done; \
+ if [ $$match -eq 0 ]; then echo $$i; fi \
+ done
+
+#
# Target to check for proper usage of UCHAR macro.
#
diff --git a/unix/tclUnixFile.c b/unix/tclUnixFile.c
index aef2571..3cfa81a 100644
--- a/unix/tclUnixFile.c
+++ b/unix/tclUnixFile.c
@@ -9,7 +9,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclUnixFile.c,v 1.4.4.2 1999/03/04 01:00:48 stanton Exp $
+ * RCS: @(#) $Id: tclUnixFile.c,v 1.4.4.3 1999/03/05 20:18:08 stanton Exp $
*/
#include "tclInt.h"
@@ -556,7 +556,7 @@ TclpAccess(path, mode)
CONST char *path; /* Path of file to access. */
int mode; /* Permission setting. */
{
- return access(native, mode);
+ return access(path, mode);
}
/*
diff --git a/unix/tclUnixPort.h b/unix/tclUnixPort.h
index baea748..778b73a 100644
--- a/unix/tclUnixPort.h
+++ b/unix/tclUnixPort.h
@@ -19,7 +19,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclUnixPort.h,v 1.8.4.1 1999/03/04 00:55:51 stanton Exp $
+ * RCS: @(#) $Id: tclUnixPort.h,v 1.8.4.2 1999/03/05 20:18:09 stanton Exp $
*/
#ifndef _TCLUNIXPORT
@@ -457,4 +457,6 @@ extern double strtod();
#define TclpFinalize()
+#include "tclIntPlatDecls.h"
+
#endif /* _TCLUNIXPORT */
diff --git a/win/makefile.vc b/win/makefile.vc
index 2fdc05a..d25c330 100644
--- a/win/makefile.vc
+++ b/win/makefile.vc
@@ -6,7 +6,7 @@
# Copyright (c) 1995-1996 Sun Microsystems, Inc.
# Copyright (c) 1998-1999 by Scriptics Corporation.
#
-# RCS: @(#) $Id: makefile.vc,v 1.24.4.1 1999/03/03 00:38:46 stanton Exp $
+# RCS: @(#) $Id: makefile.vc,v 1.24.4.2 1999/03/05 20:18:09 stanton Exp $
# Does not depend on the presence of any environment variables in
# order to compile tcl; all needed information is derived from
@@ -53,14 +53,14 @@ NODEBUG = 1
# -DTCL_MEM_DEBUG Enables the debugging memory allocator.
# -DTCL_COMPILE_DEBUG Enables byte compilation logging.
# -DTCL_COMPILE_STATS Enables byte compilation statistics gathering.
-# -DUSE_NATIVEMALLOC Disables the Tcl memory allocator in favor
+# -DUSE_NATIVE_MALLOC Disables the Tcl memory allocator in favor
# of the native malloc implementation. This is
# needed when using Purify.
#
#DEBUGDEFINES = -DTCL_MEM_DEBUG
#DEBUGDEFINES = -DTCL_MEM_DEBUG -DTCL_COMPILE_DEBUG
#DEBUGDEFINES = -DTCL_MEM_DEBUG -DTCL_COMPILE_DEBUG -DTCL_COMPILE_STATS
-#DEBUGDEFINES = -DUSE_NATIVEMALLOC
+#DEBUGDEFINES = -DUSE_NATIVE_MALLOC
######################################################################
# Do not modify below this line
@@ -456,7 +456,7 @@ package ifneeded registry 1.0 "load [list [file join $$dir .. $(TCLREGDLLNAME)]]
# Regenerate the stubs files.
#
-stubs:
+genstubs:
tclsh$(VERSION) $(ROOT)\tools\genStubs.tcl $(GENERICDIR) \
$(GENERICDIR)\tcl.decls $(GENERICDIR)\tclInt.decls