diff options
Diffstat (limited to 'generic/tclInt.decls')
-rw-r--r-- | generic/tclInt.decls | 934 |
1 files changed, 542 insertions, 392 deletions
diff --git a/generic/tclInt.decls b/generic/tclInt.decls index b5fd668..c115d23 100644 --- a/generic/tclInt.decls +++ b/generic/tclInt.decls @@ -8,6 +8,7 @@ # # Copyright (c) 1998-1999 by Scriptics Corporation. # Copyright (c) 2001 by Kevin B. Kenny. All rights reserved. +# Copyright (c) 2007 Daniel A. Steffen <das@users.sourceforge.net> # # See the file "license.terms" for information on usage and redistribution # of this file, and for a DISCLAIMER OF ALL WARRANTIES. @@ -24,608 +25,620 @@ interface tclInt # be changed between versions to avoid gratuitous incompatibilities. # Replaced by Tcl_FSAccess in 8.4: -#declare 0 generic { -# int TclAccess(CONST char *path, int mode) +#declare 0 { +# int TclAccess(const char *path, int mode) #} -declare 1 generic { - int TclAccessDeleteProc(TclAccessProc_ *proc) -} -declare 2 generic { - int TclAccessInsertProc(TclAccessProc_ *proc) -} -declare 3 generic { +#declare 1 { +# int TclAccessDeleteProc(TclAccessProc_ *proc) +#} +#declare 2 { +# int TclAccessInsertProc(TclAccessProc_ *proc) +#} +declare 3 { void TclAllocateFreeObjects(void) } # Replaced by TclpChdir in 8.1: -# declare 4 generic { +# declare 4 { # int TclChdir(Tcl_Interp *interp, char *dirName) # } -declare 5 {unix win} { +declare 5 { int TclCleanupChildren(Tcl_Interp *interp, int numPids, Tcl_Pid *pidPtr, Tcl_Channel errorChan) } -declare 6 generic { +declare 6 { void TclCleanupCommand(Command *cmdPtr) } -declare 7 generic { - int TclCopyAndCollapse(int count, CONST char *src, char *dst) +declare 7 { + int TclCopyAndCollapse(int count, const char *src, char *dst) } -declare 8 generic { +declare 8 { 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 {unix win} { - int TclCreatePipeline(Tcl_Interp *interp, int argc, CONST char **argv, +declare 9 { + int TclCreatePipeline(Tcl_Interp *interp, int argc, const char **argv, Tcl_Pid **pidArrayPtr, TclFile *inPipePtr, TclFile *outPipePtr, TclFile *errFilePtr) } -declare 10 generic { +declare 10 { int TclCreateProc(Tcl_Interp *interp, Namespace *nsPtr, - CONST char *procName, + const char *procName, Tcl_Obj *argsPtr, Tcl_Obj *bodyPtr, Proc **procPtrPtr) } -declare 11 generic { +declare 11 { void TclDeleteCompiledLocalVars(Interp *iPtr, CallFrame *framePtr) } -declare 12 generic { - void TclDeleteVars(Interp *iPtr, Tcl_HashTable *tablePtr) +declare 12 { + void TclDeleteVars(Interp *iPtr, TclVarHashTable *tablePtr) } -declare 13 generic { - int TclDoGlob(Tcl_Interp *interp, char *separators, - Tcl_DString *headPtr, char *tail, Tcl_GlobTypeData *types) -} -declare 14 generic { - void TclDumpMemoryInfo(FILE *outFile) +# Removed in 8.5 +#declare 13 { +# int TclDoGlob(Tcl_Interp *interp, char *separators, +# Tcl_DString *headPtr, char *tail, Tcl_GlobTypeData *types) +#} +declare 14 { + int TclDumpMemoryInfo(ClientData clientData, int flags) } # Removed in 8.1: -# declare 15 generic { +# declare 15 { # void TclExpandParseValue(ParseValue *pvPtr, int needed) # } -declare 16 generic { +declare 16 { void TclExprFloatError(Tcl_Interp *interp, double value) } # Removed in 8.4 -#declare 17 generic { -# int TclFileAttrsCmd(Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) +#declare 17 { +# int TclFileAttrsCmd(Tcl_Interp *interp, int objc, Tcl_Obj *const objv[]) #} -#declare 18 generic { +#declare 18 { # int TclFileCopyCmd(Tcl_Interp *interp, int argc, char **argv) #} -#declare 19 generic { +#declare 19 { # int TclFileDeleteCmd(Tcl_Interp *interp, int argc, char **argv) #} -#declare 20 generic { +#declare 20 { # int TclFileMakeDirsCmd(Tcl_Interp *interp, int argc, char **argv) #} -#declare 21 generic { +#declare 21 { # int TclFileRenameCmd(Tcl_Interp *interp, int argc, char **argv) #} -declare 22 generic { - int TclFindElement(Tcl_Interp *interp, CONST char *listStr, - int listLength, CONST char **elementPtr, CONST char **nextPtr, +declare 22 { + int TclFindElement(Tcl_Interp *interp, const char *listStr, + int listLength, const char **elementPtr, const char **nextPtr, int *sizePtr, int *bracePtr) } -declare 23 generic { - Proc *TclFindProc(Interp *iPtr, CONST char *procName) +declare 23 { + Proc *TclFindProc(Interp *iPtr, const char *procName) } -declare 24 generic { +# Replaced with macro (see tclInt.h) in Tcl 8.5.0, restored in 8.5.10 +declare 24 { int TclFormatInt(char *buffer, long n) } -declare 25 generic { +declare 25 { void TclFreePackageInfo(Interp *iPtr) } # Removed in 8.1: -# declare 26 generic { +# declare 26 { # char *TclGetCwd(Tcl_Interp *interp) # } -declare 27 generic { - int TclGetDate(char *p, Tcl_WideInt now, long zone, - Tcl_WideInt *timePtr) -} -declare 28 generic { +# Removed in 8.5 +#declare 27 { +# int TclGetDate(char *p, unsigned long now, long zone, +# unsigned long *timePtr) +#} +declare 28 { Tcl_Channel TclpGetDefaultStdChannel(int type) } # Removed in 8.4b2: -#declare 29 generic { +#declare 29 { # Tcl_Obj *TclGetElementOfIndexedArray(Tcl_Interp *interp, # int localIndex, Tcl_Obj *elemPtr, int flags) #} -# Replaced by char *TclGetEnv(CONST char *name, Tcl_DString *valuePtr) in 8.1: -# declare 30 generic { -# char *TclGetEnv(CONST char *name) +# Replaced by char *TclGetEnv(const char *name, Tcl_DString *valuePtr) in 8.1: +# declare 30 { +# char *TclGetEnv(const char *name) # } -declare 31 generic { - char *TclGetExtension(char *name) +declare 31 { + const char *TclGetExtension(const char *name) } -declare 32 generic { - int TclGetFrame(Tcl_Interp *interp, CONST char *str, +declare 32 { + int TclGetFrame(Tcl_Interp *interp, const char *str, CallFrame **framePtrPtr) } -declare 33 generic { - TclCmdProcType TclGetInterpProc(void) -} -declare 34 generic { +# Removed in Tcl 8.5 +#declare 33 { +# TclCmdProcType TclGetInterpProc(void) +#} +declare 34 { int TclGetIntForIndex(Tcl_Interp *interp, Tcl_Obj *objPtr, int endValue, int *indexPtr) } # Removed in 8.4b2: -#declare 35 generic { +#declare 35 { # Tcl_Obj *TclGetIndexedScalar(Tcl_Interp *interp, int localIndex, # int flags) #} -declare 36 generic { - int TclGetLong(Tcl_Interp *interp, CONST char *str, long *longPtr) +declare 36 { + int TclGetLong(Tcl_Interp *interp, const char *str, long *longPtr) } -declare 37 generic { +declare 37 { int TclGetLoadedPackages(Tcl_Interp *interp, char *targetName) } -declare 38 generic { - int TclGetNamespaceForQualName(Tcl_Interp *interp, CONST char *qualName, +declare 38 { + int TclGetNamespaceForQualName(Tcl_Interp *interp, const char *qualName, Namespace *cxtNsPtr, int flags, Namespace **nsPtrPtr, Namespace **altNsPtrPtr, Namespace **actualCxtPtrPtr, - CONST char **simpleNamePtr) + const char **simpleNamePtr) } -declare 39 generic { +declare 39 { TclObjCmdProcType TclGetObjInterpProc(void) } -declare 40 generic { - int TclGetOpenMode(Tcl_Interp *interp, CONST char *str, int *seekFlagPtr) +declare 40 { + int TclGetOpenMode(Tcl_Interp *interp, const char *str, int *seekFlagPtr) } -declare 41 generic { +declare 41 { Tcl_Command TclGetOriginalCommand(Tcl_Command command) } -declare 42 generic { - char *TclpGetUserHome(CONST char *name, Tcl_DString *bufferPtr) +declare 42 { + char *TclpGetUserHome(const char *name, Tcl_DString *bufferPtr) } -declare 43 generic { - int TclGlobalInvoke(Tcl_Interp *interp, int argc, CONST84 char **argv, int flags) -} -declare 44 generic { - int TclGuessPackageName(CONST char *fileName, Tcl_DString *bufPtr) +# Removed in Tcl 8.5a2 +#declare 43 { +# int TclGlobalInvoke(Tcl_Interp *interp, int argc, const char **argv, +# int flags) +#} +declare 44 { + int TclGuessPackageName(const char *fileName, Tcl_DString *bufPtr) } -declare 45 generic { +declare 45 { int TclHideUnsafeCommands(Tcl_Interp *interp) } -declare 46 generic { +declare 46 { int TclInExit(void) } # Removed in 8.4b2: -#declare 47 generic { +#declare 47 { # Tcl_Obj *TclIncrElementOfIndexedArray(Tcl_Interp *interp, # int localIndex, Tcl_Obj *elemPtr, long incrAmount) #} # Removed in 8.4b2: -#declare 48 generic { +#declare 48 { # Tcl_Obj *TclIncrIndexedScalar(Tcl_Interp *interp, int localIndex, # long incrAmount) #} -declare 49 generic { - Tcl_Obj *TclIncrVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr, - Tcl_Obj *part2Ptr, long incrAmount, int part1NotParsed) -} -declare 50 generic { +#declare 49 { +# Tcl_Obj *TclIncrVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr, +# Tcl_Obj *part2Ptr, long incrAmount, int part1NotParsed) +#} +declare 50 { void TclInitCompiledLocals(Tcl_Interp *interp, CallFrame *framePtr, Namespace *nsPtr) } -declare 51 generic { +declare 51 { int TclInterpInit(Tcl_Interp *interp) } -declare 52 generic { - int TclInvoke(Tcl_Interp *interp, int argc, CONST84 char **argv, int flags) -} -declare 53 generic { +# Removed in Tcl 8.5a2 +#declare 52 { +# int TclInvoke(Tcl_Interp *interp, int argc, const char **argv, +# int flags) +#} +declare 53 { int TclInvokeObjectCommand(ClientData clientData, Tcl_Interp *interp, int argc, CONST84 char **argv) } -declare 54 generic { +declare 54 { int TclInvokeStringCommand(ClientData clientData, Tcl_Interp *interp, - int objc, Tcl_Obj *CONST objv[]) + int objc, Tcl_Obj *const objv[]) } -declare 55 generic { +declare 55 { Proc *TclIsProc(Command *cmdPtr) } # Replaced with TclpLoadFile in 8.1: -# declare 56 generic { +# declare 56 { # int TclLoadFile(Tcl_Interp *interp, char *fileName, char *sym1, # char *sym2, Tcl_PackageInitProc **proc1Ptr, # Tcl_PackageInitProc **proc2Ptr) # } # Signature changed to take a length in 8.1: -# declare 57 generic { +# declare 57 { # int TclLooksLikeInt(char *p) # } -declare 58 generic { - Var *TclLookupVar(Tcl_Interp *interp, CONST char *part1, CONST char *part2, - int flags, CONST char *msg, int createPart1, int createPart2, +declare 58 { + Var *TclLookupVar(Tcl_Interp *interp, const char *part1, const char *part2, + int flags, const char *msg, int createPart1, int createPart2, Var **arrayPtrPtr) } # Replaced by Tcl_FSMatchInDirectory in 8.4 -#declare 59 generic { +#declare 59 { # int TclpMatchFiles(Tcl_Interp *interp, char *separators, # Tcl_DString *dirPtr, char *pattern, char *tail) #} -declare 60 generic { - int TclNeedSpace(CONST char *start, CONST char *end) +declare 60 { + int TclNeedSpace(const char *start, const char *end) } -declare 61 generic { +declare 61 { Tcl_Obj *TclNewProcBodyObj(Proc *procPtr) } -declare 62 generic { +declare 62 { int TclObjCommandComplete(Tcl_Obj *cmdPtr) } -declare 63 generic { +declare 63 { int TclObjInterpProc(ClientData clientData, Tcl_Interp *interp, - int objc, Tcl_Obj *CONST objv[]) + int objc, Tcl_Obj *const objv[]) } -declare 64 generic { - int TclObjInvoke(Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[], +declare 64 { + int TclObjInvoke(Tcl_Interp *interp, int objc, Tcl_Obj *const objv[], int flags) } -declare 65 generic { - int TclObjInvokeGlobal(Tcl_Interp *interp, int objc, - Tcl_Obj *CONST objv[], int flags) -} -declare 66 generic { - int TclOpenFileChannelDeleteProc(TclOpenFileChannelProc_ *proc) -} -declare 67 generic { - int TclOpenFileChannelInsertProc(TclOpenFileChannelProc_ *proc) -} +# Removed in Tcl 8.5a2 +#declare 65 { +# int TclObjInvokeGlobal(Tcl_Interp *interp, int objc, +# Tcl_Obj *const objv[], int flags) +#} +#declare 66 { +# int TclOpenFileChannelDeleteProc(TclOpenFileChannelProc_ *proc) +#} +#declare 67 { +# int TclOpenFileChannelInsertProc(TclOpenFileChannelProc_ *proc) +#} # Replaced by Tcl_FSAccess in 8.4: -#declare 68 generic { -# int TclpAccess(CONST char *path, int mode) +#declare 68 { +# int TclpAccess(const char *path, int mode) #} -declare 69 generic { +declare 69 { char *TclpAlloc(unsigned int size) } -#declare 70 generic { -# int TclpCopyFile(CONST char *source, CONST char *dest) +#declare 70 { +# int TclpCopyFile(const char *source, const char *dest) #} -#declare 71 generic { -# int TclpCopyDirectory(CONST char *source, CONST char *dest, +#declare 71 { +# int TclpCopyDirectory(const char *source, const char *dest, # Tcl_DString *errorPtr) #} -#declare 72 generic { -# int TclpCreateDirectory(CONST char *path) +#declare 72 { +# int TclpCreateDirectory(const char *path) #} -#declare 73 generic { -# int TclpDeleteFile(CONST char *path) +#declare 73 { +# int TclpDeleteFile(const char *path) #} -declare 74 generic { +declare 74 { void TclpFree(char *ptr) } -declare 75 generic { +declare 75 { unsigned long TclpGetClicks(void) } -declare 76 generic { +declare 76 { unsigned long TclpGetSeconds(void) } # deprecated -declare 77 generic { +declare 77 { void TclpGetTime(Tcl_Time *time) } -declare 78 generic { - int TclpGetTimeZone(Tcl_WideInt time) +declare 78 { + int TclpGetTimeZone(unsigned long time) } # Replaced by Tcl_FSListVolumes in 8.4: -#declare 79 generic { +#declare 79 { # int TclpListVolumes(Tcl_Interp *interp) #} # Replaced by Tcl_FSOpenFileChannel in 8.4: -#declare 80 generic { +#declare 80 { # Tcl_Channel TclpOpenFileChannel(Tcl_Interp *interp, char *fileName, # char *modeString, int permissions) #} -declare 81 generic { +declare 81 { char *TclpRealloc(char *ptr, unsigned int size) } -#declare 82 generic { -# int TclpRemoveDirectory(CONST char *path, int recursive, +#declare 82 { +# int TclpRemoveDirectory(const char *path, int recursive, # Tcl_DString *errorPtr) #} -#declare 83 generic { -# int TclpRenameFile(CONST char *source, CONST char *dest) +#declare 83 { +# int TclpRenameFile(const char *source, const char *dest) #} # Removed in 8.1: -# declare 84 generic { +# declare 84 { # int TclParseBraces(Tcl_Interp *interp, char *str, char **termPtr, # ParseValue *pvPtr) # } -# declare 85 generic { +# declare 85 { # int TclParseNestedCmd(Tcl_Interp *interp, char *str, int flags, # char **termPtr, ParseValue *pvPtr) # } -# declare 86 generic { +# declare 86 { # int TclParseQuotes(Tcl_Interp *interp, char *str, int termChar, # int flags, char **termPtr, ParseValue *pvPtr) # } -# declare 87 generic { +# declare 87 { # void TclPlatformInit(Tcl_Interp *interp) # } -declare 88 generic { +declare 88 { char *TclPrecTraceProc(ClientData clientData, Tcl_Interp *interp, - CONST char *name1, CONST char *name2, int flags) + const char *name1, const char *name2, int flags) } -declare 89 generic { +declare 89 { int TclPreventAliasLoop(Tcl_Interp *interp, Tcl_Interp *cmdInterp, Tcl_Command cmd) } # Removed in 8.1 (only available if compiled with TCL_COMPILE_DEBUG): -# declare 90 generic { +# declare 90 { # void TclPrintByteCodeObj(Tcl_Interp *interp, Tcl_Obj *objPtr) # } -declare 91 generic { +declare 91 { void TclProcCleanupProc(Proc *procPtr) } -declare 92 generic { +declare 92 { int TclProcCompileProc(Tcl_Interp *interp, Proc *procPtr, - Tcl_Obj *bodyPtr, Namespace *nsPtr, CONST char *description, - CONST char *procName) + Tcl_Obj *bodyPtr, Namespace *nsPtr, const char *description, + const char *procName) } -declare 93 generic { +declare 93 { void TclProcDeleteProc(ClientData clientData) } -declare 94 generic { - int TclProcInterpProc(ClientData clientData, Tcl_Interp *interp, - int argc, CONST84 char **argv) -} +# Removed in Tcl 8.5: +#declare 94 { +# int TclProcInterpProc(ClientData clientData, Tcl_Interp *interp, +# int argc, const char **argv) +#} # Replaced by Tcl_FSStat in 8.4: -#declare 95 generic { -# int TclpStat(CONST char *path, Tcl_StatBuf *buf) +#declare 95 { +# int TclpStat(const char *path, Tcl_StatBuf *buf) #} -declare 96 generic { - int TclRenameCommand(Tcl_Interp *interp, char *oldName, char *newName) +declare 96 { + int TclRenameCommand(Tcl_Interp *interp, const char *oldName, + const char *newName) } -declare 97 generic { +declare 97 { void TclResetShadowedCmdRefs(Tcl_Interp *interp, Command *newCmdPtr) } -declare 98 generic { +declare 98 { int TclServiceIdle(void) } # Removed in 8.4b2: -#declare 99 generic { +#declare 99 { # Tcl_Obj *TclSetElementOfIndexedArray(Tcl_Interp *interp, int localIndex, # Tcl_Obj *elemPtr, Tcl_Obj *objPtr, int flags) #} # Removed in 8.4b2: -#declare 100 generic { +#declare 100 { # Tcl_Obj *TclSetIndexedScalar(Tcl_Interp *interp, int localIndex, # Tcl_Obj *objPtr, int flags) #} -declare 101 generic { +declare 101 { char *TclSetPreInitScript(char *string) } -declare 102 generic { +declare 102 { void TclSetupEnv(Tcl_Interp *interp) } -declare 103 generic { - int TclSockGetPort(Tcl_Interp *interp, char *str, char *proto, +declare 103 { + int TclSockGetPort(Tcl_Interp *interp, const char *str, CONST char *proto, int *portPtr) } -declare 104 {unix win} { +declare 104 { int TclSockMinimumBuffers(int sock, int size) } # Replaced by Tcl_FSStat in 8.4: -#declare 105 generic { -# int TclStat(CONST char *path, Tcl_StatBuf *buf) +#declare 105 { +# int TclStat(const char *path, Tcl_StatBuf *buf) #} -declare 106 generic { - int TclStatDeleteProc(TclStatProc_ *proc) -} -declare 107 generic { - int TclStatInsertProc(TclStatProc_ *proc) -} -declare 108 generic { +#declare 106 { +# int TclStatDeleteProc(TclStatProc_ *proc) +#} +#declare 107 { +# int TclStatInsertProc(TclStatProc_ *proc) +#} +declare 108 { void TclTeardownNamespace(Namespace *nsPtr) } -declare 109 generic { +declare 109 { int TclUpdateReturnInfo(Interp *iPtr) } # Removed in 8.1: -# declare 110 generic { +# declare 110 { # 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 111 generic { - void Tcl_AddInterpResolvers(Tcl_Interp *interp, CONST char *name, +declare 111 { + void Tcl_AddInterpResolvers(Tcl_Interp *interp, const char *name, Tcl_ResolveCmdProc *cmdProc, Tcl_ResolveVarProc *varProc, Tcl_ResolveCompiledVarProc *compiledVarProc) } -declare 112 generic { +declare 112 { int Tcl_AppendExportList(Tcl_Interp *interp, Tcl_Namespace *nsPtr, Tcl_Obj *objPtr) } -declare 113 generic { - Tcl_Namespace *Tcl_CreateNamespace(Tcl_Interp *interp, CONST char *name, +declare 113 { + Tcl_Namespace *Tcl_CreateNamespace(Tcl_Interp *interp, const char *name, ClientData clientData, Tcl_NamespaceDeleteProc *deleteProc) } -declare 114 generic { +declare 114 { void Tcl_DeleteNamespace(Tcl_Namespace *nsPtr) } -declare 115 generic { +declare 115 { int Tcl_Export(Tcl_Interp *interp, Tcl_Namespace *nsPtr, - CONST char *pattern, int resetListFirst) + const char *pattern, int resetListFirst) } -declare 116 generic { - Tcl_Command Tcl_FindCommand(Tcl_Interp *interp, CONST char *name, +declare 116 { + Tcl_Command Tcl_FindCommand(Tcl_Interp *interp, const char *name, Tcl_Namespace *contextNsPtr, int flags) } -declare 117 generic { - Tcl_Namespace *Tcl_FindNamespace(Tcl_Interp *interp, CONST char *name, +declare 117 { + Tcl_Namespace *Tcl_FindNamespace(Tcl_Interp *interp, const char *name, Tcl_Namespace *contextNsPtr, int flags) } -declare 118 generic { - int Tcl_GetInterpResolvers(Tcl_Interp *interp, CONST char *name, +declare 118 { + int Tcl_GetInterpResolvers(Tcl_Interp *interp, const char *name, Tcl_ResolverInfo *resInfo) } -declare 119 generic { +declare 119 { int Tcl_GetNamespaceResolvers(Tcl_Namespace *namespacePtr, Tcl_ResolverInfo *resInfo) } -declare 120 generic { - Tcl_Var Tcl_FindNamespaceVar(Tcl_Interp *interp, CONST char *name, +declare 120 { + Tcl_Var Tcl_FindNamespaceVar(Tcl_Interp *interp, const char *name, Tcl_Namespace *contextNsPtr, int flags) } -declare 121 generic { +declare 121 { int Tcl_ForgetImport(Tcl_Interp *interp, Tcl_Namespace *nsPtr, - CONST char *pattern) + const char *pattern) } -declare 122 generic { +declare 122 { Tcl_Command Tcl_GetCommandFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr) } -declare 123 generic { +declare 123 { void Tcl_GetCommandFullName(Tcl_Interp *interp, Tcl_Command command, Tcl_Obj *objPtr) } -declare 124 generic { +declare 124 { Tcl_Namespace *Tcl_GetCurrentNamespace(Tcl_Interp *interp) } -declare 125 generic { +declare 125 { Tcl_Namespace *Tcl_GetGlobalNamespace(Tcl_Interp *interp) } -declare 126 generic { +declare 126 { void Tcl_GetVariableFullName(Tcl_Interp *interp, Tcl_Var variable, Tcl_Obj *objPtr) } -declare 127 generic { +declare 127 { int Tcl_Import(Tcl_Interp *interp, Tcl_Namespace *nsPtr, - CONST char *pattern, int allowOverwrite) + const char *pattern, int allowOverwrite) } -declare 128 generic { +declare 128 { void Tcl_PopCallFrame(Tcl_Interp *interp) } -declare 129 generic { +declare 129 { int Tcl_PushCallFrame(Tcl_Interp *interp, Tcl_CallFrame *framePtr, Tcl_Namespace *nsPtr, int isProcCallFrame) } -declare 130 generic { - int Tcl_RemoveInterpResolvers(Tcl_Interp *interp, CONST char *name) +declare 130 { + int Tcl_RemoveInterpResolvers(Tcl_Interp *interp, const char *name) } -declare 131 generic { +declare 131 { void Tcl_SetNamespaceResolvers(Tcl_Namespace *namespacePtr, Tcl_ResolveCmdProc *cmdProc, Tcl_ResolveVarProc *varProc, Tcl_ResolveCompiledVarProc *compiledVarProc) } -declare 132 generic { +declare 132 { int TclpHasSockets(Tcl_Interp *interp) } -declare 133 generic { - struct tm *TclpGetDate(TclpTime_t time, int useGMT) -} -declare 134 generic { - size_t TclpStrftime(char *s, size_t maxsize, CONST char *format, - CONST struct tm *t, int useGMT) -} -declare 135 generic { - int TclpCheckStackSpace(void) +declare 133 { + struct tm *TclpGetDate(const time_t *time, int useGMT) } +# Removed in 8.5 +#declare 134 { +# size_t TclpStrftime(char *s, size_t maxsize, const char *format, +# const struct tm *t, int useGMT) +#} +#declare 135 { +# int TclpCheckStackSpace(void) +#} # Added in 8.1: -#declare 137 generic { -# int TclpChdir(CONST char *dirName) +#declare 137 { +# int TclpChdir(const char *dirName) #} -declare 138 generic { - CONST84_RETURN char *TclGetEnv(CONST char *name, Tcl_DString *valuePtr) +declare 138 { + CONST84_RETURN char *TclGetEnv(const char *name, Tcl_DString *valuePtr) } -#declare 139 generic { +#declare 139 { # int TclpLoadFile(Tcl_Interp *interp, char *fileName, char *sym1, # char *sym2, Tcl_PackageInitProc **proc1Ptr, # Tcl_PackageInitProc **proc2Ptr, ClientData *clientDataPtr) #} -declare 140 generic { - int TclLooksLikeInt(CONST char *bytes, int length) -} +#declare 140 { +# int TclLooksLikeInt(const char *bytes, int length) +#} # This is used by TclX, but should otherwise be considered private -declare 141 generic { +declare 141 { CONST84_RETURN char *TclpGetCwd(Tcl_Interp *interp, Tcl_DString *cwdPtr) } -declare 142 generic { +declare 142 { int TclSetByteCodeFromAny(Tcl_Interp *interp, Tcl_Obj *objPtr, CompileHookProc *hookProc, ClientData clientData) } -declare 143 generic { +declare 143 { int TclAddLiteralObj(struct CompileEnv *envPtr, Tcl_Obj *objPtr, LiteralEntry **litPtrPtr) } -declare 144 generic { +declare 144 { void TclHideLiteral(Tcl_Interp *interp, struct CompileEnv *envPtr, int index) } -declare 145 generic { +declare 145 { struct AuxDataType *TclGetAuxDataType(char *typeName) } -declare 146 generic { - TclHandle TclHandleCreate(VOID *ptr) +declare 146 { + TclHandle TclHandleCreate(void *ptr) } -declare 147 generic { +declare 147 { void TclHandleFree(TclHandle handle) } -declare 148 generic { +declare 148 { TclHandle TclHandlePreserve(TclHandle handle) } -declare 149 generic { +declare 149 { void TclHandleRelease(TclHandle handle) } # Added for Tcl 8.2 -declare 150 generic { +declare 150 { int TclRegAbout(Tcl_Interp *interp, Tcl_RegExp re) } -declare 151 generic { +declare 151 { void TclRegExpRangeUniChar(Tcl_RegExp re, int index, int *startPtr, int *endPtr) } -declare 152 generic { +declare 152 { void TclSetLibraryPath(Tcl_Obj *pathPtr) } -declare 153 generic { +declare 153 { Tcl_Obj *TclGetLibraryPath(void) } # moved to tclTest.c (static) in 8.3.2/8.4a2 -#declare 154 generic { +#declare 154 { # int TclTestChannelCmd(ClientData clientData, # Tcl_Interp *interp, int argc, char **argv) #} -#declare 155 generic { +#declare 155 { # int TclTestChannelEventCmd(ClientData clientData, # Tcl_Interp *interp, int argc, char **argv) #} -declare 156 generic { - void TclRegError(Tcl_Interp *interp, CONST char *msg, +declare 156 { + void TclRegError(Tcl_Interp *interp, const char *msg, int status) } -declare 157 generic { - Var *TclVarTraceExists(Tcl_Interp *interp, CONST char *varName) +declare 157 { + Var *TclVarTraceExists(Tcl_Interp *interp, const char *varName) } -declare 158 generic { - void TclSetStartupScriptFileName(CONST char *filename) +declare 158 { + void TclSetStartupScriptFileName(const char *filename) } -declare 159 generic { +declare 159 { CONST84_RETURN char *TclGetStartupScriptFileName(void) } -#declare 160 generic { +#declare 160 { # int TclpMatchFilesTypes(Tcl_Interp *interp, char *separators, # Tcl_DString *dirPtr, char *pattern, char *tail, # GlobTypeData *types) #} # new in 8.3.2/8.4a2 -declare 161 generic { +declare 161 { int TclChannelTransform(Tcl_Interp *interp, Tcl_Channel chan, Tcl_Obj *cmdObjPtr) } -declare 162 generic { +declare 162 { void TclChannelEventScriptInvoker(ClientData clientData, int flags) } @@ -634,192 +647,309 @@ declare 162 generic { # "tclInt.h". It is described in "tclCompile.h". Use a cast to the # correct type when calling this procedure. -declare 163 generic { - VOID *TclGetInstructionTable(void) +declare 163 { + void *TclGetInstructionTable(void) } # ALERT: The argument of 'TclExpandCodeArray' is actually a # "CompileEnv*" but we do not want to describe this structure in # "tclInt.h". It is described in "tclCompile.h". -declare 164 generic { - void TclExpandCodeArray(VOID *envPtr) +declare 164 { + void TclExpandCodeArray(void *envPtr) } # These functions are vfs aware, but are generally only useful internally. -declare 165 generic { +declare 165 { void TclpSetInitialEncodings(void) } # New function due to TIP #33 -declare 166 generic { +declare 166 { int TclListObjSetElement(Tcl_Interp *interp, Tcl_Obj *listPtr, int index, Tcl_Obj *valuePtr) } # VFS-aware versions of Tcl*StartupScriptFileName (158 and 159 above) -declare 167 generic { +declare 167 { void TclSetStartupScriptPath(Tcl_Obj *pathPtr) } -declare 168 generic { +declare 168 { Tcl_Obj *TclGetStartupScriptPath(void) } # variant of Tcl_UtfNCmp that takes n as bytes, not chars -declare 169 generic { - int TclpUtfNcmp2(CONST char *s1, CONST char *s2, unsigned long n) +declare 169 { + int TclpUtfNcmp2(const char *s1, const char *s2, unsigned long n) } -declare 170 generic { - int TclCheckInterpTraces(Tcl_Interp *interp, CONST char *command, +declare 170 { + int TclCheckInterpTraces(Tcl_Interp *interp, const char *command, int numChars, Command *cmdPtr, int result, int traceFlags, - int objc, Tcl_Obj *CONST objv[]) + int objc, Tcl_Obj *const objv[]) } -declare 171 generic { - int TclCheckExecutionTraces (Tcl_Interp *interp, CONST char *command, +declare 171 { + int TclCheckExecutionTraces(Tcl_Interp *interp, const char *command, int numChars, Command *cmdPtr, int result, int traceFlags, - int objc, Tcl_Obj *CONST objv[]) + int objc, Tcl_Obj *const objv[]) } -declare 172 generic { +declare 172 { int TclInThreadExit(void) } # added for 8.4.2 -declare 173 generic { - int TclUniCharMatch(CONST Tcl_UniChar *string, int strLen, \ - CONST Tcl_UniChar *pattern, int ptnLen, int nocase) +declare 173 { + int TclUniCharMatch(const Tcl_UniChar *string, int strLen, + const Tcl_UniChar *pattern, int ptnLen, int flags) } -# TclpGmtime and TclpLocaltime promoted to the generic interface from unix +# added for 8.4.3 -declare 182 generic { - struct tm *TclpLocaltime(TclpTime_t_CONST clock) +#declare 174 { +# Tcl_Obj *TclIncrWideVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr, +# Tcl_Obj *part2Ptr, Tcl_WideInt wideIncrAmount, int part1NotParsed) +#} + +# Factoring out of trace code + +declare 175 { + int TclCallVarTraces(Interp *iPtr, Var *arrayPtr, Var *varPtr, + const char *part1, const char *part2, int flags, int leaveErrMsg) +} +declare 176 { + void TclCleanupVar(Var *varPtr, Var *arrayPtr) +} +declare 177 { + void TclVarErrMsg(Tcl_Interp *interp, const char *part1, const char *part2, + const char *operation, const char *reason) +} +declare 178 { + void Tcl_SetStartupScript(Tcl_Obj *pathPtr, const char* encodingName) } -declare 183 generic { - struct tm *TclpGmtime(TclpTime_t_CONST clock) +declare 179 { + Tcl_Obj *Tcl_GetStartupScript(const char **encodingNamePtr) } -declare 199 generic { - int TclMatchIsTrivial(CONST char *pattern) +# REMOVED +# Allocate lists without copying arrays +# declare 180 { +# Tcl_Obj *TclNewListObjDirect(int objc, Tcl_Obj **objv) +# } +#declare 181 { +# Tcl_Obj *TclDbNewListObjDirect(int objc, Tcl_Obj **objv, +# const char *file, int line) +#} + +# TclpGmtime and TclpLocaltime promoted to the generic interface from unix + +declare 182 { + struct tm *TclpLocaltime(const time_t *clock) +} +declare 183 { + struct tm *TclpGmtime(const time_t *clock) } -############################################################################## +# For the new "Thread Storage" subsystem. -# Define the platform specific internal Tcl interface. These functions are -# only available on the designated platform. +### REMOVED on grounds it should never have been exposed. All these +### functions are now either static in tclThreadStorage.c or +### MODULE_SCOPE. +# declare 184 { +# void TclThreadStorageLockInit(void) +# } +# declare 185 { +# void TclThreadStorageLock(void) +# } +# declare 186 { +# void TclThreadStorageUnlock(void) +# } +# declare 187 { +# void TclThreadStoragePrint(FILE *outFile, int flags) +# } +# declare 188 { +# Tcl_HashTable *TclThreadStorageGetHashTable(Tcl_ThreadId id) +# } +# declare 189 { +# Tcl_HashTable *TclThreadStorageInit(Tcl_ThreadId id, void *reserved) +# } +# declare 190 { +# void TclThreadStorageDataKeyInit(Tcl_ThreadDataKey *keyPtr) +# } +# declare 191 { +# void *TclThreadStorageDataKeyGet(Tcl_ThreadDataKey *keyPtr) +# } +# declare 192 { +# void TclThreadStorageDataKeySet(Tcl_ThreadDataKey *keyPtr, void *data) +# } +# declare 193 { +# void TclFinalizeThreadStorageThread(Tcl_ThreadId id) +# } +# declare 194 { +# void TclFinalizeThreadStorage(void) +# } +# declare 195 { +# void TclFinalizeThreadStorageData(Tcl_ThreadDataKey *keyPtr) +# } +# declare 196 { +# void TclFinalizeThreadStorageDataKey(Tcl_ThreadDataKey *keyPtr) +# } -interface tclIntPlat +# +# Added in tcl8.5a5 for compiler/executor experimentation. +# Disabled in Tcl 8.5.1; experiments terminated. :/ +# +#declare 197 { +# int TclCompEvalObj(Tcl_Interp *interp, Tcl_Obj *objPtr, +# const CmdFrame *invoker, int word) +#} +declare 198 { + int TclObjGetFrame(Tcl_Interp *interp, Tcl_Obj *objPtr, + CallFrame **framePtrPtr) +} -######################## -# Mac specific internals +#declare 199 { +# int TclMatchIsTrivial(const char *pattern) +#} -declare 0 mac { - VOID *TclpSysAlloc(long size, int isBin) +# 200-208 exported for use by the test suite [Bug 1054748] +declare 200 { + int TclpObjRemoveDirectory(Tcl_Obj *pathPtr, int recursive, + Tcl_Obj **errorPtr) } -declare 1 mac { - void TclpSysFree(VOID *ptr) +declare 201 { + int TclpObjCopyDirectory(Tcl_Obj *srcPathPtr, Tcl_Obj *destPathPtr, + Tcl_Obj **errorPtr) } -declare 2 mac { - VOID *TclpSysRealloc(VOID *cp, unsigned int size) +declare 202 { + int TclpObjCreateDirectory(Tcl_Obj *pathPtr) } -declare 3 mac { - void TclpExit(int status) +declare 203 { + int TclpObjDeleteFile(Tcl_Obj *pathPtr) } - -# Prototypes for functions found in the tclMacUtil.c compatability library. - -declare 4 mac { - int FSpGetDefaultDir(FSSpecPtr theSpec) +declare 204 { + int TclpObjCopyFile(Tcl_Obj *srcPathPtr, Tcl_Obj *destPathPtr) } -declare 5 mac { - int FSpSetDefaultDir(FSSpecPtr theSpec) +declare 205 { + int TclpObjRenameFile(Tcl_Obj *srcPathPtr, Tcl_Obj *destPathPtr) } -declare 6 mac { - OSErr FSpFindFolder(short vRefNum, OSType folderType, - Boolean createFolder, FSSpec *spec) +declare 206 { + int TclpObjStat(Tcl_Obj *pathPtr, Tcl_StatBuf *buf) } -declare 7 mac { - void GetGlobalMouseTcl(Point *mouse) +declare 207 { + int TclpObjAccess(Tcl_Obj *pathPtr, int mode) } - -# 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 FSpGetDirectoryIDTcl(CONST FSSpec *spec, long *theDirID, - Boolean *isDirectory) +declare 208 { + Tcl_Channel TclpOpenFileChannel(Tcl_Interp *interp, + Tcl_Obj *pathPtr, int mode, int permissions) } -declare 9 mac { - pascal short FSpOpenResFileCompatTcl(CONST FSSpec *spec, - SignedByte permission) +# Made public by TIP 258 +#declare 209 { +# Tcl_Obj *TclGetEncodingSearchPath(void) +#} +#declare 210 { +# int TclSetEncodingSearchPath(Tcl_Obj *searchPath) +#} +#declare 211 { +# const char *TclpGetEncodingNameFromEnvironment(Tcl_DString *bufPtr) +#} +declare 212 { + void TclpFindExecutable(const char *argv0) } -declare 10 mac { - pascal void FSpCreateResFileCompatTcl(CONST FSSpec *spec, OSType creator, - OSType fileType, ScriptCode scriptTag) +declare 213 { + Tcl_Obj *TclGetObjNameOfExecutable(void) } - -# 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 214 { + void TclSetObjNameOfExecutable(Tcl_Obj *name, Tcl_Encoding encoding) +} +declare 215 { + void *TclStackAlloc(Tcl_Interp *interp, int numBytes) } -declare 12 mac { - OSErr FSpPathFromLocation(FSSpecPtr theSpec, int *length, - Handle *fullPath) +declare 216 { + void TclStackFree(Tcl_Interp *interp, void *freePtr) +} +declare 217 { + int TclPushStackFrame(Tcl_Interp *interp, Tcl_CallFrame **framePtrPtr, + Tcl_Namespace *namespacePtr, int isProcCallFrame) +} +declare 218 { + void TclPopStackFrame(Tcl_Interp *interp) } -# Prototypes of Mac only internal functions. +# for use in tclTest.c +declare 224 { + TclPlatformType *TclGetPlatform(void) +} -declare 13 mac { - void TclMacExitHandler(void) +# +declare 225 { + Tcl_Obj *TclTraceDictPath(Tcl_Interp *interp, Tcl_Obj *rootPtr, + int keyc, Tcl_Obj *const keyv[], int flags) } -declare 14 mac { - void TclMacInitExitToShell(int usePatch) +declare 226 { + int TclObjBeingDeleted(Tcl_Obj *objPtr) } -declare 15 mac { - OSErr TclMacInstallExitToShellPatch(ExitToShellProcPtr newProc) +declare 227 { + void TclSetNsPath(Namespace *nsPtr, int pathLength, + Tcl_Namespace *pathAry[]) } -declare 16 mac { - int TclMacOSErrorToPosixError(int error) +declare 228 { + int TclObjInterpProcCore(register Tcl_Interp *interp, Tcl_Obj *procNameObj, + int skip, ProcErrorProc errorProc) } -declare 17 mac { - void TclMacRemoveTimer(VOID *timerToken) +declare 229 { + int TclPtrMakeUpvar(Tcl_Interp *interp, Var *otherP1Ptr, + const char *myName, int myFlags, int index) } -declare 18 mac { - VOID *TclMacStartTimer(long ms) +declare 230 { + Var *TclObjLookupVar(Tcl_Interp *interp, Tcl_Obj *part1Ptr, + const char *part2, int flags, const char *msg, + const int createPart1, const int createPart2, Var **arrayPtrPtr) } -declare 19 mac { - int TclMacTimerExpired(VOID *timerToken) +declare 231 { + int TclGetNamespaceFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, + Tcl_Namespace **nsPtrPtr) } -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) + +# Bits and pieces of TIP#280's guts +declare 232 { + int TclEvalObjEx(Tcl_Interp *interp, Tcl_Obj *objPtr, int flags, + const CmdFrame *invoker, int word) } -declare 23 mac { - FILE *TclMacFOpenHack(CONST char *path, CONST char *mode) +declare 233 { + void TclGetSrcInfoForPc(CmdFrame *contextPtr) } -# Replaced in 8.1 by TclpReadLink: -# declare 24 mac { -# int TclMacReadlink(char *path, char *buf, int size) -# } -declare 24 mac { - char *TclpGetTZName(int isdst) + +# Exports for VarReform compat: Itcl, XOTcl like to peek into our varTables :( +declare 234 { + Var *TclVarHashCreateVar(TclVarHashTable *tablePtr, const char *key, + int *newPtr) } -declare 25 mac { - int TclMacChmod(CONST char *path, int mode) +declare 235 { + void TclInitVarHashTable(TclVarHashTable *tablePtr, Namespace *nsPtr) } -# version of FSpLocationFromPath that doesn't resolve the last path component -declare 26 mac { - int FSpLLocationFromPath(int length, CONST char *path, FSSpecPtr theSpec) + + +# TIP 337 made this one public +declare 236 { + void TclBackgroundException(Tcl_Interp *interp, int code) } +# Tcl_Obj leak detection support. +declare 243 { + void TclDbDumpActiveObjects(FILE *outFile) +} + +declare 249 { + char* TclDoubleDigits(double dv, int ndigits, int flags, + int* decpt, int* signum, char** endPtr) +} + +############################################################################## + +# Define the platform specific internal Tcl interface. These functions are +# only available on the designated platform. + +interface tclIntPlat + ################################ # Windows specific functions @@ -830,8 +960,8 @@ declare 1 win { void TclWinConvertWSAError(DWORD errCode) } declare 2 win { - struct servent *TclWinGetServByName(CONST char *nm, - CONST char *proto) + struct servent *TclWinGetServByName(const char *nm, + const char *proto) } declare 3 win { int TclWinGetSockOpt(SOCKET s, int level, int optname, @@ -849,7 +979,7 @@ declare 6 win { } declare 7 win { int TclWinSetSockOpt(SOCKET s, int level, int optname, - CONST char *optval, int optlen) + const char *optval, int optlen) } declare 8 win { unsigned long TclpGetPid(Tcl_Pid pid) @@ -878,7 +1008,7 @@ declare 14 win { int TclpCreatePipe(TclFile *readPipe, TclFile *writePipe) } declare 15 win { - int TclpCreateProcess(Tcl_Interp *interp, int argc, CONST char **argv, + int TclpCreateProcess(Tcl_Interp *interp, int argc, const char **argv, TclFile inputFile, TclFile outputFile, TclFile errorFile, Tcl_Pid *pidPtr) } @@ -893,7 +1023,7 @@ declare 18 win { TclFile TclpMakeFile(Tcl_Channel channel, int direction) } declare 19 win { - TclFile TclpOpenFile(CONST char *fname, int mode) + TclFile TclpOpenFile(const char *fname, int mode) } declare 20 win { void TclWinAddProcess(HANDLE hProcess, DWORD id) @@ -906,7 +1036,7 @@ declare 20 win { # Added in 8.1: declare 22 win { - TclFile TclpCreateTempFile(CONST char *contents) + TclFile TclpCreateTempFile(const char *contents) } declare 23 win { char *TclpGetTZName(int isdst) @@ -914,9 +1044,10 @@ declare 23 win { declare 24 win { char *TclWinNoBackslash(char *path) } -declare 25 win { - TclPlatformType *TclWinGetPlatform(void) -} +# replaced by generic TclGetPlatform +#declare 25 win { +# TclPlatformType *TclWinGetPlatform(void) +#} declare 26 win { void TclWinSetInterfaces(int wide) } @@ -972,7 +1103,7 @@ declare 6 unix { # On non-cygwin, this is actually a reference to TclpOpenFile declare 7 unix { int TclWinSetSockOpt(void *s, int level, int optname, - CONST char *optval, int optlen) + const char *optval, int optlen) } declare 8 unix { int TclUnixWaitForFile(int fd, int mask, int timeout) @@ -994,35 +1125,54 @@ declare 10 unix { # generic Stubs # On cygwin, this is actually a reference to TclGetAndDetachPids declare 11 unix { - struct tm *TclpLocaltime_unix(TclpTime_t_CONST clock) + struct tm *TclpLocaltime_unix(const time_t *clock) } # On cygwin, this is actually a reference to TclpCloseFile declare 12 unix { - struct tm *TclpGmtime_unix(TclpTime_t_CONST clock) + struct tm *TclpGmtime_unix(const time_t *clock) } declare 13 unix { char *TclpInetNtoa(struct in_addr addr) } + +# Added in 8.5: + +declare 14 unix { + int TclUnixCopyFile(const char *src, const char *dst, + const Tcl_StatBuf *statBufPtr, int dontCopyAtts) +} + +################################ +# Mac OS X specific functions + #On cygwin, TclpCreateProcess is here -declare 15 unix { +declare 15 {unix macosx} { int TclMacOSXGetFileAttribute(Tcl_Interp *interp, int objIndex, Tcl_Obj *fileName, Tcl_Obj **attributePtrPtr) } +declare 16 macosx { + int TclMacOSXSetFileAttribute(Tcl_Interp *interp, int objIndex, + Tcl_Obj *fileName, Tcl_Obj *attributePtr) +} +declare 17 macosx { + int TclMacOSXCopyFileAttributes(const char *src, const char *dst, + const Tcl_StatBuf *statBufPtr) +} #On cygwin, TclpMakeFile is here -declare 18 unix { - int TclMacOSXMatchType(Tcl_Interp *interp, CONST char *pathName, - CONST char *fileName, Tcl_StatBuf *statBufPtr, +declare 18 {unix macosx} { + int TclMacOSXMatchType(Tcl_Interp *interp, const char *pathName, + const char *fileName, Tcl_StatBuf *statBufPtr, Tcl_GlobTypeData *types) } #On cygwin, TclpOpenFile is here -declare 19 unix { - void TclMacOSXNotifierAddRunLoopMode(CONST void *runLoopMode) +declare 19 {unix macosx} { + void TclMacOSXNotifierAddRunLoopMode(const void *runLoopMode) } declare 20 unix { void TclWinAddProcess(void *hProcess, unsigned int id) } declare 22 unix { - TclFile TclpCreateTempFile(CONST char *contents) + TclFile TclpCreateTempFile(const char *contents) } declare 23 unix { char *TclpGetTZName(int isdst) |