4 * This file contains the declarations for all platform dependent
5 * unsupported functions that are exported by the Tcl library. These
6 * interfaces are not guaranteed to remain the same between
7 * versions. Use at your own risk.
9 * Copyright (c) 1998-1999 by Scriptics Corporation.
10 * All rights reserved.
15 #ifndef _TCLINTPLATDECLS
16 #define _TCLINTPLATDECLS
19 * WARNING: This file is automatically generated by the tools/genStubs.tcl
20 * script. Any modifications to the function declarations below should be made
21 * in the generic/tclInt.decls script.
24 /* !BEGIN!: Do not edit below this line. */
27 * Exported function declarations:
30 #if !defined(__WIN32__) && !defined(MAC_TCL) /* UNIX */
32 EXTERN void TclGetAndDetachPids _ANSI_ARGS_((Tcl_Interp * interp,
35 EXTERN int TclpCloseFile _ANSI_ARGS_((TclFile file));
37 EXTERN Tcl_Channel TclpCreateCommandChannel _ANSI_ARGS_((
38 TclFile readFile, TclFile writeFile,
39 TclFile errorFile, int numPids,
42 EXTERN int TclpCreatePipe _ANSI_ARGS_((TclFile * readPipe,
43 TclFile * writePipe));
45 EXTERN int TclpCreateProcess _ANSI_ARGS_((Tcl_Interp * interp,
46 int argc, char ** argv, TclFile inputFile,
47 TclFile outputFile, TclFile errorFile,
49 /* Slot 5 is reserved */
51 EXTERN TclFile TclpMakeFile _ANSI_ARGS_((Tcl_Channel channel,
54 EXTERN TclFile TclpOpenFile _ANSI_ARGS_((CONST char * fname,
57 EXTERN int TclUnixWaitForFile _ANSI_ARGS_((int fd, int mask,
60 EXTERN TclFile TclpCreateTempFile _ANSI_ARGS_((
61 CONST char * contents));
65 EXTERN void TclWinConvertError _ANSI_ARGS_((DWORD errCode));
67 EXTERN void TclWinConvertWSAError _ANSI_ARGS_((DWORD errCode));
69 EXTERN struct servent * TclWinGetServByName _ANSI_ARGS_((CONST char * nm,
72 EXTERN int TclWinGetSockOpt _ANSI_ARGS_((SOCKET s, int level,
73 int optname, char FAR * optval,
76 EXTERN HINSTANCE TclWinGetTclInstance _ANSI_ARGS_((void));
77 /* Slot 5 is reserved */
79 EXTERN u_short TclWinNToHS _ANSI_ARGS_((u_short ns));
81 EXTERN int TclWinSetSockOpt _ANSI_ARGS_((SOCKET s, int level,
82 int optname, CONST char FAR * optval,
85 EXTERN unsigned long TclpGetPid _ANSI_ARGS_((Tcl_Pid pid));
87 EXTERN int TclWinGetPlatformId _ANSI_ARGS_((void));
88 /* Slot 10 is reserved */
90 EXTERN void TclGetAndDetachPids _ANSI_ARGS_((Tcl_Interp * interp,
93 EXTERN int TclpCloseFile _ANSI_ARGS_((TclFile file));
95 EXTERN Tcl_Channel TclpCreateCommandChannel _ANSI_ARGS_((
96 TclFile readFile, TclFile writeFile,
97 TclFile errorFile, int numPids,
100 EXTERN int TclpCreatePipe _ANSI_ARGS_((TclFile * readPipe,
101 TclFile * writePipe));
103 EXTERN int TclpCreateProcess _ANSI_ARGS_((Tcl_Interp * interp,
104 int argc, char ** argv, TclFile inputFile,
105 TclFile outputFile, TclFile errorFile,
107 /* Slot 16 is reserved */
108 /* Slot 17 is reserved */
110 EXTERN TclFile TclpMakeFile _ANSI_ARGS_((Tcl_Channel channel,
113 EXTERN TclFile TclpOpenFile _ANSI_ARGS_((CONST char * fname,
116 EXTERN void TclWinAddProcess _ANSI_ARGS_((HANDLE hProcess,
119 EXTERN void TclpAsyncMark _ANSI_ARGS_((Tcl_AsyncHandler async));
121 EXTERN TclFile TclpCreateTempFile _ANSI_ARGS_((
122 CONST char * contents));
124 EXTERN char * TclpGetTZName _ANSI_ARGS_((int isdst));
126 EXTERN char * TclWinNoBackslash _ANSI_ARGS_((char * path));
128 EXTERN TclPlatformType * TclWinGetPlatform _ANSI_ARGS_((void));
130 EXTERN void TclWinSetInterfaces _ANSI_ARGS_((int wide));
131 #endif /* __WIN32__ */
134 EXTERN VOID * TclpSysAlloc _ANSI_ARGS_((long size, int isBin));
136 EXTERN void TclpSysFree _ANSI_ARGS_((VOID * ptr));
138 EXTERN VOID * TclpSysRealloc _ANSI_ARGS_((VOID * cp,
141 EXTERN void TclpExit _ANSI_ARGS_((int status));
143 EXTERN int FSpGetDefaultDir _ANSI_ARGS_((FSSpecPtr theSpec));
145 EXTERN int FSpSetDefaultDir _ANSI_ARGS_((FSSpecPtr theSpec));
147 EXTERN OSErr FSpFindFolder _ANSI_ARGS_((short vRefNum,
148 OSType folderType, Boolean createFolder,
151 EXTERN void GetGlobalMouse _ANSI_ARGS_((Point * mouse));
153 EXTERN pascal OSErr FSpGetDirectoryID _ANSI_ARGS_((CONST FSSpec * spec,
154 long * theDirID, Boolean * isDirectory));
156 EXTERN pascal short FSpOpenResFileCompat _ANSI_ARGS_((
157 CONST FSSpec * spec, SignedByte permission));
159 EXTERN pascal void FSpCreateResFileCompat _ANSI_ARGS_((
160 CONST FSSpec * spec, OSType creator,
161 OSType fileType, ScriptCode scriptTag));
163 EXTERN int FSpLocationFromPath _ANSI_ARGS_((int length,
164 CONST char * path, FSSpecPtr theSpec));
166 EXTERN OSErr FSpPathFromLocation _ANSI_ARGS_((FSSpecPtr theSpec,
167 int * length, Handle * fullPath));
169 EXTERN void TclMacExitHandler _ANSI_ARGS_((void));
171 EXTERN void TclMacInitExitToShell _ANSI_ARGS_((int usePatch));
173 EXTERN OSErr TclMacInstallExitToShellPatch _ANSI_ARGS_((
174 ExitToShellProcPtr newProc));
176 EXTERN int TclMacOSErrorToPosixError _ANSI_ARGS_((int error));
178 EXTERN void TclMacRemoveTimer _ANSI_ARGS_((void * timerToken));
180 EXTERN void * TclMacStartTimer _ANSI_ARGS_((long ms));
182 EXTERN int TclMacTimerExpired _ANSI_ARGS_((void * timerToken));
184 EXTERN int TclMacRegisterResourceFork _ANSI_ARGS_((
185 short fileRef, Tcl_Obj * tokenPtr,
188 EXTERN short TclMacUnRegisterResourceFork _ANSI_ARGS_((
189 char * tokenPtr, Tcl_Obj * resultPtr));
191 EXTERN int TclMacCreateEnv _ANSI_ARGS_((void));
193 EXTERN FILE * TclMacFOpenHack _ANSI_ARGS_((CONST char * path,
195 /* Slot 24 is reserved */
197 EXTERN int TclMacChmod _ANSI_ARGS_((char * path, int mode));
200 typedef struct TclIntPlatStubs {
202 struct TclIntPlatStubHooks *hooks;
204 #if !defined(__WIN32__) && !defined(MAC_TCL) /* UNIX */
205 void (*tclGetAndDetachPids) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan)); /* 0 */
206 int (*tclpCloseFile) _ANSI_ARGS_((TclFile file)); /* 1 */
207 Tcl_Channel (*tclpCreateCommandChannel) _ANSI_ARGS_((TclFile readFile, TclFile writeFile, TclFile errorFile, int numPids, Tcl_Pid * pidPtr)); /* 2 */
208 int (*tclpCreatePipe) _ANSI_ARGS_((TclFile * readPipe, TclFile * writePipe)); /* 3 */
209 int (*tclpCreateProcess) _ANSI_ARGS_((Tcl_Interp * interp, int argc, char ** argv, TclFile inputFile, TclFile outputFile, TclFile errorFile, Tcl_Pid * pidPtr)); /* 4 */
211 TclFile (*tclpMakeFile) _ANSI_ARGS_((Tcl_Channel channel, int direction)); /* 6 */
212 TclFile (*tclpOpenFile) _ANSI_ARGS_((CONST char * fname, int mode)); /* 7 */
213 int (*tclUnixWaitForFile) _ANSI_ARGS_((int fd, int mask, int timeout)); /* 8 */
214 TclFile (*tclpCreateTempFile) _ANSI_ARGS_((CONST char * contents)); /* 9 */
217 void (*tclWinConvertError) _ANSI_ARGS_((DWORD errCode)); /* 0 */
218 void (*tclWinConvertWSAError) _ANSI_ARGS_((DWORD errCode)); /* 1 */
219 struct servent * (*tclWinGetServByName) _ANSI_ARGS_((CONST char * nm, CONST char * proto)); /* 2 */
220 int (*tclWinGetSockOpt) _ANSI_ARGS_((SOCKET s, int level, int optname, char FAR * optval, int FAR * optlen)); /* 3 */
221 HINSTANCE (*tclWinGetTclInstance) _ANSI_ARGS_((void)); /* 4 */
223 u_short (*tclWinNToHS) _ANSI_ARGS_((u_short ns)); /* 6 */
224 int (*tclWinSetSockOpt) _ANSI_ARGS_((SOCKET s, int level, int optname, CONST char FAR * optval, int optlen)); /* 7 */
225 unsigned long (*tclpGetPid) _ANSI_ARGS_((Tcl_Pid pid)); /* 8 */
226 int (*tclWinGetPlatformId) _ANSI_ARGS_((void)); /* 9 */
228 void (*tclGetAndDetachPids) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan)); /* 11 */
229 int (*tclpCloseFile) _ANSI_ARGS_((TclFile file)); /* 12 */
230 Tcl_Channel (*tclpCreateCommandChannel) _ANSI_ARGS_((TclFile readFile, TclFile writeFile, TclFile errorFile, int numPids, Tcl_Pid * pidPtr)); /* 13 */
231 int (*tclpCreatePipe) _ANSI_ARGS_((TclFile * readPipe, TclFile * writePipe)); /* 14 */
232 int (*tclpCreateProcess) _ANSI_ARGS_((Tcl_Interp * interp, int argc, char ** argv, TclFile inputFile, TclFile outputFile, TclFile errorFile, Tcl_Pid * pidPtr)); /* 15 */
235 TclFile (*tclpMakeFile) _ANSI_ARGS_((Tcl_Channel channel, int direction)); /* 18 */
236 TclFile (*tclpOpenFile) _ANSI_ARGS_((CONST char * fname, int mode)); /* 19 */
237 void (*tclWinAddProcess) _ANSI_ARGS_((HANDLE hProcess, DWORD id)); /* 20 */
238 void (*tclpAsyncMark) _ANSI_ARGS_((Tcl_AsyncHandler async)); /* 21 */
239 TclFile (*tclpCreateTempFile) _ANSI_ARGS_((CONST char * contents)); /* 22 */
240 char * (*tclpGetTZName) _ANSI_ARGS_((int isdst)); /* 23 */
241 char * (*tclWinNoBackslash) _ANSI_ARGS_((char * path)); /* 24 */
242 TclPlatformType * (*tclWinGetPlatform) _ANSI_ARGS_((void)); /* 25 */
243 void (*tclWinSetInterfaces) _ANSI_ARGS_((int wide)); /* 26 */
244 #endif /* __WIN32__ */
246 VOID * (*tclpSysAlloc) _ANSI_ARGS_((long size, int isBin)); /* 0 */
247 void (*tclpSysFree) _ANSI_ARGS_((VOID * ptr)); /* 1 */
248 VOID * (*tclpSysRealloc) _ANSI_ARGS_((VOID * cp, unsigned int size)); /* 2 */
249 void (*tclpExit) _ANSI_ARGS_((int status)); /* 3 */
250 int (*fSpGetDefaultDir) _ANSI_ARGS_((FSSpecPtr theSpec)); /* 4 */
251 int (*fSpSetDefaultDir) _ANSI_ARGS_((FSSpecPtr theSpec)); /* 5 */
252 OSErr (*fSpFindFolder) _ANSI_ARGS_((short vRefNum, OSType folderType, Boolean createFolder, FSSpec * spec)); /* 6 */
253 void (*getGlobalMouse) _ANSI_ARGS_((Point * mouse)); /* 7 */
254 pascal OSErr (*fSpGetDirectoryID) _ANSI_ARGS_((CONST FSSpec * spec, long * theDirID, Boolean * isDirectory)); /* 8 */
255 pascal short (*fSpOpenResFileCompat) _ANSI_ARGS_((CONST FSSpec * spec, SignedByte permission)); /* 9 */
256 pascal void (*fSpCreateResFileCompat) _ANSI_ARGS_((CONST FSSpec * spec, OSType creator, OSType fileType, ScriptCode scriptTag)); /* 10 */
257 int (*fSpLocationFromPath) _ANSI_ARGS_((int length, CONST char * path, FSSpecPtr theSpec)); /* 11 */
258 OSErr (*fSpPathFromLocation) _ANSI_ARGS_((FSSpecPtr theSpec, int * length, Handle * fullPath)); /* 12 */
259 void (*tclMacExitHandler) _ANSI_ARGS_((void)); /* 13 */
260 void (*tclMacInitExitToShell) _ANSI_ARGS_((int usePatch)); /* 14 */
261 OSErr (*tclMacInstallExitToShellPatch) _ANSI_ARGS_((ExitToShellProcPtr newProc)); /* 15 */
262 int (*tclMacOSErrorToPosixError) _ANSI_ARGS_((int error)); /* 16 */
263 void (*tclMacRemoveTimer) _ANSI_ARGS_((void * timerToken)); /* 17 */
264 void * (*tclMacStartTimer) _ANSI_ARGS_((long ms)); /* 18 */
265 int (*tclMacTimerExpired) _ANSI_ARGS_((void * timerToken)); /* 19 */
266 int (*tclMacRegisterResourceFork) _ANSI_ARGS_((short fileRef, Tcl_Obj * tokenPtr, int insert)); /* 20 */
267 short (*tclMacUnRegisterResourceFork) _ANSI_ARGS_((char * tokenPtr, Tcl_Obj * resultPtr)); /* 21 */
268 int (*tclMacCreateEnv) _ANSI_ARGS_((void)); /* 22 */
269 FILE * (*tclMacFOpenHack) _ANSI_ARGS_((CONST char * path, CONST char * mode)); /* 23 */
271 int (*tclMacChmod) _ANSI_ARGS_((char * path, int mode)); /* 25 */
278 extern TclIntPlatStubs *tclIntPlatStubsPtr;
283 #if defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS)
286 * Inline function declarations:
289 #if !defined(__WIN32__) && !defined(MAC_TCL) /* UNIX */
290 #ifndef TclGetAndDetachPids
291 #define TclGetAndDetachPids \
292 (tclIntPlatStubsPtr->tclGetAndDetachPids) /* 0 */
294 #ifndef TclpCloseFile
295 #define TclpCloseFile \
296 (tclIntPlatStubsPtr->tclpCloseFile) /* 1 */
298 #ifndef TclpCreateCommandChannel
299 #define TclpCreateCommandChannel \
300 (tclIntPlatStubsPtr->tclpCreateCommandChannel) /* 2 */
302 #ifndef TclpCreatePipe
303 #define TclpCreatePipe \
304 (tclIntPlatStubsPtr->tclpCreatePipe) /* 3 */
306 #ifndef TclpCreateProcess
307 #define TclpCreateProcess \
308 (tclIntPlatStubsPtr->tclpCreateProcess) /* 4 */
310 /* Slot 5 is reserved */
312 #define TclpMakeFile \
313 (tclIntPlatStubsPtr->tclpMakeFile) /* 6 */
316 #define TclpOpenFile \
317 (tclIntPlatStubsPtr->tclpOpenFile) /* 7 */
319 #ifndef TclUnixWaitForFile
320 #define TclUnixWaitForFile \
321 (tclIntPlatStubsPtr->tclUnixWaitForFile) /* 8 */
323 #ifndef TclpCreateTempFile
324 #define TclpCreateTempFile \
325 (tclIntPlatStubsPtr->tclpCreateTempFile) /* 9 */
329 #ifndef TclWinConvertError
330 #define TclWinConvertError \
331 (tclIntPlatStubsPtr->tclWinConvertError) /* 0 */
333 #ifndef TclWinConvertWSAError
334 #define TclWinConvertWSAError \
335 (tclIntPlatStubsPtr->tclWinConvertWSAError) /* 1 */
337 #ifndef TclWinGetServByName
338 #define TclWinGetServByName \
339 (tclIntPlatStubsPtr->tclWinGetServByName) /* 2 */
341 #ifndef TclWinGetSockOpt
342 #define TclWinGetSockOpt \
343 (tclIntPlatStubsPtr->tclWinGetSockOpt) /* 3 */
345 #ifndef TclWinGetTclInstance
346 #define TclWinGetTclInstance \
347 (tclIntPlatStubsPtr->tclWinGetTclInstance) /* 4 */
349 /* Slot 5 is reserved */
351 #define TclWinNToHS \
352 (tclIntPlatStubsPtr->tclWinNToHS) /* 6 */
354 #ifndef TclWinSetSockOpt
355 #define TclWinSetSockOpt \
356 (tclIntPlatStubsPtr->tclWinSetSockOpt) /* 7 */
360 (tclIntPlatStubsPtr->tclpGetPid) /* 8 */
362 #ifndef TclWinGetPlatformId
363 #define TclWinGetPlatformId \
364 (tclIntPlatStubsPtr->tclWinGetPlatformId) /* 9 */
366 /* Slot 10 is reserved */
367 #ifndef TclGetAndDetachPids
368 #define TclGetAndDetachPids \
369 (tclIntPlatStubsPtr->tclGetAndDetachPids) /* 11 */
371 #ifndef TclpCloseFile
372 #define TclpCloseFile \
373 (tclIntPlatStubsPtr->tclpCloseFile) /* 12 */
375 #ifndef TclpCreateCommandChannel
376 #define TclpCreateCommandChannel \
377 (tclIntPlatStubsPtr->tclpCreateCommandChannel) /* 13 */
379 #ifndef TclpCreatePipe
380 #define TclpCreatePipe \
381 (tclIntPlatStubsPtr->tclpCreatePipe) /* 14 */
383 #ifndef TclpCreateProcess
384 #define TclpCreateProcess \
385 (tclIntPlatStubsPtr->tclpCreateProcess) /* 15 */
387 /* Slot 16 is reserved */
388 /* Slot 17 is reserved */
390 #define TclpMakeFile \
391 (tclIntPlatStubsPtr->tclpMakeFile) /* 18 */
394 #define TclpOpenFile \
395 (tclIntPlatStubsPtr->tclpOpenFile) /* 19 */
397 #ifndef TclWinAddProcess
398 #define TclWinAddProcess \
399 (tclIntPlatStubsPtr->tclWinAddProcess) /* 20 */
401 #ifndef TclpAsyncMark
402 #define TclpAsyncMark \
403 (tclIntPlatStubsPtr->tclpAsyncMark) /* 21 */
405 #ifndef TclpCreateTempFile
406 #define TclpCreateTempFile \
407 (tclIntPlatStubsPtr->tclpCreateTempFile) /* 22 */
409 #ifndef TclpGetTZName
410 #define TclpGetTZName \
411 (tclIntPlatStubsPtr->tclpGetTZName) /* 23 */
413 #ifndef TclWinNoBackslash
414 #define TclWinNoBackslash \
415 (tclIntPlatStubsPtr->tclWinNoBackslash) /* 24 */
417 #ifndef TclWinGetPlatform
418 #define TclWinGetPlatform \
419 (tclIntPlatStubsPtr->tclWinGetPlatform) /* 25 */
421 #ifndef TclWinSetInterfaces
422 #define TclWinSetInterfaces \
423 (tclIntPlatStubsPtr->tclWinSetInterfaces) /* 26 */
425 #endif /* __WIN32__ */
428 #define TclpSysAlloc \
429 (tclIntPlatStubsPtr->tclpSysAlloc) /* 0 */
432 #define TclpSysFree \
433 (tclIntPlatStubsPtr->tclpSysFree) /* 1 */
435 #ifndef TclpSysRealloc
436 #define TclpSysRealloc \
437 (tclIntPlatStubsPtr->tclpSysRealloc) /* 2 */
441 (tclIntPlatStubsPtr->tclpExit) /* 3 */
443 #ifndef FSpGetDefaultDir
444 #define FSpGetDefaultDir \
445 (tclIntPlatStubsPtr->fSpGetDefaultDir) /* 4 */
447 #ifndef FSpSetDefaultDir
448 #define FSpSetDefaultDir \
449 (tclIntPlatStubsPtr->fSpSetDefaultDir) /* 5 */
451 #ifndef FSpFindFolder
452 #define FSpFindFolder \
453 (tclIntPlatStubsPtr->fSpFindFolder) /* 6 */
455 #ifndef GetGlobalMouse
456 #define GetGlobalMouse \
457 (tclIntPlatStubsPtr->getGlobalMouse) /* 7 */
459 #ifndef FSpGetDirectoryID
460 #define FSpGetDirectoryID \
461 (tclIntPlatStubsPtr->fSpGetDirectoryID) /* 8 */
463 #ifndef FSpOpenResFileCompat
464 #define FSpOpenResFileCompat \
465 (tclIntPlatStubsPtr->fSpOpenResFileCompat) /* 9 */
467 #ifndef FSpCreateResFileCompat
468 #define FSpCreateResFileCompat \
469 (tclIntPlatStubsPtr->fSpCreateResFileCompat) /* 10 */
471 #ifndef FSpLocationFromPath
472 #define FSpLocationFromPath \
473 (tclIntPlatStubsPtr->fSpLocationFromPath) /* 11 */
475 #ifndef FSpPathFromLocation
476 #define FSpPathFromLocation \
477 (tclIntPlatStubsPtr->fSpPathFromLocation) /* 12 */
479 #ifndef TclMacExitHandler
480 #define TclMacExitHandler \
481 (tclIntPlatStubsPtr->tclMacExitHandler) /* 13 */
483 #ifndef TclMacInitExitToShell
484 #define TclMacInitExitToShell \
485 (tclIntPlatStubsPtr->tclMacInitExitToShell) /* 14 */
487 #ifndef TclMacInstallExitToShellPatch
488 #define TclMacInstallExitToShellPatch \
489 (tclIntPlatStubsPtr->tclMacInstallExitToShellPatch) /* 15 */
491 #ifndef TclMacOSErrorToPosixError
492 #define TclMacOSErrorToPosixError \
493 (tclIntPlatStubsPtr->tclMacOSErrorToPosixError) /* 16 */
495 #ifndef TclMacRemoveTimer
496 #define TclMacRemoveTimer \
497 (tclIntPlatStubsPtr->tclMacRemoveTimer) /* 17 */
499 #ifndef TclMacStartTimer
500 #define TclMacStartTimer \
501 (tclIntPlatStubsPtr->tclMacStartTimer) /* 18 */
503 #ifndef TclMacTimerExpired
504 #define TclMacTimerExpired \
505 (tclIntPlatStubsPtr->tclMacTimerExpired) /* 19 */
507 #ifndef TclMacRegisterResourceFork
508 #define TclMacRegisterResourceFork \
509 (tclIntPlatStubsPtr->tclMacRegisterResourceFork) /* 20 */
511 #ifndef TclMacUnRegisterResourceFork
512 #define TclMacUnRegisterResourceFork \
513 (tclIntPlatStubsPtr->tclMacUnRegisterResourceFork) /* 21 */
515 #ifndef TclMacCreateEnv
516 #define TclMacCreateEnv \
517 (tclIntPlatStubsPtr->tclMacCreateEnv) /* 22 */
519 #ifndef TclMacFOpenHack
520 #define TclMacFOpenHack \
521 (tclIntPlatStubsPtr->tclMacFOpenHack) /* 23 */
523 /* Slot 24 is reserved */
525 #define TclMacChmod \
526 (tclIntPlatStubsPtr->tclMacChmod) /* 25 */
530 #endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */
532 /* !END!: Do not edit above this line. */
534 #endif /* _TCLINTPLATDECLS */