rust_tcl_sys/
tcl.rs

1/* automatically generated by rust-bindgen */
2
3pub type __int8_t = ::libc::c_char;
4pub type __uint8_t = ::libc::c_uchar;
5pub type __int16_t = ::libc::c_short;
6pub type __uint16_t = ::libc::c_ushort;
7pub type __int32_t = ::libc::c_int;
8pub type __uint32_t = ::libc::c_uint;
9pub type __int64_t = ::libc::c_longlong;
10pub type __uint64_t = ::libc::c_ulonglong;
11pub type __darwin_intptr_t = ::libc::c_long;
12pub type __darwin_natural_t = ::libc::c_uint;
13pub type __darwin_ct_rune_t = ::libc::c_int;
14#[repr(C)]
15pub struct Union_Unnamed1 {
16    pub _bindgen_data_: [u64; 16usize],
17}
18impl Union_Unnamed1 {
19    pub unsafe fn __mbstate8(&mut self) -> *mut [::libc::c_char; 128usize] {
20        ::std::mem::transmute(&self._bindgen_data_)
21    }
22    pub unsafe fn _mbstateL(&mut self) -> *mut ::libc::c_longlong {
23        ::std::mem::transmute(&self._bindgen_data_)
24    }
25}
26impl ::std::default::Default for Union_Unnamed1 {
27    fn default() -> Union_Unnamed1 { unsafe { ::std::mem::zeroed() } }
28}
29pub type __mbstate_t = Union_Unnamed1;
30pub type __darwin_mbstate_t = __mbstate_t;
31pub type __darwin_ptrdiff_t = ::libc::c_long;
32pub type __darwin_size_t = ::libc::c_ulong;
33//pub type __darwin_va_list = __builtin_va_list;
34pub type __darwin_wchar_t = ::libc::c_int;
35pub type __darwin_rune_t = __darwin_wchar_t;
36pub type __darwin_wint_t = ::libc::c_int;
37pub type __darwin_clock_t = ::libc::c_ulong;
38pub type __darwin_socklen_t = __uint32_t;
39pub type __darwin_ssize_t = ::libc::c_long;
40pub type __darwin_time_t = ::libc::c_long;
41pub type __darwin_blkcnt_t = __int64_t;
42pub type __darwin_blksize_t = __int32_t;
43pub type __darwin_dev_t = __int32_t;
44pub type __darwin_fsblkcnt_t = ::libc::c_uint;
45pub type __darwin_fsfilcnt_t = ::libc::c_uint;
46pub type __darwin_gid_t = __uint32_t;
47pub type __darwin_id_t = __uint32_t;
48pub type __darwin_ino64_t = __uint64_t;
49pub type __darwin_ino_t = __darwin_ino64_t;
50pub type __darwin_mach_port_name_t = __darwin_natural_t;
51pub type __darwin_mach_port_t = __darwin_mach_port_name_t;
52pub type __darwin_mode_t = __uint16_t;
53pub type __darwin_off_t = __int64_t;
54pub type __darwin_pid_t = __int32_t;
55pub type __darwin_sigset_t = __uint32_t;
56pub type __darwin_suseconds_t = __int32_t;
57pub type __darwin_uid_t = __uint32_t;
58pub type __darwin_useconds_t = __uint32_t;
59pub type __darwin_uuid_t = [::libc::c_uchar; 16usize];
60pub type __darwin_uuid_string_t = [::libc::c_char; 37usize];
61#[repr(C)]
62pub struct Struct___darwin_pthread_handler_rec {
63    pub __routine: ::std::option::Option<extern "C" fn
64                                             (arg1: *mut ::libc::c_void)
65                                             -> ()>,
66    pub __arg: *mut ::libc::c_void,
67    pub __next: *mut Struct___darwin_pthread_handler_rec,
68}
69impl ::std::default::Default for Struct___darwin_pthread_handler_rec {
70    fn default() -> Struct___darwin_pthread_handler_rec {
71        unsafe { ::std::mem::zeroed() }
72    }
73}
74#[repr(C)]
75pub struct Struct__opaque_pthread_attr_t {
76    pub __sig: ::libc::c_long,
77    pub __opaque: [::libc::c_char; 56usize],
78}
79impl ::std::default::Default for Struct__opaque_pthread_attr_t {
80    fn default() -> Struct__opaque_pthread_attr_t {
81        unsafe { ::std::mem::zeroed() }
82    }
83}
84#[repr(C)]
85pub struct Struct__opaque_pthread_cond_t {
86    pub __sig: ::libc::c_long,
87    pub __opaque: [::libc::c_char; 40usize],
88}
89impl ::std::default::Default for Struct__opaque_pthread_cond_t {
90    fn default() -> Struct__opaque_pthread_cond_t {
91        unsafe { ::std::mem::zeroed() }
92    }
93}
94#[repr(C)]
95pub struct Struct__opaque_pthread_condattr_t {
96    pub __sig: ::libc::c_long,
97    pub __opaque: [::libc::c_char; 8usize],
98}
99impl ::std::default::Default for Struct__opaque_pthread_condattr_t {
100    fn default() -> Struct__opaque_pthread_condattr_t {
101        unsafe { ::std::mem::zeroed() }
102    }
103}
104#[repr(C)]
105pub struct Struct__opaque_pthread_mutex_t {
106    pub __sig: ::libc::c_long,
107    pub __opaque: [::libc::c_char; 56usize],
108}
109impl ::std::default::Default for Struct__opaque_pthread_mutex_t {
110    fn default() -> Struct__opaque_pthread_mutex_t {
111        unsafe { ::std::mem::zeroed() }
112    }
113}
114#[repr(C)]
115pub struct Struct__opaque_pthread_mutexattr_t {
116    pub __sig: ::libc::c_long,
117    pub __opaque: [::libc::c_char; 8usize],
118}
119impl ::std::default::Default for Struct__opaque_pthread_mutexattr_t {
120    fn default() -> Struct__opaque_pthread_mutexattr_t {
121        unsafe { ::std::mem::zeroed() }
122    }
123}
124#[repr(C)]
125pub struct Struct__opaque_pthread_once_t {
126    pub __sig: ::libc::c_long,
127    pub __opaque: [::libc::c_char; 8usize],
128}
129impl ::std::default::Default for Struct__opaque_pthread_once_t {
130    fn default() -> Struct__opaque_pthread_once_t {
131        unsafe { ::std::mem::zeroed() }
132    }
133}
134#[repr(C)]
135pub struct Struct__opaque_pthread_rwlock_t {
136    pub __sig: ::libc::c_long,
137    pub __opaque: [::libc::c_char; 192usize],
138}
139impl ::std::default::Default for Struct__opaque_pthread_rwlock_t {
140    fn default() -> Struct__opaque_pthread_rwlock_t {
141        unsafe { ::std::mem::zeroed() }
142    }
143}
144#[repr(C)]
145pub struct Struct__opaque_pthread_rwlockattr_t {
146    pub __sig: ::libc::c_long,
147    pub __opaque: [::libc::c_char; 16usize],
148}
149impl ::std::default::Default for Struct__opaque_pthread_rwlockattr_t {
150    fn default() -> Struct__opaque_pthread_rwlockattr_t {
151        unsafe { ::std::mem::zeroed() }
152    }
153}
154#[repr(C)]
155pub struct Struct__opaque_pthread_t {
156    pub __sig: ::libc::c_long,
157    pub __cleanup_stack: *mut Struct___darwin_pthread_handler_rec,
158    pub __opaque: [::libc::c_char; 8176usize],
159}
160impl ::std::default::Default for Struct__opaque_pthread_t {
161    fn default() -> Struct__opaque_pthread_t {
162        unsafe { ::std::mem::zeroed() }
163    }
164}
165pub type __darwin_pthread_attr_t = Struct__opaque_pthread_attr_t;
166pub type __darwin_pthread_cond_t = Struct__opaque_pthread_cond_t;
167pub type __darwin_pthread_condattr_t = Struct__opaque_pthread_condattr_t;
168pub type __darwin_pthread_key_t = ::libc::c_ulong;
169pub type __darwin_pthread_mutex_t = Struct__opaque_pthread_mutex_t;
170pub type __darwin_pthread_mutexattr_t = Struct__opaque_pthread_mutexattr_t;
171pub type __darwin_pthread_once_t = Struct__opaque_pthread_once_t;
172pub type __darwin_pthread_rwlock_t = Struct__opaque_pthread_rwlock_t;
173pub type __darwin_pthread_rwlockattr_t = Struct__opaque_pthread_rwlockattr_t;
174pub type __darwin_pthread_t = *mut Struct__opaque_pthread_t;
175pub type __darwin_nl_item = ::libc::c_int;
176pub type __darwin_wctrans_t = ::libc::c_int;
177pub type __darwin_wctype_t = __uint32_t;
178//pub type va_list = __builtin_va_list;
179pub type size_t = __darwin_size_t;
180pub type fpos_t = __darwin_off_t;
181#[repr(C)]
182pub struct Struct___sbuf {
183    pub _base: *mut ::libc::c_uchar,
184    pub _size: ::libc::c_int,
185}
186impl ::std::default::Default for Struct___sbuf {
187    fn default() -> Struct___sbuf { unsafe { ::std::mem::zeroed() } }
188}
189pub enum Struct___sFILEX { }
190#[repr(C)]
191pub struct Struct___sFILE {
192    pub _p: *mut ::libc::c_uchar,
193    pub _r: ::libc::c_int,
194    pub _w: ::libc::c_int,
195    pub _flags: ::libc::c_short,
196    pub _file: ::libc::c_short,
197    pub _bf: Struct___sbuf,
198    pub _lbfsize: ::libc::c_int,
199    pub _cookie: *mut ::libc::c_void,
200    pub _close: ::std::option::Option<extern "C" fn(arg1: *mut ::libc::c_void)
201                                          -> ::libc::c_int>,
202    pub _read: ::std::option::Option<extern "C" fn
203                                         (arg1: *mut ::libc::c_void,
204                                          arg2: *mut ::libc::c_char,
205                                          arg3: ::libc::c_int)
206                                         -> ::libc::c_int>,
207    pub _seek: ::std::option::Option<extern "C" fn
208                                         (arg1: *mut ::libc::c_void,
209                                          arg2: fpos_t, arg3: ::libc::c_int)
210                                         -> fpos_t>,
211    pub _write: ::std::option::Option<extern "C" fn
212                                          (arg1: *mut ::libc::c_void,
213                                           arg2: *const ::libc::c_char,
214                                           arg3: ::libc::c_int)
215                                          -> ::libc::c_int>,
216    pub _ub: Struct___sbuf,
217    pub _extra: *mut Struct___sFILEX,
218    pub _ur: ::libc::c_int,
219    pub _ubuf: [::libc::c_uchar; 3usize],
220    pub _nbuf: [::libc::c_uchar; 1usize],
221    pub _lb: Struct___sbuf,
222    pub _blksize: ::libc::c_int,
223    pub _offset: fpos_t,
224}
225impl ::std::default::Default for Struct___sFILE {
226    fn default() -> Struct___sFILE { unsafe { ::std::mem::zeroed() } }
227}
228pub type FILE = Struct___sFILE;
229pub type off_t = __darwin_off_t;
230pub type ssize_t = __darwin_ssize_t;
231//pub type __gnuc_va_list = __builtin_va_list;
232pub type ClientData = *mut ::libc::c_void;
233pub type Tcl_WideInt = ::libc::c_long;
234pub type Tcl_WideUInt = ::libc::c_ulong;
235pub enum Struct_stat { }
236pub type Tcl_StatBuf = Struct_stat;
237#[repr(C)]
238pub struct Struct_Tcl_Interp {
239    pub resultDontUse: *mut ::libc::c_char,
240    pub freeProcDontUse: ::std::option::Option<extern "C" fn
241                                                   (arg1: *mut ::libc::c_char)
242                                                   -> ()>,
243    pub errorLineDontUse: ::libc::c_int,
244}
245impl ::std::default::Default for Struct_Tcl_Interp {
246    fn default() -> Struct_Tcl_Interp { unsafe { ::std::mem::zeroed() } }
247}
248pub type Tcl_Interp = Struct_Tcl_Interp;
249pub enum Struct_Tcl_AsyncHandler_ { }
250pub type Tcl_AsyncHandler = *mut Struct_Tcl_AsyncHandler_;
251pub enum Struct_Tcl_Channel_ { }
252pub type Tcl_Channel = *mut Struct_Tcl_Channel_;
253pub enum Struct_Tcl_ChannelTypeVersion_ { }
254pub type Tcl_ChannelTypeVersion = *mut Struct_Tcl_ChannelTypeVersion_;
255pub enum Struct_Tcl_Command_ { }
256pub type Tcl_Command = *mut Struct_Tcl_Command_;
257pub enum Struct_Tcl_Condition_ { }
258pub type Tcl_Condition = *mut Struct_Tcl_Condition_;
259pub enum Struct_Tcl_Dict_ { }
260pub type Tcl_Dict = *mut Struct_Tcl_Dict_;
261pub enum Struct_Tcl_EncodingState_ { }
262pub type Tcl_EncodingState = *mut Struct_Tcl_EncodingState_;
263pub enum Struct_Tcl_Encoding_ { }
264pub type Tcl_Encoding = *mut Struct_Tcl_Encoding_;
265pub type Tcl_Event = Struct_Tcl_Event;
266pub enum Struct_Tcl_InterpState_ { }
267pub type Tcl_InterpState = *mut Struct_Tcl_InterpState_;
268pub enum Struct_Tcl_LoadHandle_ { }
269pub type Tcl_LoadHandle = *mut Struct_Tcl_LoadHandle_;
270pub enum Struct_Tcl_Mutex_ { }
271pub type Tcl_Mutex = *mut Struct_Tcl_Mutex_;
272pub enum Struct_Tcl_Pid_ { }
273pub type Tcl_Pid = *mut Struct_Tcl_Pid_;
274pub enum Struct_Tcl_RegExp_ { }
275pub type Tcl_RegExp = *mut Struct_Tcl_RegExp_;
276pub enum Struct_Tcl_ThreadDataKey_ { }
277pub type Tcl_ThreadDataKey = *mut Struct_Tcl_ThreadDataKey_;
278pub enum Struct_Tcl_ThreadId_ { }
279pub type Tcl_ThreadId = *mut Struct_Tcl_ThreadId_;
280pub enum Struct_Tcl_TimerToken_ { }
281pub type Tcl_TimerToken = *mut Struct_Tcl_TimerToken_;
282pub enum Struct_Tcl_Trace_ { }
283pub type Tcl_Trace = *mut Struct_Tcl_Trace_;
284pub enum Struct_Tcl_Var_ { }
285pub type Tcl_Var = *mut Struct_Tcl_Var_;
286pub enum Struct_Tcl_ZLibStream_ { }
287pub type Tcl_ZlibStream = *mut Struct_Tcl_ZLibStream_;
288pub type Tcl_ThreadCreateProc = extern "C" fn(clientData: ClientData) -> ();
289#[repr(C)]
290pub struct Struct_Tcl_RegExpIndices {
291    pub start: ::libc::c_long,
292    pub end: ::libc::c_long,
293}
294impl ::std::default::Default for Struct_Tcl_RegExpIndices {
295    fn default() -> Struct_Tcl_RegExpIndices {
296        unsafe { ::std::mem::zeroed() }
297    }
298}
299pub type Tcl_RegExpIndices = Struct_Tcl_RegExpIndices;
300#[repr(C)]
301pub struct Struct_Tcl_RegExpInfo {
302    pub nsubs: ::libc::c_int,
303    pub matches: *mut Tcl_RegExpIndices,
304    pub extendStart: ::libc::c_long,
305    pub reserved: ::libc::c_long,
306}
307impl ::std::default::Default for Struct_Tcl_RegExpInfo {
308    fn default() -> Struct_Tcl_RegExpInfo { unsafe { ::std::mem::zeroed() } }
309}
310pub type Tcl_RegExpInfo = Struct_Tcl_RegExpInfo;
311pub type Tcl_Stat_ = *mut Tcl_StatBuf;
312pub type Tcl_OldStat_ = *mut Struct_stat;
313pub type Enum_Unnamed2 = ::libc::c_uint;
314pub const TCL_INT: ::libc::c_uint = 0;
315pub const TCL_DOUBLE: ::libc::c_uint = 1;
316pub const TCL_EITHER: ::libc::c_uint = 2;
317pub const TCL_WIDE_INT: ::libc::c_uint = 3;
318pub type Tcl_ValueType = Enum_Unnamed2;
319#[repr(C)]
320pub struct Struct_Tcl_Value {
321    pub _type: Tcl_ValueType,
322    pub intValue: ::libc::c_long,
323    pub doubleValue: ::libc::c_double,
324    pub wideValue: Tcl_WideInt,
325}
326impl ::std::default::Default for Struct_Tcl_Value {
327    fn default() -> Struct_Tcl_Value { unsafe { ::std::mem::zeroed() } }
328}
329pub type Tcl_Value = Struct_Tcl_Value;
330pub type Tcl_AppInitProc =
331    extern "C" fn(interp: *mut Tcl_Interp) -> ::libc::c_int;
332pub type Tcl_AsyncProc =
333    extern "C" fn
334        (clientData: ClientData, interp: *mut Tcl_Interp, code: ::libc::c_int)
335        -> ::libc::c_int;
336pub type Tcl_ChannelProc =
337    extern "C" fn(clientData: ClientData, mask: ::libc::c_int) -> ();
338pub type Tcl_CloseProc = extern "C" fn(data: ClientData) -> ();
339pub type Tcl_CmdDeleteProc = extern "C" fn(clientData: ClientData) -> ();
340pub type Tcl_CmdProc =
341    extern "C" fn
342        (clientData: ClientData, interp: *mut Tcl_Interp, argc: ::libc::c_int,
343         argv: *mut *const ::libc::c_char) -> ::libc::c_int;
344pub type Tcl_CmdTraceProc =
345    extern "C" fn
346        (clientData: ClientData, interp: *mut Tcl_Interp,
347         level: ::libc::c_int, command: *mut ::libc::c_char,
348         _proc: *mut Tcl_CmdProc, cmdClientData: ClientData,
349         argc: ::libc::c_int, argv: *mut *const ::libc::c_char) -> ();
350pub type Tcl_CmdObjTraceProc =
351    extern "C" fn
352        (clientData: ClientData, interp: *mut Tcl_Interp,
353         level: ::libc::c_int, command: *const ::libc::c_char,
354         commandInfo: Tcl_Command, objc: ::libc::c_int,
355         objv: *const *mut Struct_Tcl_Obj) -> ::libc::c_int;
356pub type Tcl_CmdObjTraceDeleteProc =
357    extern "C" fn(clientData: ClientData) -> ();
358pub type Tcl_DupInternalRepProc =
359    extern "C" fn(srcPtr: *mut Struct_Tcl_Obj, dupPtr: *mut Struct_Tcl_Obj)
360        -> ();
361pub type Tcl_EncodingConvertProc =
362    extern "C" fn
363        (clientData: ClientData, src: *const ::libc::c_char,
364         srcLen: ::libc::c_int, flags: ::libc::c_int,
365         statePtr: *mut Tcl_EncodingState, dst: *mut ::libc::c_char,
366         dstLen: ::libc::c_int, srcReadPtr: *mut ::libc::c_int,
367         dstWrotePtr: *mut ::libc::c_int, dstCharsPtr: *mut ::libc::c_int)
368        -> ::libc::c_int;
369pub type Tcl_EncodingFreeProc = extern "C" fn(clientData: ClientData) -> ();
370pub type Tcl_EventProc =
371    extern "C" fn(evPtr: *mut Tcl_Event, flags: ::libc::c_int)
372        -> ::libc::c_int;
373pub type Tcl_EventCheckProc =
374    extern "C" fn(clientData: ClientData, flags: ::libc::c_int) -> ();
375pub type Tcl_EventDeleteProc =
376    extern "C" fn(evPtr: *mut Tcl_Event, clientData: ClientData)
377        -> ::libc::c_int;
378pub type Tcl_EventSetupProc =
379    extern "C" fn(clientData: ClientData, flags: ::libc::c_int) -> ();
380pub type Tcl_ExitProc = extern "C" fn(clientData: ClientData) -> ();
381pub type Tcl_FileProc =
382    extern "C" fn(clientData: ClientData, mask: ::libc::c_int) -> ();
383pub type Tcl_FileFreeProc = extern "C" fn(clientData: ClientData) -> ();
384pub type Tcl_FreeInternalRepProc =
385    extern "C" fn(objPtr: *mut Struct_Tcl_Obj) -> ();
386pub type Tcl_FreeProc = extern "C" fn(blockPtr: *mut ::libc::c_char) -> ();
387pub type Tcl_IdleProc = extern "C" fn(clientData: ClientData) -> ();
388pub type Tcl_InterpDeleteProc =
389    extern "C" fn(clientData: ClientData, interp: *mut Tcl_Interp) -> ();
390pub type Tcl_MathProc =
391    extern "C" fn
392        (clientData: ClientData, interp: *mut Tcl_Interp,
393         args: *mut Tcl_Value, resultPtr: *mut Tcl_Value) -> ::libc::c_int;
394pub type Tcl_NamespaceDeleteProc =
395    extern "C" fn(clientData: ClientData) -> ();
396pub type Tcl_ObjCmdProc =
397    extern "C" fn
398        (clientData: ClientData, interp: *mut Tcl_Interp, objc: ::libc::c_int,
399         objv: *const *mut Struct_Tcl_Obj) -> ::libc::c_int;
400pub type Tcl_PackageInitProc =
401    extern "C" fn(interp: *mut Tcl_Interp) -> ::libc::c_int;
402pub type Tcl_PackageUnloadProc =
403    extern "C" fn(interp: *mut Tcl_Interp, flags: ::libc::c_int)
404        -> ::libc::c_int;
405pub type Tcl_PanicProc =
406    extern "C" fn(format: *const ::libc::c_char, ...) -> ();
407pub type Tcl_TcpAcceptProc =
408    extern "C" fn
409        (callbackData: ClientData, chan: Tcl_Channel,
410         address: *mut ::libc::c_char, port: ::libc::c_int) -> ();
411pub type Tcl_TimerProc = extern "C" fn(clientData: ClientData) -> ();
412pub type Tcl_SetFromAnyProc =
413    extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Struct_Tcl_Obj)
414        -> ::libc::c_int;
415pub type Tcl_UpdateStringProc =
416    extern "C" fn(objPtr: *mut Struct_Tcl_Obj) -> ();
417pub type Tcl_VarTraceProc =
418    extern "C" fn
419        (clientData: ClientData, interp: *mut Tcl_Interp,
420         part1: *const ::libc::c_char, part2: *const ::libc::c_char,
421         flags: ::libc::c_int) -> *mut ::libc::c_char;
422pub type Tcl_CommandTraceProc =
423    extern "C" fn
424        (clientData: ClientData, interp: *mut Tcl_Interp,
425         oldName: *const ::libc::c_char, newName: *const ::libc::c_char,
426         flags: ::libc::c_int) -> ();
427pub type Tcl_CreateFileHandlerProc =
428    extern "C" fn
429        (fd: ::libc::c_int, mask: ::libc::c_int, _proc: *mut Tcl_FileProc,
430         clientData: ClientData) -> ();
431pub type Tcl_DeleteFileHandlerProc = extern "C" fn(fd: ::libc::c_int) -> ();
432pub type Tcl_AlertNotifierProc = extern "C" fn(clientData: ClientData) -> ();
433pub type Tcl_ServiceModeHookProc = extern "C" fn(mode: ::libc::c_int) -> ();
434pub type Tcl_InitNotifierProc = extern "C" fn() -> *mut ::libc::c_void;
435pub type Tcl_FinalizeNotifierProc =
436    extern "C" fn(clientData: ClientData) -> ();
437pub type Tcl_MainLoopProc = extern "C" fn() -> ();
438#[repr(C)]
439pub struct Struct_Tcl_ObjType {
440    pub name: *const ::libc::c_char,
441    pub freeIntRepProc: *mut Tcl_FreeInternalRepProc,
442    pub dupIntRepProc: *mut Tcl_DupInternalRepProc,
443    pub updateStringProc: *mut Tcl_UpdateStringProc,
444    pub setFromAnyProc: *mut Tcl_SetFromAnyProc,
445}
446impl ::std::default::Default for Struct_Tcl_ObjType {
447    fn default() -> Struct_Tcl_ObjType { unsafe { ::std::mem::zeroed() } }
448}
449pub type Tcl_ObjType = Struct_Tcl_ObjType;
450#[repr(C)]
451pub struct Struct_Tcl_Obj {
452    pub refCount: ::libc::c_int,
453    pub bytes: *mut ::libc::c_char,
454    pub length: ::libc::c_int,
455    pub typePtr: *const Tcl_ObjType,
456    pub internalRep: Union_Unnamed3,
457}
458impl ::std::default::Default for Struct_Tcl_Obj {
459    fn default() -> Struct_Tcl_Obj { unsafe { ::std::mem::zeroed() } }
460}
461#[repr(C)]
462pub struct Union_Unnamed3 {
463    pub _bindgen_data_: [u64; 2usize],
464}
465impl Union_Unnamed3 {
466    pub unsafe fn longValue(&mut self) -> *mut ::libc::c_long {
467        ::std::mem::transmute(&self._bindgen_data_)
468    }
469    pub unsafe fn doubleValue(&mut self) -> *mut ::libc::c_double {
470        ::std::mem::transmute(&self._bindgen_data_)
471    }
472    pub unsafe fn otherValuePtr(&mut self) -> *mut *mut ::libc::c_void {
473        ::std::mem::transmute(&self._bindgen_data_)
474    }
475    pub unsafe fn wideValue(&mut self) -> *mut Tcl_WideInt {
476        ::std::mem::transmute(&self._bindgen_data_)
477    }
478    pub unsafe fn twoPtrValue(&mut self) -> *mut Struct_Unnamed4 {
479        ::std::mem::transmute(&self._bindgen_data_)
480    }
481    pub unsafe fn ptrAndLongRep(&mut self) -> *mut Struct_Unnamed5 {
482        ::std::mem::transmute(&self._bindgen_data_)
483    }
484}
485impl ::std::default::Default for Union_Unnamed3 {
486    fn default() -> Union_Unnamed3 { unsafe { ::std::mem::zeroed() } }
487}
488#[repr(C)]
489pub struct Struct_Unnamed4 {
490    pub ptr1: *mut ::libc::c_void,
491    pub ptr2: *mut ::libc::c_void,
492}
493impl ::std::default::Default for Struct_Unnamed4 {
494    fn default() -> Struct_Unnamed4 { unsafe { ::std::mem::zeroed() } }
495}
496#[repr(C)]
497pub struct Struct_Unnamed5 {
498    pub ptr: *mut ::libc::c_void,
499    pub value: ::libc::c_ulong,
500}
501impl ::std::default::Default for Struct_Unnamed5 {
502    fn default() -> Struct_Unnamed5 { unsafe { ::std::mem::zeroed() } }
503}
504pub type Tcl_Obj = Struct_Tcl_Obj;
505#[repr(C)]
506pub struct Struct_Tcl_SavedResult {
507    pub result: *mut ::libc::c_char,
508    pub freeProc: *mut Tcl_FreeProc,
509    pub objResultPtr: *mut Tcl_Obj,
510    pub appendResult: *mut ::libc::c_char,
511    pub appendAvl: ::libc::c_int,
512    pub appendUsed: ::libc::c_int,
513    pub resultSpace: [::libc::c_char; 201usize],
514}
515impl ::std::default::Default for Struct_Tcl_SavedResult {
516    fn default() -> Struct_Tcl_SavedResult { unsafe { ::std::mem::zeroed() } }
517}
518pub type Tcl_SavedResult = Struct_Tcl_SavedResult;
519#[repr(C)]
520pub struct Struct_Tcl_Namespace {
521    pub name: *mut ::libc::c_char,
522    pub fullName: *mut ::libc::c_char,
523    pub clientData: ClientData,
524    pub deleteProc: *mut Tcl_NamespaceDeleteProc,
525    pub parentPtr: *mut Struct_Tcl_Namespace,
526}
527impl ::std::default::Default for Struct_Tcl_Namespace {
528    fn default() -> Struct_Tcl_Namespace { unsafe { ::std::mem::zeroed() } }
529}
530pub type Tcl_Namespace = Struct_Tcl_Namespace;
531#[repr(C)]
532pub struct Struct_Tcl_CallFrame {
533    pub nsPtr: *mut Tcl_Namespace,
534    pub dummy1: ::libc::c_int,
535    pub dummy2: ::libc::c_int,
536    pub dummy3: *mut ::libc::c_void,
537    pub dummy4: *mut ::libc::c_void,
538    pub dummy5: *mut ::libc::c_void,
539    pub dummy6: ::libc::c_int,
540    pub dummy7: *mut ::libc::c_void,
541    pub dummy8: *mut ::libc::c_void,
542    pub dummy9: ::libc::c_int,
543    pub dummy10: *mut ::libc::c_void,
544    pub dummy11: *mut ::libc::c_void,
545    pub dummy12: *mut ::libc::c_void,
546    pub dummy13: *mut ::libc::c_void,
547}
548impl ::std::default::Default for Struct_Tcl_CallFrame {
549    fn default() -> Struct_Tcl_CallFrame { unsafe { ::std::mem::zeroed() } }
550}
551pub type Tcl_CallFrame = Struct_Tcl_CallFrame;
552#[repr(C)]
553pub struct Struct_Tcl_CmdInfo {
554    pub isNativeObjectProc: ::libc::c_int,
555    pub objProc: *mut Tcl_ObjCmdProc,
556    pub objClientData: ClientData,
557    pub _proc: *mut Tcl_CmdProc,
558    pub clientData: ClientData,
559    pub deleteProc: *mut Tcl_CmdDeleteProc,
560    pub deleteData: ClientData,
561    pub namespacePtr: *mut Tcl_Namespace,
562}
563impl ::std::default::Default for Struct_Tcl_CmdInfo {
564    fn default() -> Struct_Tcl_CmdInfo { unsafe { ::std::mem::zeroed() } }
565}
566pub type Tcl_CmdInfo = Struct_Tcl_CmdInfo;
567#[repr(C)]
568pub struct Struct_Tcl_DString {
569    pub string: *mut ::libc::c_char,
570    pub length: ::libc::c_int,
571    pub spaceAvl: ::libc::c_int,
572    pub staticSpace: [::libc::c_char; 200usize],
573}
574impl ::std::default::Default for Struct_Tcl_DString {
575    fn default() -> Struct_Tcl_DString { unsafe { ::std::mem::zeroed() } }
576}
577pub type Tcl_DString = Struct_Tcl_DString;
578pub type Tcl_HashKeyType = Struct_Tcl_HashKeyType;
579pub type Tcl_HashTable = Struct_Tcl_HashTable;
580pub type Tcl_HashEntry = Struct_Tcl_HashEntry;
581pub type Tcl_HashKeyProc =
582    extern "C" fn(tablePtr: *mut Tcl_HashTable, keyPtr: *mut ::libc::c_void)
583        -> ::libc::c_uint;
584pub type Tcl_CompareHashKeysProc =
585    extern "C" fn(keyPtr: *mut ::libc::c_void, hPtr: *mut Tcl_HashEntry)
586        -> ::libc::c_int;
587pub type Tcl_AllocHashEntryProc =
588    extern "C" fn(tablePtr: *mut Tcl_HashTable, keyPtr: *mut ::libc::c_void)
589        -> *mut Struct_Tcl_HashEntry;
590pub type Tcl_FreeHashEntryProc =
591    extern "C" fn(hPtr: *mut Tcl_HashEntry) -> ();
592#[repr(C)]
593pub struct Struct_Tcl_HashEntry {
594    pub nextPtr: *mut Tcl_HashEntry,
595    pub tablePtr: *mut Tcl_HashTable,
596    pub hash: *mut ::libc::c_void,
597    pub clientData: ClientData,
598    pub key: Union_Unnamed6,
599}
600impl ::std::default::Default for Struct_Tcl_HashEntry {
601    fn default() -> Struct_Tcl_HashEntry { unsafe { ::std::mem::zeroed() } }
602}
603#[repr(C)]
604pub struct Union_Unnamed6 {
605    pub _bindgen_data_: [u64; 1usize],
606}
607impl Union_Unnamed6 {
608    pub unsafe fn oneWordValue(&mut self) -> *mut *mut ::libc::c_char {
609        ::std::mem::transmute(&self._bindgen_data_)
610    }
611    pub unsafe fn objPtr(&mut self) -> *mut *mut Tcl_Obj {
612        ::std::mem::transmute(&self._bindgen_data_)
613    }
614    pub unsafe fn words(&mut self) -> *mut [::libc::c_int; 1usize] {
615        ::std::mem::transmute(&self._bindgen_data_)
616    }
617    pub unsafe fn string(&mut self) -> *mut [::libc::c_char; 1usize] {
618        ::std::mem::transmute(&self._bindgen_data_)
619    }
620}
621impl ::std::default::Default for Union_Unnamed6 {
622    fn default() -> Union_Unnamed6 { unsafe { ::std::mem::zeroed() } }
623}
624#[repr(C)]
625pub struct Struct_Tcl_HashKeyType {
626    pub version: ::libc::c_int,
627    pub flags: ::libc::c_int,
628    pub hashKeyProc: *mut Tcl_HashKeyProc,
629    pub compareKeysProc: *mut Tcl_CompareHashKeysProc,
630    pub allocEntryProc: *mut Tcl_AllocHashEntryProc,
631    pub freeEntryProc: *mut Tcl_FreeHashEntryProc,
632}
633impl ::std::default::Default for Struct_Tcl_HashKeyType {
634    fn default() -> Struct_Tcl_HashKeyType { unsafe { ::std::mem::zeroed() } }
635}
636#[repr(C)]
637pub struct Struct_Tcl_HashTable {
638    pub buckets: *mut *mut Tcl_HashEntry,
639    pub staticBuckets: [*mut Tcl_HashEntry; 4usize],
640    pub numBuckets: ::libc::c_int,
641    pub numEntries: ::libc::c_int,
642    pub rebuildSize: ::libc::c_int,
643    pub downShift: ::libc::c_int,
644    pub mask: ::libc::c_int,
645    pub keyType: ::libc::c_int,
646    pub findProc: ::std::option::Option<extern "C" fn
647                                            (tablePtr: *mut Tcl_HashTable,
648                                             key: *const ::libc::c_char)
649                                            -> *mut Tcl_HashEntry>,
650    pub createProc: ::std::option::Option<extern "C" fn
651                                              (tablePtr: *mut Tcl_HashTable,
652                                               key: *const ::libc::c_char,
653                                               newPtr: *mut ::libc::c_int)
654                                              -> *mut Tcl_HashEntry>,
655    pub typePtr: *const Tcl_HashKeyType,
656}
657impl ::std::default::Default for Struct_Tcl_HashTable {
658    fn default() -> Struct_Tcl_HashTable { unsafe { ::std::mem::zeroed() } }
659}
660#[repr(C)]
661pub struct Struct_Tcl_HashSearch {
662    pub tablePtr: *mut Tcl_HashTable,
663    pub nextIndex: ::libc::c_int,
664    pub nextEntryPtr: *mut Tcl_HashEntry,
665}
666impl ::std::default::Default for Struct_Tcl_HashSearch {
667    fn default() -> Struct_Tcl_HashSearch { unsafe { ::std::mem::zeroed() } }
668}
669pub type Tcl_HashSearch = Struct_Tcl_HashSearch;
670#[repr(C)]
671pub struct Struct_Unnamed7 {
672    pub next: *mut ::libc::c_void,
673    pub epoch: ::libc::c_int,
674    pub dictionaryPtr: Tcl_Dict,
675}
676impl ::std::default::Default for Struct_Unnamed7 {
677    fn default() -> Struct_Unnamed7 { unsafe { ::std::mem::zeroed() } }
678}
679pub type Tcl_DictSearch = Struct_Unnamed7;
680#[repr(C)]
681pub struct Struct_Tcl_Event {
682    pub _proc: *mut Tcl_EventProc,
683    pub nextPtr: *mut Struct_Tcl_Event,
684}
685impl ::std::default::Default for Struct_Tcl_Event {
686    fn default() -> Struct_Tcl_Event { unsafe { ::std::mem::zeroed() } }
687}
688pub type Enum_Unnamed8 = ::libc::c_uint;
689pub const TCL_QUEUE_TAIL: ::libc::c_uint = 0;
690pub const TCL_QUEUE_HEAD: ::libc::c_uint = 1;
691pub const TCL_QUEUE_MARK: ::libc::c_uint = 2;
692pub type Tcl_QueuePosition = Enum_Unnamed8;
693#[repr(C)]
694pub struct Struct_Tcl_Time {
695    pub sec: ::libc::c_long,
696    pub usec: ::libc::c_long,
697}
698impl ::std::default::Default for Struct_Tcl_Time {
699    fn default() -> Struct_Tcl_Time { unsafe { ::std::mem::zeroed() } }
700}
701pub type Tcl_Time = Struct_Tcl_Time;
702pub type Tcl_SetTimerProc = extern "C" fn(timePtr: *const Tcl_Time) -> ();
703pub type Tcl_WaitForEventProc =
704    extern "C" fn(timePtr: *const Tcl_Time) -> ::libc::c_int;
705pub type Tcl_GetTimeProc =
706    extern "C" fn(timebuf: *mut Tcl_Time, clientData: ClientData) -> ();
707pub type Tcl_ScaleTimeProc =
708    extern "C" fn(timebuf: *mut Tcl_Time, clientData: ClientData) -> ();
709pub type Tcl_DriverBlockModeProc =
710    extern "C" fn(instanceData: ClientData, mode: ::libc::c_int)
711        -> ::libc::c_int;
712pub type Tcl_DriverCloseProc =
713    extern "C" fn(instanceData: ClientData, interp: *mut Tcl_Interp)
714        -> ::libc::c_int;
715pub type Tcl_DriverClose2Proc =
716    extern "C" fn
717        (instanceData: ClientData, interp: *mut Tcl_Interp,
718         flags: ::libc::c_int) -> ::libc::c_int;
719pub type Tcl_DriverInputProc =
720    extern "C" fn
721        (instanceData: ClientData, buf: *mut ::libc::c_char,
722         toRead: ::libc::c_int, errorCodePtr: *mut ::libc::c_int)
723        -> ::libc::c_int;
724pub type Tcl_DriverOutputProc =
725    extern "C" fn
726        (instanceData: ClientData, buf: *const ::libc::c_char,
727         toWrite: ::libc::c_int, errorCodePtr: *mut ::libc::c_int)
728        -> ::libc::c_int;
729pub type Tcl_DriverSeekProc =
730    extern "C" fn
731        (instanceData: ClientData, offset: ::libc::c_long,
732         mode: ::libc::c_int, errorCodePtr: *mut ::libc::c_int)
733        -> ::libc::c_int;
734pub type Tcl_DriverSetOptionProc =
735    extern "C" fn
736        (instanceData: ClientData, interp: *mut Tcl_Interp,
737         optionName: *const ::libc::c_char, value: *const ::libc::c_char)
738        -> ::libc::c_int;
739pub type Tcl_DriverGetOptionProc =
740    extern "C" fn
741        (instanceData: ClientData, interp: *mut Tcl_Interp,
742         optionName: *const ::libc::c_char, dsPtr: *mut Tcl_DString)
743        -> ::libc::c_int;
744pub type Tcl_DriverWatchProc =
745    extern "C" fn(instanceData: ClientData, mask: ::libc::c_int) -> ();
746pub type Tcl_DriverGetHandleProc =
747    extern "C" fn
748        (instanceData: ClientData, direction: ::libc::c_int,
749         handlePtr: *mut ClientData) -> ::libc::c_int;
750pub type Tcl_DriverFlushProc =
751    extern "C" fn(instanceData: ClientData) -> ::libc::c_int;
752pub type Tcl_DriverHandlerProc =
753    extern "C" fn(instanceData: ClientData, interestMask: ::libc::c_int)
754        -> ::libc::c_int;
755pub type Tcl_DriverWideSeekProc =
756    extern "C" fn
757        (instanceData: ClientData, offset: Tcl_WideInt, mode: ::libc::c_int,
758         errorCodePtr: *mut ::libc::c_int) -> ::libc::c_long;
759pub type Tcl_DriverThreadActionProc =
760    extern "C" fn(instanceData: ClientData, action: ::libc::c_int) -> ();
761pub type Tcl_DriverTruncateProc =
762    extern "C" fn(instanceData: ClientData, length: Tcl_WideInt)
763        -> ::libc::c_int;
764#[repr(C)]
765pub struct Struct_Tcl_ChannelType {
766    pub typeName: *const ::libc::c_char,
767    pub version: Tcl_ChannelTypeVersion,
768    pub closeProc: *mut Tcl_DriverCloseProc,
769    pub inputProc: *mut Tcl_DriverInputProc,
770    pub outputProc: *mut Tcl_DriverOutputProc,
771    pub seekProc: *mut Tcl_DriverSeekProc,
772    pub setOptionProc: *mut Tcl_DriverSetOptionProc,
773    pub getOptionProc: *mut Tcl_DriverGetOptionProc,
774    pub watchProc: *mut Tcl_DriverWatchProc,
775    pub getHandleProc: *mut Tcl_DriverGetHandleProc,
776    pub close2Proc: *mut Tcl_DriverClose2Proc,
777    pub blockModeProc: *mut Tcl_DriverBlockModeProc,
778    pub flushProc: *mut Tcl_DriverFlushProc,
779    pub handlerProc: *mut Tcl_DriverHandlerProc,
780    pub wideSeekProc: *mut Tcl_DriverWideSeekProc,
781    pub threadActionProc: *mut Tcl_DriverThreadActionProc,
782    pub truncateProc: *mut Tcl_DriverTruncateProc,
783}
784impl ::std::default::Default for Struct_Tcl_ChannelType {
785    fn default() -> Struct_Tcl_ChannelType { unsafe { ::std::mem::zeroed() } }
786}
787pub type Tcl_ChannelType = Struct_Tcl_ChannelType;
788pub type Enum_Tcl_PathType = ::libc::c_uint;
789pub const TCL_PATH_ABSOLUTE: ::libc::c_uint = 0;
790pub const TCL_PATH_RELATIVE: ::libc::c_uint = 1;
791pub const TCL_PATH_VOLUME_RELATIVE: ::libc::c_uint = 2;
792pub type Tcl_PathType = Enum_Tcl_PathType;
793#[repr(C)]
794pub struct Struct_Tcl_GlobTypeData {
795    pub _type: ::libc::c_int,
796    pub perm: ::libc::c_int,
797    pub macType: *mut Tcl_Obj,
798    pub macCreator: *mut Tcl_Obj,
799}
800impl ::std::default::Default for Struct_Tcl_GlobTypeData {
801    fn default() -> Struct_Tcl_GlobTypeData {
802        unsafe { ::std::mem::zeroed() }
803    }
804}
805pub type Tcl_GlobTypeData = Struct_Tcl_GlobTypeData;
806pub type Tcl_FSStatProc =
807    extern "C" fn(pathPtr: *mut Tcl_Obj, buf: *mut Tcl_StatBuf)
808        -> ::libc::c_int;
809pub type Tcl_FSAccessProc =
810    extern "C" fn(pathPtr: *mut Tcl_Obj, mode: ::libc::c_int)
811        -> ::libc::c_int;
812pub type Tcl_FSOpenFileChannelProc =
813    extern "C" fn
814        (interp: *mut Tcl_Interp, pathPtr: *mut Tcl_Obj, mode: ::libc::c_int,
815         permissions: ::libc::c_int) -> *mut Struct_Tcl_Channel_;
816pub type Tcl_FSMatchInDirectoryProc =
817    extern "C" fn
818        (interp: *mut Tcl_Interp, result: *mut Tcl_Obj, pathPtr: *mut Tcl_Obj,
819         pattern: *const ::libc::c_char, types: *mut Tcl_GlobTypeData)
820        -> ::libc::c_int;
821pub type Tcl_FSGetCwdProc =
822    extern "C" fn(interp: *mut Tcl_Interp) -> *mut Struct_Tcl_Obj;
823pub type Tcl_FSChdirProc =
824    extern "C" fn(pathPtr: *mut Tcl_Obj) -> ::libc::c_int;
825pub type Tcl_FSLstatProc =
826    extern "C" fn(pathPtr: *mut Tcl_Obj, buf: *mut Tcl_StatBuf)
827        -> ::libc::c_int;
828pub type Tcl_FSCreateDirectoryProc =
829    extern "C" fn(pathPtr: *mut Tcl_Obj) -> ::libc::c_int;
830pub type Tcl_FSDeleteFileProc =
831    extern "C" fn(pathPtr: *mut Tcl_Obj) -> ::libc::c_int;
832pub type Tcl_FSCopyDirectoryProc =
833    extern "C" fn
834        (srcPathPtr: *mut Tcl_Obj, destPathPtr: *mut Tcl_Obj,
835         errorPtr: *mut *mut Tcl_Obj) -> ::libc::c_int;
836pub type Tcl_FSCopyFileProc =
837    extern "C" fn(srcPathPtr: *mut Tcl_Obj, destPathPtr: *mut Tcl_Obj)
838        -> ::libc::c_int;
839pub type Tcl_FSRemoveDirectoryProc =
840    extern "C" fn
841        (pathPtr: *mut Tcl_Obj, recursive: ::libc::c_int,
842         errorPtr: *mut *mut Tcl_Obj) -> ::libc::c_int;
843pub type Tcl_FSRenameFileProc =
844    extern "C" fn(srcPathPtr: *mut Tcl_Obj, destPathPtr: *mut Tcl_Obj)
845        -> ::libc::c_int;
846pub type Tcl_FSUnloadFileProc =
847    extern "C" fn(loadHandle: Tcl_LoadHandle) -> ();
848pub type Tcl_FSListVolumesProc = extern "C" fn() -> *mut Struct_Tcl_Obj;
849pub enum Struct_utimbuf { }
850pub type Tcl_FSUtimeProc =
851    extern "C" fn(pathPtr: *mut Tcl_Obj, tval: *mut Struct_utimbuf)
852        -> ::libc::c_int;
853pub type Tcl_FSNormalizePathProc =
854    extern "C" fn
855        (interp: *mut Tcl_Interp, pathPtr: *mut Tcl_Obj,
856         nextCheckpoint: ::libc::c_int) -> ::libc::c_int;
857pub type Tcl_FSFileAttrsGetProc =
858    extern "C" fn
859        (interp: *mut Tcl_Interp, index: ::libc::c_int, pathPtr: *mut Tcl_Obj,
860         objPtrRef: *mut *mut Tcl_Obj) -> ::libc::c_int;
861pub type Tcl_FSFileAttrStringsProc =
862    extern "C" fn(pathPtr: *mut Tcl_Obj, objPtrRef: *mut *mut Tcl_Obj)
863        -> *const *const ::libc::c_char;
864pub type Tcl_FSFileAttrsSetProc =
865    extern "C" fn
866        (interp: *mut Tcl_Interp, index: ::libc::c_int, pathPtr: *mut Tcl_Obj,
867         objPtr: *mut Tcl_Obj) -> ::libc::c_int;
868pub type Tcl_FSLinkProc =
869    extern "C" fn
870        (pathPtr: *mut Tcl_Obj, toPtr: *mut Tcl_Obj, linkType: ::libc::c_int)
871        -> *mut Struct_Tcl_Obj;
872pub type Tcl_FSLoadFileProc =
873    extern "C" fn
874        (interp: *mut Tcl_Interp, pathPtr: *mut Tcl_Obj,
875         handlePtr: *mut Tcl_LoadHandle,
876         unloadProcPtr: *mut *mut Tcl_FSUnloadFileProc) -> ::libc::c_int;
877pub type Tcl_FSPathInFilesystemProc =
878    extern "C" fn(pathPtr: *mut Tcl_Obj, clientDataPtr: *mut ClientData)
879        -> ::libc::c_int;
880pub type Tcl_FSFilesystemPathTypeProc =
881    extern "C" fn(pathPtr: *mut Tcl_Obj) -> *mut Struct_Tcl_Obj;
882pub type Tcl_FSFilesystemSeparatorProc =
883    extern "C" fn(pathPtr: *mut Tcl_Obj) -> *mut Struct_Tcl_Obj;
884pub type Tcl_FSFreeInternalRepProc =
885    extern "C" fn(clientData: ClientData) -> ();
886pub type Tcl_FSDupInternalRepProc =
887    extern "C" fn(clientData: ClientData) -> *mut ::libc::c_void;
888pub type Tcl_FSInternalToNormalizedProc =
889    extern "C" fn(clientData: ClientData) -> *mut Struct_Tcl_Obj;
890pub type Tcl_FSCreateInternalRepProc =
891    extern "C" fn(pathPtr: *mut Tcl_Obj) -> *mut ::libc::c_void;
892pub enum Struct_Tcl_FSVersion_ { }
893pub type Tcl_FSVersion = *mut Struct_Tcl_FSVersion_;
894#[repr(C)]
895pub struct Struct_Tcl_Filesystem {
896    pub typeName: *const ::libc::c_char,
897    pub structureLength: ::libc::c_int,
898    pub version: Tcl_FSVersion,
899    pub pathInFilesystemProc: *mut Tcl_FSPathInFilesystemProc,
900    pub dupInternalRepProc: *mut Tcl_FSDupInternalRepProc,
901    pub freeInternalRepProc: *mut Tcl_FSFreeInternalRepProc,
902    pub internalToNormalizedProc: *mut Tcl_FSInternalToNormalizedProc,
903    pub createInternalRepProc: *mut Tcl_FSCreateInternalRepProc,
904    pub normalizePathProc: *mut Tcl_FSNormalizePathProc,
905    pub filesystemPathTypeProc: *mut Tcl_FSFilesystemPathTypeProc,
906    pub filesystemSeparatorProc: *mut Tcl_FSFilesystemSeparatorProc,
907    pub statProc: *mut Tcl_FSStatProc,
908    pub accessProc: *mut Tcl_FSAccessProc,
909    pub openFileChannelProc: *mut Tcl_FSOpenFileChannelProc,
910    pub matchInDirectoryProc: *mut Tcl_FSMatchInDirectoryProc,
911    pub utimeProc: *mut Tcl_FSUtimeProc,
912    pub linkProc: *mut Tcl_FSLinkProc,
913    pub listVolumesProc: *mut Tcl_FSListVolumesProc,
914    pub fileAttrStringsProc: *mut Tcl_FSFileAttrStringsProc,
915    pub fileAttrsGetProc: *mut Tcl_FSFileAttrsGetProc,
916    pub fileAttrsSetProc: *mut Tcl_FSFileAttrsSetProc,
917    pub createDirectoryProc: *mut Tcl_FSCreateDirectoryProc,
918    pub removeDirectoryProc: *mut Tcl_FSRemoveDirectoryProc,
919    pub deleteFileProc: *mut Tcl_FSDeleteFileProc,
920    pub copyFileProc: *mut Tcl_FSCopyFileProc,
921    pub renameFileProc: *mut Tcl_FSRenameFileProc,
922    pub copyDirectoryProc: *mut Tcl_FSCopyDirectoryProc,
923    pub lstatProc: *mut Tcl_FSLstatProc,
924    pub loadFileProc: *mut Tcl_FSLoadFileProc,
925    pub getCwdProc: *mut Tcl_FSGetCwdProc,
926    pub chdirProc: *mut Tcl_FSChdirProc,
927}
928impl ::std::default::Default for Struct_Tcl_Filesystem {
929    fn default() -> Struct_Tcl_Filesystem { unsafe { ::std::mem::zeroed() } }
930}
931pub type Tcl_Filesystem = Struct_Tcl_Filesystem;
932#[repr(C)]
933pub struct Struct_Tcl_NotifierProcs {
934    pub setTimerProc: *mut Tcl_SetTimerProc,
935    pub waitForEventProc: *mut Tcl_WaitForEventProc,
936    pub createFileHandlerProc: *mut Tcl_CreateFileHandlerProc,
937    pub deleteFileHandlerProc: *mut Tcl_DeleteFileHandlerProc,
938    pub initNotifierProc: *mut Tcl_InitNotifierProc,
939    pub finalizeNotifierProc: *mut Tcl_FinalizeNotifierProc,
940    pub alertNotifierProc: *mut Tcl_AlertNotifierProc,
941    pub serviceModeHookProc: *mut Tcl_ServiceModeHookProc,
942}
943impl ::std::default::Default for Struct_Tcl_NotifierProcs {
944    fn default() -> Struct_Tcl_NotifierProcs {
945        unsafe { ::std::mem::zeroed() }
946    }
947}
948pub type Tcl_NotifierProcs = Struct_Tcl_NotifierProcs;
949#[repr(C)]
950pub struct Struct_Tcl_Token {
951    pub _type: ::libc::c_int,
952    pub start: *const ::libc::c_char,
953    pub size: ::libc::c_int,
954    pub numComponents: ::libc::c_int,
955}
956impl ::std::default::Default for Struct_Tcl_Token {
957    fn default() -> Struct_Tcl_Token { unsafe { ::std::mem::zeroed() } }
958}
959pub type Tcl_Token = Struct_Tcl_Token;
960#[repr(C)]
961pub struct Struct_Tcl_Parse {
962    pub commentStart: *const ::libc::c_char,
963    pub commentSize: ::libc::c_int,
964    pub commandStart: *const ::libc::c_char,
965    pub commandSize: ::libc::c_int,
966    pub numWords: ::libc::c_int,
967    pub tokenPtr: *mut Tcl_Token,
968    pub numTokens: ::libc::c_int,
969    pub tokensAvailable: ::libc::c_int,
970    pub errorType: ::libc::c_int,
971    pub string: *const ::libc::c_char,
972    pub end: *const ::libc::c_char,
973    pub interp: *mut Tcl_Interp,
974    pub term: *const ::libc::c_char,
975    pub incomplete: ::libc::c_int,
976    pub staticTokens: [Tcl_Token; 20usize],
977}
978impl ::std::default::Default for Struct_Tcl_Parse {
979    fn default() -> Struct_Tcl_Parse { unsafe { ::std::mem::zeroed() } }
980}
981pub type Tcl_Parse = Struct_Tcl_Parse;
982#[repr(C)]
983pub struct Struct_Tcl_EncodingType {
984    pub encodingName: *const ::libc::c_char,
985    pub toUtfProc: *mut Tcl_EncodingConvertProc,
986    pub fromUtfProc: *mut Tcl_EncodingConvertProc,
987    pub freeProc: *mut Tcl_EncodingFreeProc,
988    pub clientData: ClientData,
989    pub nullSize: ::libc::c_int,
990}
991impl ::std::default::Default for Struct_Tcl_EncodingType {
992    fn default() -> Struct_Tcl_EncodingType {
993        unsafe { ::std::mem::zeroed() }
994    }
995}
996pub type Tcl_EncodingType = Struct_Tcl_EncodingType;
997pub type Tcl_UniChar = ::libc::c_ushort;
998#[repr(C)]
999pub struct Struct_Tcl_Config {
1000    pub key: *const ::libc::c_char,
1001    pub value: *const ::libc::c_char,
1002}
1003impl ::std::default::Default for Struct_Tcl_Config {
1004    fn default() -> Struct_Tcl_Config { unsafe { ::std::mem::zeroed() } }
1005}
1006pub type Tcl_Config = Struct_Tcl_Config;
1007pub type Tcl_LimitHandlerProc =
1008    extern "C" fn(clientData: ClientData, interp: *mut Tcl_Interp) -> ();
1009pub type Tcl_LimitHandlerDeleteProc =
1010    extern "C" fn(clientData: ClientData) -> ();
1011pub enum Struct_mp_int { }
1012pub type mp_int = Struct_mp_int;
1013pub type mp_digit = ::libc::c_uint;
1014#[repr(C)]
1015pub struct Struct_Unnamed9 {
1016    pub _type: ::libc::c_int,
1017    pub keyStr: *const ::libc::c_char,
1018    pub srcPtr: *mut ::libc::c_void,
1019    pub dstPtr: *mut ::libc::c_void,
1020    pub helpStr: *const ::libc::c_char,
1021    pub clientData: ClientData,
1022}
1023impl ::std::default::Default for Struct_Unnamed9 {
1024    fn default() -> Struct_Unnamed9 { unsafe { ::std::mem::zeroed() } }
1025}
1026pub type Tcl_ArgvInfo = Struct_Unnamed9;
1027pub type Tcl_ArgvFuncProc =
1028    extern "C" fn
1029        (clientData: ClientData, objPtr: *mut Tcl_Obj,
1030         dstPtr: *mut ::libc::c_void) -> ::libc::c_int;
1031pub type Tcl_ArgvGenFuncProc =
1032    extern "C" fn
1033        (clientData: ClientData, interp: *mut Tcl_Interp, objc: ::libc::c_int,
1034         objv: *const *mut Tcl_Obj, dstPtr: *mut ::libc::c_void)
1035        -> ::libc::c_int;
1036pub type Tcl_NRPostProc =
1037    extern "C" fn
1038        (data: *mut ClientData, interp: *mut Tcl_Interp,
1039         result: ::libc::c_int) -> ::libc::c_int;
1040pub enum Struct_TclIntStubs { }
1041pub enum Struct_TclIntPlatStubs { }
1042#[repr(C)]
1043pub struct Struct_Unnamed10 {
1044    pub tclPlatStubs: *const Struct_TclPlatStubs,
1045    pub tclIntStubs: *const Struct_TclIntStubs,
1046    pub tclIntPlatStubs: *const Struct_TclIntPlatStubs,
1047}
1048impl ::std::default::Default for Struct_Unnamed10 {
1049    fn default() -> Struct_Unnamed10 { unsafe { ::std::mem::zeroed() } }
1050}
1051pub type TclStubHooks = Struct_Unnamed10;
1052#[repr(C)]
1053pub struct Struct_TclStubs {
1054    pub magic: ::libc::c_int,
1055    pub hooks: *const TclStubHooks,
1056    pub tcl_PkgProvideEx: ::std::option::Option<extern "C" fn
1057                                                    (interp: *mut Tcl_Interp,
1058                                                     name:
1059                                                         *const ::libc::c_char,
1060                                                     version:
1061                                                         *const ::libc::c_char,
1062                                                     clientData:
1063                                                         *const ::libc::c_void)
1064                                                    -> ::libc::c_int>,
1065    pub tcl_PkgRequireEx: ::std::option::Option<extern "C" fn
1066                                                    (interp: *mut Tcl_Interp,
1067                                                     name:
1068                                                         *const ::libc::c_char,
1069                                                     version:
1070                                                         *const ::libc::c_char,
1071                                                     exact: ::libc::c_int,
1072                                                     clientDataPtr:
1073                                                         *mut ::libc::c_void)
1074                                                    -> *const ::libc::c_char>,
1075    pub tcl_Panic: ::std::option::Option<extern "C" fn
1076                                             (format:
1077                                                  *const ::libc::c_char, ...)
1078                                             -> ()>,
1079    pub tcl_Alloc: ::std::option::Option<extern "C" fn(size: ::libc::c_uint)
1080                                             -> *mut ::libc::c_char>,
1081    pub tcl_Free: ::std::option::Option<extern "C" fn
1082                                            (ptr: *mut ::libc::c_char) -> ()>,
1083    pub tcl_Realloc: ::std::option::Option<extern "C" fn
1084                                               (ptr: *mut ::libc::c_char,
1085                                                size: ::libc::c_uint)
1086                                               -> *mut ::libc::c_char>,
1087    pub tcl_DbCkalloc: ::std::option::Option<extern "C" fn
1088                                                 (size: ::libc::c_uint,
1089                                                  file: *const ::libc::c_char,
1090                                                  line: ::libc::c_int)
1091                                                 -> *mut ::libc::c_char>,
1092    pub tcl_DbCkfree: ::std::option::Option<extern "C" fn
1093                                                (ptr: *mut ::libc::c_char,
1094                                                 file: *const ::libc::c_char,
1095                                                 line: ::libc::c_int) -> ()>,
1096    pub tcl_DbCkrealloc: ::std::option::Option<extern "C" fn
1097                                                   (ptr: *mut ::libc::c_char,
1098                                                    size: ::libc::c_uint,
1099                                                    file:
1100                                                        *const ::libc::c_char,
1101                                                    line: ::libc::c_int)
1102                                                   -> *mut ::libc::c_char>,
1103    pub tcl_CreateFileHandler: ::std::option::Option<extern "C" fn
1104                                                         (fd: ::libc::c_int,
1105                                                          mask: ::libc::c_int,
1106                                                          _proc:
1107                                                              *mut Tcl_FileProc,
1108                                                          clientData:
1109                                                              ClientData)
1110                                                         -> ()>,
1111    pub tcl_DeleteFileHandler: ::std::option::Option<extern "C" fn
1112                                                         (fd: ::libc::c_int)
1113                                                         -> ()>,
1114    pub tcl_SetTimer: ::std::option::Option<extern "C" fn
1115                                                (timePtr: *const Tcl_Time)
1116                                                -> ()>,
1117    pub tcl_Sleep: ::std::option::Option<extern "C" fn(ms: ::libc::c_int)
1118                                             -> ()>,
1119    pub tcl_WaitForEvent: ::std::option::Option<extern "C" fn
1120                                                    (timePtr: *const Tcl_Time)
1121                                                    -> ::libc::c_int>,
1122    pub tcl_AppendAllObjTypes: ::std::option::Option<extern "C" fn
1123                                                         (interp:
1124                                                              *mut Tcl_Interp,
1125                                                          objPtr:
1126                                                              *mut Tcl_Obj)
1127                                                         -> ::libc::c_int>,
1128    pub tcl_AppendStringsToObj: ::std::option::Option<extern "C" fn
1129                                                          (objPtr:
1130                                                               *mut Tcl_Obj, ...)
1131                                                          -> ()>,
1132    pub tcl_AppendToObj: ::std::option::Option<extern "C" fn
1133                                                   (objPtr: *mut Tcl_Obj,
1134                                                    bytes:
1135                                                        *const ::libc::c_char,
1136                                                    length: ::libc::c_int)
1137                                                   -> ()>,
1138    pub tcl_ConcatObj: ::std::option::Option<extern "C" fn
1139                                                 (objc: ::libc::c_int,
1140                                                  objv: *const *mut Tcl_Obj)
1141                                                 -> *mut Tcl_Obj>,
1142    pub tcl_ConvertToType: ::std::option::Option<extern "C" fn
1143                                                     (interp: *mut Tcl_Interp,
1144                                                      objPtr: *mut Tcl_Obj,
1145                                                      typePtr:
1146                                                          *const Tcl_ObjType)
1147                                                     -> ::libc::c_int>,
1148    pub tcl_DbDecrRefCount: ::std::option::Option<extern "C" fn
1149                                                      (objPtr: *mut Tcl_Obj,
1150                                                       file:
1151                                                           *const ::libc::c_char,
1152                                                       line: ::libc::c_int)
1153                                                      -> ()>,
1154    pub tcl_DbIncrRefCount: ::std::option::Option<extern "C" fn
1155                                                      (objPtr: *mut Tcl_Obj,
1156                                                       file:
1157                                                           *const ::libc::c_char,
1158                                                       line: ::libc::c_int)
1159                                                      -> ()>,
1160    pub tcl_DbIsShared: ::std::option::Option<extern "C" fn
1161                                                  (objPtr: *mut Tcl_Obj,
1162                                                   file:
1163                                                       *const ::libc::c_char,
1164                                                   line: ::libc::c_int)
1165                                                  -> ::libc::c_int>,
1166    pub tcl_DbNewBooleanObj: ::std::option::Option<extern "C" fn
1167                                                       (boolValue:
1168                                                            ::libc::c_int,
1169                                                        file:
1170                                                            *const ::libc::c_char,
1171                                                        line: ::libc::c_int)
1172                                                       -> *mut Tcl_Obj>,
1173    pub tcl_DbNewByteArrayObj: ::std::option::Option<extern "C" fn
1174                                                         (bytes:
1175                                                              *const ::libc::c_uchar,
1176                                                          length:
1177                                                              ::libc::c_int,
1178                                                          file:
1179                                                              *const ::libc::c_char,
1180                                                          line: ::libc::c_int)
1181                                                         -> *mut Tcl_Obj>,
1182    pub tcl_DbNewDoubleObj: ::std::option::Option<extern "C" fn
1183                                                      (doubleValue:
1184                                                           ::libc::c_double,
1185                                                       file:
1186                                                           *const ::libc::c_char,
1187                                                       line: ::libc::c_int)
1188                                                      -> *mut Tcl_Obj>,
1189    pub tcl_DbNewListObj: ::std::option::Option<extern "C" fn
1190                                                    (objc: ::libc::c_int,
1191                                                     objv:
1192                                                         *const *mut Tcl_Obj,
1193                                                     file:
1194                                                         *const ::libc::c_char,
1195                                                     line: ::libc::c_int)
1196                                                    -> *mut Tcl_Obj>,
1197    pub tcl_DbNewLongObj: ::std::option::Option<extern "C" fn
1198                                                    (longValue:
1199                                                         ::libc::c_long,
1200                                                     file:
1201                                                         *const ::libc::c_char,
1202                                                     line: ::libc::c_int)
1203                                                    -> *mut Tcl_Obj>,
1204    pub tcl_DbNewObj: ::std::option::Option<extern "C" fn
1205                                                (file: *const ::libc::c_char,
1206                                                 line: ::libc::c_int)
1207                                                -> *mut Tcl_Obj>,
1208    pub tcl_DbNewStringObj: ::std::option::Option<extern "C" fn
1209                                                      (bytes:
1210                                                           *const ::libc::c_char,
1211                                                       length: ::libc::c_int,
1212                                                       file:
1213                                                           *const ::libc::c_char,
1214                                                       line: ::libc::c_int)
1215                                                      -> *mut Tcl_Obj>,
1216    pub tcl_DuplicateObj: ::std::option::Option<extern "C" fn
1217                                                    (objPtr: *mut Tcl_Obj)
1218                                                    -> *mut Tcl_Obj>,
1219    pub tclFreeObj: ::std::option::Option<extern "C" fn(objPtr: *mut Tcl_Obj)
1220                                              -> ()>,
1221    pub tcl_GetBoolean: ::std::option::Option<extern "C" fn
1222                                                  (interp: *mut Tcl_Interp,
1223                                                   src: *const ::libc::c_char,
1224                                                   boolPtr:
1225                                                       *mut ::libc::c_int)
1226                                                  -> ::libc::c_int>,
1227    pub tcl_GetBooleanFromObj: ::std::option::Option<extern "C" fn
1228                                                         (interp:
1229                                                              *mut Tcl_Interp,
1230                                                          objPtr:
1231                                                              *mut Tcl_Obj,
1232                                                          boolPtr:
1233                                                              *mut ::libc::c_int)
1234                                                         -> ::libc::c_int>,
1235    pub tcl_GetByteArrayFromObj: ::std::option::Option<extern "C" fn
1236                                                           (objPtr:
1237                                                                *mut Tcl_Obj,
1238                                                            lengthPtr:
1239                                                                *mut ::libc::c_int)
1240                                                           ->
1241                                                               *mut ::libc::c_uchar>,
1242    pub tcl_GetDouble: ::std::option::Option<extern "C" fn
1243                                                 (interp: *mut Tcl_Interp,
1244                                                  src: *const ::libc::c_char,
1245                                                  doublePtr:
1246                                                      *mut ::libc::c_double)
1247                                                 -> ::libc::c_int>,
1248    pub tcl_GetDoubleFromObj: ::std::option::Option<extern "C" fn
1249                                                        (interp:
1250                                                             *mut Tcl_Interp,
1251                                                         objPtr: *mut Tcl_Obj,
1252                                                         doublePtr:
1253                                                             *mut ::libc::c_double)
1254                                                        -> ::libc::c_int>,
1255    pub tcl_GetIndexFromObj: ::std::option::Option<extern "C" fn
1256                                                       (interp:
1257                                                            *mut Tcl_Interp,
1258                                                        objPtr: *mut Tcl_Obj,
1259                                                        tablePtr:
1260                                                            *const *const ::libc::c_char,
1261                                                        msg:
1262                                                            *const ::libc::c_char,
1263                                                        flags: ::libc::c_int,
1264                                                        indexPtr:
1265                                                            *mut ::libc::c_int)
1266                                                       -> ::libc::c_int>,
1267    pub tcl_GetInt: ::std::option::Option<extern "C" fn
1268                                              (interp: *mut Tcl_Interp,
1269                                               src: *const ::libc::c_char,
1270                                               intPtr: *mut ::libc::c_int)
1271                                              -> ::libc::c_int>,
1272    pub tcl_GetIntFromObj: ::std::option::Option<extern "C" fn
1273                                                     (interp: *mut Tcl_Interp,
1274                                                      objPtr: *mut Tcl_Obj,
1275                                                      intPtr:
1276                                                          *mut ::libc::c_int)
1277                                                     -> ::libc::c_int>,
1278    pub tcl_GetLongFromObj: ::std::option::Option<extern "C" fn
1279                                                      (interp:
1280                                                           *mut Tcl_Interp,
1281                                                       objPtr: *mut Tcl_Obj,
1282                                                       longPtr:
1283                                                           *mut ::libc::c_long)
1284                                                      -> ::libc::c_int>,
1285    pub tcl_GetObjType: ::std::option::Option<extern "C" fn
1286                                                  (typeName:
1287                                                       *const ::libc::c_char)
1288                                                  -> *const Tcl_ObjType>,
1289    pub tcl_GetStringFromObj: ::std::option::Option<extern "C" fn
1290                                                        (objPtr: *mut Tcl_Obj,
1291                                                         lengthPtr:
1292                                                             *mut ::libc::c_int)
1293                                                        ->
1294                                                            *mut ::libc::c_char>,
1295    pub tcl_InvalidateStringRep: ::std::option::Option<extern "C" fn
1296                                                           (objPtr:
1297                                                                *mut Tcl_Obj)
1298                                                           -> ()>,
1299    pub tcl_ListObjAppendList: ::std::option::Option<extern "C" fn
1300                                                         (interp:
1301                                                              *mut Tcl_Interp,
1302                                                          listPtr:
1303                                                              *mut Tcl_Obj,
1304                                                          elemListPtr:
1305                                                              *mut Tcl_Obj)
1306                                                         -> ::libc::c_int>,
1307    pub tcl_ListObjAppendElement: ::std::option::Option<extern "C" fn
1308                                                            (interp:
1309                                                                 *mut Tcl_Interp,
1310                                                             listPtr:
1311                                                                 *mut Tcl_Obj,
1312                                                             objPtr:
1313                                                                 *mut Tcl_Obj)
1314                                                            -> ::libc::c_int>,
1315    pub tcl_ListObjGetElements: ::std::option::Option<extern "C" fn
1316                                                          (interp:
1317                                                               *mut Tcl_Interp,
1318                                                           listPtr:
1319                                                               *mut Tcl_Obj,
1320                                                           objcPtr:
1321                                                               *mut ::libc::c_int,
1322                                                           objvPtr:
1323                                                               *mut *mut *mut Tcl_Obj)
1324                                                          -> ::libc::c_int>,
1325    pub tcl_ListObjIndex: ::std::option::Option<extern "C" fn
1326                                                    (interp: *mut Tcl_Interp,
1327                                                     listPtr: *mut Tcl_Obj,
1328                                                     index: ::libc::c_int,
1329                                                     objPtrPtr:
1330                                                         *mut *mut Tcl_Obj)
1331                                                    -> ::libc::c_int>,
1332    pub tcl_ListObjLength: ::std::option::Option<extern "C" fn
1333                                                     (interp: *mut Tcl_Interp,
1334                                                      listPtr: *mut Tcl_Obj,
1335                                                      lengthPtr:
1336                                                          *mut ::libc::c_int)
1337                                                     -> ::libc::c_int>,
1338    pub tcl_ListObjReplace: ::std::option::Option<extern "C" fn
1339                                                      (interp:
1340                                                           *mut Tcl_Interp,
1341                                                       listPtr: *mut Tcl_Obj,
1342                                                       first: ::libc::c_int,
1343                                                       count: ::libc::c_int,
1344                                                       objc: ::libc::c_int,
1345                                                       objv:
1346                                                           *const *mut Tcl_Obj)
1347                                                      -> ::libc::c_int>,
1348    pub tcl_NewBooleanObj: ::std::option::Option<extern "C" fn
1349                                                     (boolValue:
1350                                                          ::libc::c_int)
1351                                                     -> *mut Tcl_Obj>,
1352    pub tcl_NewByteArrayObj: ::std::option::Option<extern "C" fn
1353                                                       (bytes:
1354                                                            *const ::libc::c_uchar,
1355                                                        length: ::libc::c_int)
1356                                                       -> *mut Tcl_Obj>,
1357    pub tcl_NewDoubleObj: ::std::option::Option<extern "C" fn
1358                                                    (doubleValue:
1359                                                         ::libc::c_double)
1360                                                    -> *mut Tcl_Obj>,
1361    pub tcl_NewIntObj: ::std::option::Option<extern "C" fn
1362                                                 (intValue: ::libc::c_int)
1363                                                 -> *mut Tcl_Obj>,
1364    pub tcl_NewListObj: ::std::option::Option<extern "C" fn
1365                                                  (objc: ::libc::c_int,
1366                                                   objv: *const *mut Tcl_Obj)
1367                                                  -> *mut Tcl_Obj>,
1368    pub tcl_NewLongObj: ::std::option::Option<extern "C" fn
1369                                                  (longValue: ::libc::c_long)
1370                                                  -> *mut Tcl_Obj>,
1371    pub tcl_NewObj: ::std::option::Option<extern "C" fn() -> *mut Tcl_Obj>,
1372    pub tcl_NewStringObj: ::std::option::Option<extern "C" fn
1373                                                    (bytes:
1374                                                         *const ::libc::c_char,
1375                                                     length: ::libc::c_int)
1376                                                    -> *mut Tcl_Obj>,
1377    pub tcl_SetBooleanObj: ::std::option::Option<extern "C" fn
1378                                                     (objPtr: *mut Tcl_Obj,
1379                                                      boolValue:
1380                                                          ::libc::c_int)
1381                                                     -> ()>,
1382    pub tcl_SetByteArrayLength: ::std::option::Option<extern "C" fn
1383                                                          (objPtr:
1384                                                               *mut Tcl_Obj,
1385                                                           length:
1386                                                               ::libc::c_int)
1387                                                          ->
1388                                                              *mut ::libc::c_uchar>,
1389    pub tcl_SetByteArrayObj: ::std::option::Option<extern "C" fn
1390                                                       (objPtr: *mut Tcl_Obj,
1391                                                        bytes:
1392                                                            *const ::libc::c_uchar,
1393                                                        length: ::libc::c_int)
1394                                                       -> ()>,
1395    pub tcl_SetDoubleObj: ::std::option::Option<extern "C" fn
1396                                                    (objPtr: *mut Tcl_Obj,
1397                                                     doubleValue:
1398                                                         ::libc::c_double)
1399                                                    -> ()>,
1400    pub tcl_SetIntObj: ::std::option::Option<extern "C" fn
1401                                                 (objPtr: *mut Tcl_Obj,
1402                                                  intValue: ::libc::c_int)
1403                                                 -> ()>,
1404    pub tcl_SetListObj: ::std::option::Option<extern "C" fn
1405                                                  (objPtr: *mut Tcl_Obj,
1406                                                   objc: ::libc::c_int,
1407                                                   objv: *const *mut Tcl_Obj)
1408                                                  -> ()>,
1409    pub tcl_SetLongObj: ::std::option::Option<extern "C" fn
1410                                                  (objPtr: *mut Tcl_Obj,
1411                                                   longValue: ::libc::c_long)
1412                                                  -> ()>,
1413    pub tcl_SetObjLength: ::std::option::Option<extern "C" fn
1414                                                    (objPtr: *mut Tcl_Obj,
1415                                                     length: ::libc::c_int)
1416                                                    -> ()>,
1417    pub tcl_SetStringObj: ::std::option::Option<extern "C" fn
1418                                                    (objPtr: *mut Tcl_Obj,
1419                                                     bytes:
1420                                                         *const ::libc::c_char,
1421                                                     length: ::libc::c_int)
1422                                                    -> ()>,
1423    pub tcl_AddErrorInfo: ::std::option::Option<extern "C" fn
1424                                                    (interp: *mut Tcl_Interp,
1425                                                     message:
1426                                                         *const ::libc::c_char)
1427                                                    -> ()>,
1428    pub tcl_AddObjErrorInfo: ::std::option::Option<extern "C" fn
1429                                                       (interp:
1430                                                            *mut Tcl_Interp,
1431                                                        message:
1432                                                            *const ::libc::c_char,
1433                                                        length: ::libc::c_int)
1434                                                       -> ()>,
1435    pub tcl_AllowExceptions: ::std::option::Option<extern "C" fn
1436                                                       (interp:
1437                                                            *mut Tcl_Interp)
1438                                                       -> ()>,
1439    pub tcl_AppendElement: ::std::option::Option<extern "C" fn
1440                                                     (interp: *mut Tcl_Interp,
1441                                                      element:
1442                                                          *const ::libc::c_char)
1443                                                     -> ()>,
1444    pub tcl_AppendResult: ::std::option::Option<extern "C" fn
1445                                                    (interp:
1446                                                         *mut Tcl_Interp, ...)
1447                                                    -> ()>,
1448    pub tcl_AsyncCreate: ::std::option::Option<extern "C" fn
1449                                                   (_proc: *mut Tcl_AsyncProc,
1450                                                    clientData: ClientData)
1451                                                   -> Tcl_AsyncHandler>,
1452    pub tcl_AsyncDelete: ::std::option::Option<extern "C" fn
1453                                                   (async: Tcl_AsyncHandler)
1454                                                   -> ()>,
1455    pub tcl_AsyncInvoke: ::std::option::Option<extern "C" fn
1456                                                   (interp: *mut Tcl_Interp,
1457                                                    code: ::libc::c_int)
1458                                                   -> ::libc::c_int>,
1459    pub tcl_AsyncMark: ::std::option::Option<extern "C" fn
1460                                                 (async: Tcl_AsyncHandler)
1461                                                 -> ()>,
1462    pub tcl_AsyncReady: ::std::option::Option<extern "C" fn()
1463                                                  -> ::libc::c_int>,
1464    pub tcl_BackgroundError: ::std::option::Option<extern "C" fn
1465                                                       (interp:
1466                                                            *mut Tcl_Interp)
1467                                                       -> ()>,
1468    pub tcl_Backslash: ::std::option::Option<extern "C" fn
1469                                                 (src: *const ::libc::c_char,
1470                                                  readPtr: *mut ::libc::c_int)
1471                                                 -> ::libc::c_char>,
1472    pub tcl_BadChannelOption: ::std::option::Option<extern "C" fn
1473                                                        (interp:
1474                                                             *mut Tcl_Interp,
1475                                                         optionName:
1476                                                             *const ::libc::c_char,
1477                                                         optionList:
1478                                                             *const ::libc::c_char)
1479                                                        -> ::libc::c_int>,
1480    pub tcl_CallWhenDeleted: ::std::option::Option<extern "C" fn
1481                                                       (interp:
1482                                                            *mut Tcl_Interp,
1483                                                        _proc:
1484                                                            *mut Tcl_InterpDeleteProc,
1485                                                        clientData:
1486                                                            ClientData)
1487                                                       -> ()>,
1488    pub tcl_CancelIdleCall: ::std::option::Option<extern "C" fn
1489                                                      (idleProc:
1490                                                           *mut Tcl_IdleProc,
1491                                                       clientData: ClientData)
1492                                                      -> ()>,
1493    pub tcl_Close: ::std::option::Option<extern "C" fn
1494                                             (interp: *mut Tcl_Interp,
1495                                              chan: Tcl_Channel)
1496                                             -> ::libc::c_int>,
1497    pub tcl_CommandComplete: ::std::option::Option<extern "C" fn
1498                                                       (cmd:
1499                                                            *const ::libc::c_char)
1500                                                       -> ::libc::c_int>,
1501    pub tcl_Concat: ::std::option::Option<extern "C" fn
1502                                              (argc: ::libc::c_int,
1503                                               argv:
1504                                                   *const *const ::libc::c_char)
1505                                              -> *mut ::libc::c_char>,
1506    pub tcl_ConvertElement: ::std::option::Option<extern "C" fn
1507                                                      (src:
1508                                                           *const ::libc::c_char,
1509                                                       dst:
1510                                                           *mut ::libc::c_char,
1511                                                       flags: ::libc::c_int)
1512                                                      -> ::libc::c_int>,
1513    pub tcl_ConvertCountedElement: ::std::option::Option<extern "C" fn
1514                                                             (src:
1515                                                                  *const ::libc::c_char,
1516                                                              length:
1517                                                                  ::libc::c_int,
1518                                                              dst:
1519                                                                  *mut ::libc::c_char,
1520                                                              flags:
1521                                                                  ::libc::c_int)
1522                                                             ->
1523                                                                 ::libc::c_int>,
1524    pub tcl_CreateAlias: ::std::option::Option<extern "C" fn
1525                                                   (slave: *mut Tcl_Interp,
1526                                                    slaveCmd:
1527                                                        *const ::libc::c_char,
1528                                                    target: *mut Tcl_Interp,
1529                                                    targetCmd:
1530                                                        *const ::libc::c_char,
1531                                                    argc: ::libc::c_int,
1532                                                    argv:
1533                                                        *const *const ::libc::c_char)
1534                                                   -> ::libc::c_int>,
1535    pub tcl_CreateAliasObj: ::std::option::Option<extern "C" fn
1536                                                      (slave: *mut Tcl_Interp,
1537                                                       slaveCmd:
1538                                                           *const ::libc::c_char,
1539                                                       target:
1540                                                           *mut Tcl_Interp,
1541                                                       targetCmd:
1542                                                           *const ::libc::c_char,
1543                                                       objc: ::libc::c_int,
1544                                                       objv:
1545                                                           *const *mut Tcl_Obj)
1546                                                      -> ::libc::c_int>,
1547    pub tcl_CreateChannel: ::std::option::Option<extern "C" fn
1548                                                     (typePtr:
1549                                                          *const Tcl_ChannelType,
1550                                                      chanName:
1551                                                          *const ::libc::c_char,
1552                                                      instanceData:
1553                                                          ClientData,
1554                                                      mask: ::libc::c_int)
1555                                                     -> Tcl_Channel>,
1556    pub tcl_CreateChannelHandler: ::std::option::Option<extern "C" fn
1557                                                            (chan:
1558                                                                 Tcl_Channel,
1559                                                             mask:
1560                                                                 ::libc::c_int,
1561                                                             _proc:
1562                                                                 *mut Tcl_ChannelProc,
1563                                                             clientData:
1564                                                                 ClientData)
1565                                                            -> ()>,
1566    pub tcl_CreateCloseHandler: ::std::option::Option<extern "C" fn
1567                                                          (chan: Tcl_Channel,
1568                                                           _proc:
1569                                                               *mut Tcl_CloseProc,
1570                                                           clientData:
1571                                                               ClientData)
1572                                                          -> ()>,
1573    pub tcl_CreateCommand: ::std::option::Option<extern "C" fn
1574                                                     (interp: *mut Tcl_Interp,
1575                                                      cmdName:
1576                                                          *const ::libc::c_char,
1577                                                      _proc: *mut Tcl_CmdProc,
1578                                                      clientData: ClientData,
1579                                                      deleteProc:
1580                                                          *mut Tcl_CmdDeleteProc)
1581                                                     -> Tcl_Command>,
1582    pub tcl_CreateEventSource: ::std::option::Option<extern "C" fn
1583                                                         (setupProc:
1584                                                              *mut Tcl_EventSetupProc,
1585                                                          checkProc:
1586                                                              *mut Tcl_EventCheckProc,
1587                                                          clientData:
1588                                                              ClientData)
1589                                                         -> ()>,
1590    pub tcl_CreateExitHandler: ::std::option::Option<extern "C" fn
1591                                                         (_proc:
1592                                                              *mut Tcl_ExitProc,
1593                                                          clientData:
1594                                                              ClientData)
1595                                                         -> ()>,
1596    pub tcl_CreateInterp: ::std::option::Option<extern "C" fn()
1597                                                    -> *mut Tcl_Interp>,
1598    pub tcl_CreateMathFunc: ::std::option::Option<extern "C" fn
1599                                                      (interp:
1600                                                           *mut Tcl_Interp,
1601                                                       name:
1602                                                           *const ::libc::c_char,
1603                                                       numArgs: ::libc::c_int,
1604                                                       argTypes:
1605                                                           *mut Tcl_ValueType,
1606                                                       _proc:
1607                                                           *mut Tcl_MathProc,
1608                                                       clientData: ClientData)
1609                                                      -> ()>,
1610    pub tcl_CreateObjCommand: ::std::option::Option<extern "C" fn
1611                                                        (interp:
1612                                                             *mut Tcl_Interp,
1613                                                         cmdName:
1614                                                             *const ::libc::c_char,
1615                                                         _proc:
1616                                                             *mut Tcl_ObjCmdProc,
1617                                                         clientData:
1618                                                             ClientData,
1619                                                         deleteProc:
1620                                                             *mut Tcl_CmdDeleteProc)
1621                                                        -> Tcl_Command>,
1622    pub tcl_CreateSlave: ::std::option::Option<extern "C" fn
1623                                                   (interp: *mut Tcl_Interp,
1624                                                    slaveName:
1625                                                        *const ::libc::c_char,
1626                                                    isSafe: ::libc::c_int)
1627                                                   -> *mut Tcl_Interp>,
1628    pub tcl_CreateTimerHandler: ::std::option::Option<extern "C" fn
1629                                                          (milliseconds:
1630                                                               ::libc::c_int,
1631                                                           _proc:
1632                                                               *mut Tcl_TimerProc,
1633                                                           clientData:
1634                                                               ClientData)
1635                                                          -> Tcl_TimerToken>,
1636    pub tcl_CreateTrace: ::std::option::Option<extern "C" fn
1637                                                   (interp: *mut Tcl_Interp,
1638                                                    level: ::libc::c_int,
1639                                                    _proc:
1640                                                        *mut Tcl_CmdTraceProc,
1641                                                    clientData: ClientData)
1642                                                   -> Tcl_Trace>,
1643    pub tcl_DeleteAssocData: ::std::option::Option<extern "C" fn
1644                                                       (interp:
1645                                                            *mut Tcl_Interp,
1646                                                        name:
1647                                                            *const ::libc::c_char)
1648                                                       -> ()>,
1649    pub tcl_DeleteChannelHandler: ::std::option::Option<extern "C" fn
1650                                                            (chan:
1651                                                                 Tcl_Channel,
1652                                                             _proc:
1653                                                                 *mut Tcl_ChannelProc,
1654                                                             clientData:
1655                                                                 ClientData)
1656                                                            -> ()>,
1657    pub tcl_DeleteCloseHandler: ::std::option::Option<extern "C" fn
1658                                                          (chan: Tcl_Channel,
1659                                                           _proc:
1660                                                               *mut Tcl_CloseProc,
1661                                                           clientData:
1662                                                               ClientData)
1663                                                          -> ()>,
1664    pub tcl_DeleteCommand: ::std::option::Option<extern "C" fn
1665                                                     (interp: *mut Tcl_Interp,
1666                                                      cmdName:
1667                                                          *const ::libc::c_char)
1668                                                     -> ::libc::c_int>,
1669    pub tcl_DeleteCommandFromToken: ::std::option::Option<extern "C" fn
1670                                                              (interp:
1671                                                                   *mut Tcl_Interp,
1672                                                               command:
1673                                                                   Tcl_Command)
1674                                                              ->
1675                                                                  ::libc::c_int>,
1676    pub tcl_DeleteEvents: ::std::option::Option<extern "C" fn
1677                                                    (_proc:
1678                                                         *mut Tcl_EventDeleteProc,
1679                                                     clientData: ClientData)
1680                                                    -> ()>,
1681    pub tcl_DeleteEventSource: ::std::option::Option<extern "C" fn
1682                                                         (setupProc:
1683                                                              *mut Tcl_EventSetupProc,
1684                                                          checkProc:
1685                                                              *mut Tcl_EventCheckProc,
1686                                                          clientData:
1687                                                              ClientData)
1688                                                         -> ()>,
1689    pub tcl_DeleteExitHandler: ::std::option::Option<extern "C" fn
1690                                                         (_proc:
1691                                                              *mut Tcl_ExitProc,
1692                                                          clientData:
1693                                                              ClientData)
1694                                                         -> ()>,
1695    pub tcl_DeleteHashEntry: ::std::option::Option<extern "C" fn
1696                                                       (entryPtr:
1697                                                            *mut Tcl_HashEntry)
1698                                                       -> ()>,
1699    pub tcl_DeleteHashTable: ::std::option::Option<extern "C" fn
1700                                                       (tablePtr:
1701                                                            *mut Tcl_HashTable)
1702                                                       -> ()>,
1703    pub tcl_DeleteInterp: ::std::option::Option<extern "C" fn
1704                                                    (interp: *mut Tcl_Interp)
1705                                                    -> ()>,
1706    pub tcl_DetachPids: ::std::option::Option<extern "C" fn
1707                                                  (numPids: ::libc::c_int,
1708                                                   pidPtr: *mut Tcl_Pid)
1709                                                  -> ()>,
1710    pub tcl_DeleteTimerHandler: ::std::option::Option<extern "C" fn
1711                                                          (token:
1712                                                               Tcl_TimerToken)
1713                                                          -> ()>,
1714    pub tcl_DeleteTrace: ::std::option::Option<extern "C" fn
1715                                                   (interp: *mut Tcl_Interp,
1716                                                    trace: Tcl_Trace) -> ()>,
1717    pub tcl_DontCallWhenDeleted: ::std::option::Option<extern "C" fn
1718                                                           (interp:
1719                                                                *mut Tcl_Interp,
1720                                                            _proc:
1721                                                                *mut Tcl_InterpDeleteProc,
1722                                                            clientData:
1723                                                                ClientData)
1724                                                           -> ()>,
1725    pub tcl_DoOneEvent: ::std::option::Option<extern "C" fn
1726                                                  (flags: ::libc::c_int)
1727                                                  -> ::libc::c_int>,
1728    pub tcl_DoWhenIdle: ::std::option::Option<extern "C" fn
1729                                                  (_proc: *mut Tcl_IdleProc,
1730                                                   clientData: ClientData)
1731                                                  -> ()>,
1732    pub tcl_DStringAppend: ::std::option::Option<extern "C" fn
1733                                                     (dsPtr: *mut Tcl_DString,
1734                                                      bytes:
1735                                                          *const ::libc::c_char,
1736                                                      length: ::libc::c_int)
1737                                                     -> *mut ::libc::c_char>,
1738    pub tcl_DStringAppendElement: ::std::option::Option<extern "C" fn
1739                                                            (dsPtr:
1740                                                                 *mut Tcl_DString,
1741                                                             element:
1742                                                                 *const ::libc::c_char)
1743                                                            ->
1744                                                                *mut ::libc::c_char>,
1745    pub tcl_DStringEndSublist: ::std::option::Option<extern "C" fn
1746                                                         (dsPtr:
1747                                                              *mut Tcl_DString)
1748                                                         -> ()>,
1749    pub tcl_DStringFree: ::std::option::Option<extern "C" fn
1750                                                   (dsPtr: *mut Tcl_DString)
1751                                                   -> ()>,
1752    pub tcl_DStringGetResult: ::std::option::Option<extern "C" fn
1753                                                        (interp:
1754                                                             *mut Tcl_Interp,
1755                                                         dsPtr:
1756                                                             *mut Tcl_DString)
1757                                                        -> ()>,
1758    pub tcl_DStringInit: ::std::option::Option<extern "C" fn
1759                                                   (dsPtr: *mut Tcl_DString)
1760                                                   -> ()>,
1761    pub tcl_DStringResult: ::std::option::Option<extern "C" fn
1762                                                     (interp: *mut Tcl_Interp,
1763                                                      dsPtr: *mut Tcl_DString)
1764                                                     -> ()>,
1765    pub tcl_DStringSetLength: ::std::option::Option<extern "C" fn
1766                                                        (dsPtr:
1767                                                             *mut Tcl_DString,
1768                                                         length:
1769                                                             ::libc::c_int)
1770                                                        -> ()>,
1771    pub tcl_DStringStartSublist: ::std::option::Option<extern "C" fn
1772                                                           (dsPtr:
1773                                                                *mut Tcl_DString)
1774                                                           -> ()>,
1775    pub tcl_Eof: ::std::option::Option<extern "C" fn(chan: Tcl_Channel)
1776                                           -> ::libc::c_int>,
1777    pub tcl_ErrnoId: ::std::option::Option<extern "C" fn()
1778                                               -> *const ::libc::c_char>,
1779    pub tcl_ErrnoMsg: ::std::option::Option<extern "C" fn(err: ::libc::c_int)
1780                                                -> *const ::libc::c_char>,
1781    pub tcl_Eval: ::std::option::Option<extern "C" fn
1782                                            (interp: *mut Tcl_Interp,
1783                                             script: *const ::libc::c_char)
1784                                            -> ::libc::c_int>,
1785    pub tcl_EvalFile: ::std::option::Option<extern "C" fn
1786                                                (interp: *mut Tcl_Interp,
1787                                                 fileName:
1788                                                     *const ::libc::c_char)
1789                                                -> ::libc::c_int>,
1790    pub tcl_EvalObj: ::std::option::Option<extern "C" fn
1791                                               (interp: *mut Tcl_Interp,
1792                                                objPtr: *mut Tcl_Obj)
1793                                               -> ::libc::c_int>,
1794    pub tcl_EventuallyFree: ::std::option::Option<extern "C" fn
1795                                                      (clientData: ClientData,
1796                                                       freeProc:
1797                                                           *mut Tcl_FreeProc)
1798                                                      -> ()>,
1799    pub tcl_Exit: ::std::option::Option<extern "C" fn(status: ::libc::c_int)
1800                                            -> ()>,
1801    pub tcl_ExposeCommand: ::std::option::Option<extern "C" fn
1802                                                     (interp: *mut Tcl_Interp,
1803                                                      hiddenCmdToken:
1804                                                          *const ::libc::c_char,
1805                                                      cmdName:
1806                                                          *const ::libc::c_char)
1807                                                     -> ::libc::c_int>,
1808    pub tcl_ExprBoolean: ::std::option::Option<extern "C" fn
1809                                                   (interp: *mut Tcl_Interp,
1810                                                    expr:
1811                                                        *const ::libc::c_char,
1812                                                    ptr: *mut ::libc::c_int)
1813                                                   -> ::libc::c_int>,
1814    pub tcl_ExprBooleanObj: ::std::option::Option<extern "C" fn
1815                                                      (interp:
1816                                                           *mut Tcl_Interp,
1817                                                       objPtr: *mut Tcl_Obj,
1818                                                       ptr:
1819                                                           *mut ::libc::c_int)
1820                                                      -> ::libc::c_int>,
1821    pub tcl_ExprDouble: ::std::option::Option<extern "C" fn
1822                                                  (interp: *mut Tcl_Interp,
1823                                                   expr:
1824                                                       *const ::libc::c_char,
1825                                                   ptr: *mut ::libc::c_double)
1826                                                  -> ::libc::c_int>,
1827    pub tcl_ExprDoubleObj: ::std::option::Option<extern "C" fn
1828                                                     (interp: *mut Tcl_Interp,
1829                                                      objPtr: *mut Tcl_Obj,
1830                                                      ptr:
1831                                                          *mut ::libc::c_double)
1832                                                     -> ::libc::c_int>,
1833    pub tcl_ExprLong: ::std::option::Option<extern "C" fn
1834                                                (interp: *mut Tcl_Interp,
1835                                                 expr: *const ::libc::c_char,
1836                                                 ptr: *mut ::libc::c_long)
1837                                                -> ::libc::c_int>,
1838    pub tcl_ExprLongObj: ::std::option::Option<extern "C" fn
1839                                                   (interp: *mut Tcl_Interp,
1840                                                    objPtr: *mut Tcl_Obj,
1841                                                    ptr: *mut ::libc::c_long)
1842                                                   -> ::libc::c_int>,
1843    pub tcl_ExprObj: ::std::option::Option<extern "C" fn
1844                                               (interp: *mut Tcl_Interp,
1845                                                objPtr: *mut Tcl_Obj,
1846                                                resultPtrPtr:
1847                                                    *mut *mut Tcl_Obj)
1848                                               -> ::libc::c_int>,
1849    pub tcl_ExprString: ::std::option::Option<extern "C" fn
1850                                                  (interp: *mut Tcl_Interp,
1851                                                   expr:
1852                                                       *const ::libc::c_char)
1853                                                  -> ::libc::c_int>,
1854    pub tcl_Finalize: ::std::option::Option<extern "C" fn() -> ()>,
1855    pub tcl_FindExecutable: ::std::option::Option<extern "C" fn
1856                                                      (argv0:
1857                                                           *const ::libc::c_char)
1858                                                      -> ()>,
1859    pub tcl_FirstHashEntry: ::std::option::Option<extern "C" fn
1860                                                      (tablePtr:
1861                                                           *mut Tcl_HashTable,
1862                                                       searchPtr:
1863                                                           *mut Tcl_HashSearch)
1864                                                      -> *mut Tcl_HashEntry>,
1865    pub tcl_Flush: ::std::option::Option<extern "C" fn(chan: Tcl_Channel)
1866                                             -> ::libc::c_int>,
1867    pub tcl_FreeResult: ::std::option::Option<extern "C" fn
1868                                                  (interp: *mut Tcl_Interp)
1869                                                  -> ()>,
1870    pub tcl_GetAlias: ::std::option::Option<extern "C" fn
1871                                                (interp: *mut Tcl_Interp,
1872                                                 slaveCmd:
1873                                                     *const ::libc::c_char,
1874                                                 targetInterpPtr:
1875                                                     *mut *mut Tcl_Interp,
1876                                                 targetCmdPtr:
1877                                                     *mut *const ::libc::c_char,
1878                                                 argcPtr: *mut ::libc::c_int,
1879                                                 argvPtr:
1880                                                     *mut *mut *const ::libc::c_char)
1881                                                -> ::libc::c_int>,
1882    pub tcl_GetAliasObj: ::std::option::Option<extern "C" fn
1883                                                   (interp: *mut Tcl_Interp,
1884                                                    slaveCmd:
1885                                                        *const ::libc::c_char,
1886                                                    targetInterpPtr:
1887                                                        *mut *mut Tcl_Interp,
1888                                                    targetCmdPtr:
1889                                                        *mut *const ::libc::c_char,
1890                                                    objcPtr:
1891                                                        *mut ::libc::c_int,
1892                                                    objv:
1893                                                        *mut *mut *mut Tcl_Obj)
1894                                                   -> ::libc::c_int>,
1895    pub tcl_GetAssocData: ::std::option::Option<extern "C" fn
1896                                                    (interp: *mut Tcl_Interp,
1897                                                     name:
1898                                                         *const ::libc::c_char,
1899                                                     procPtr:
1900                                                         *mut *mut Tcl_InterpDeleteProc)
1901                                                    -> ClientData>,
1902    pub tcl_GetChannel: ::std::option::Option<extern "C" fn
1903                                                  (interp: *mut Tcl_Interp,
1904                                                   chanName:
1905                                                       *const ::libc::c_char,
1906                                                   modePtr:
1907                                                       *mut ::libc::c_int)
1908                                                  -> Tcl_Channel>,
1909    pub tcl_GetChannelBufferSize: ::std::option::Option<extern "C" fn
1910                                                            (chan:
1911                                                                 Tcl_Channel)
1912                                                            -> ::libc::c_int>,
1913    pub tcl_GetChannelHandle: ::std::option::Option<extern "C" fn
1914                                                        (chan: Tcl_Channel,
1915                                                         direction:
1916                                                             ::libc::c_int,
1917                                                         handlePtr:
1918                                                             *mut ClientData)
1919                                                        -> ::libc::c_int>,
1920    pub tcl_GetChannelInstanceData: ::std::option::Option<extern "C" fn
1921                                                              (chan:
1922                                                                   Tcl_Channel)
1923                                                              -> ClientData>,
1924    pub tcl_GetChannelMode: ::std::option::Option<extern "C" fn
1925                                                      (chan: Tcl_Channel)
1926                                                      -> ::libc::c_int>,
1927    pub tcl_GetChannelName: ::std::option::Option<extern "C" fn
1928                                                      (chan: Tcl_Channel)
1929                                                      ->
1930                                                          *const ::libc::c_char>,
1931    pub tcl_GetChannelOption: ::std::option::Option<extern "C" fn
1932                                                        (interp:
1933                                                             *mut Tcl_Interp,
1934                                                         chan: Tcl_Channel,
1935                                                         optionName:
1936                                                             *const ::libc::c_char,
1937                                                         dsPtr:
1938                                                             *mut Tcl_DString)
1939                                                        -> ::libc::c_int>,
1940    pub tcl_GetChannelType: ::std::option::Option<extern "C" fn
1941                                                      (chan: Tcl_Channel)
1942                                                      ->
1943                                                          *const Tcl_ChannelType>,
1944    pub tcl_GetCommandInfo: ::std::option::Option<extern "C" fn
1945                                                      (interp:
1946                                                           *mut Tcl_Interp,
1947                                                       cmdName:
1948                                                           *const ::libc::c_char,
1949                                                       infoPtr:
1950                                                           *mut Tcl_CmdInfo)
1951                                                      -> ::libc::c_int>,
1952    pub tcl_GetCommandName: ::std::option::Option<extern "C" fn
1953                                                      (interp:
1954                                                           *mut Tcl_Interp,
1955                                                       command: Tcl_Command)
1956                                                      ->
1957                                                          *const ::libc::c_char>,
1958    pub tcl_GetErrno: ::std::option::Option<extern "C" fn() -> ::libc::c_int>,
1959    pub tcl_GetHostName: ::std::option::Option<extern "C" fn()
1960                                                   -> *const ::libc::c_char>,
1961    pub tcl_GetInterpPath: ::std::option::Option<extern "C" fn
1962                                                     (askInterp:
1963                                                          *mut Tcl_Interp,
1964                                                      slaveInterp:
1965                                                          *mut Tcl_Interp)
1966                                                     -> ::libc::c_int>,
1967    pub tcl_GetMaster: ::std::option::Option<extern "C" fn
1968                                                 (interp: *mut Tcl_Interp)
1969                                                 -> *mut Tcl_Interp>,
1970    pub tcl_GetNameOfExecutable: ::std::option::Option<extern "C" fn()
1971                                                           ->
1972                                                               *const ::libc::c_char>,
1973    pub tcl_GetObjResult: ::std::option::Option<extern "C" fn
1974                                                    (interp: *mut Tcl_Interp)
1975                                                    -> *mut Tcl_Obj>,
1976    pub tcl_GetOpenFile: ::std::option::Option<extern "C" fn
1977                                                   (interp: *mut Tcl_Interp,
1978                                                    chanID:
1979                                                        *const ::libc::c_char,
1980                                                    forWriting: ::libc::c_int,
1981                                                    checkUsage: ::libc::c_int,
1982                                                    filePtr: *mut ClientData)
1983                                                   -> ::libc::c_int>,
1984    pub tcl_GetPathType: ::std::option::Option<extern "C" fn
1985                                                   (path:
1986                                                        *const ::libc::c_char)
1987                                                   -> Tcl_PathType>,
1988    pub tcl_Gets: ::std::option::Option<extern "C" fn
1989                                            (chan: Tcl_Channel,
1990                                             dsPtr: *mut Tcl_DString)
1991                                            -> ::libc::c_int>,
1992    pub tcl_GetsObj: ::std::option::Option<extern "C" fn
1993                                               (chan: Tcl_Channel,
1994                                                objPtr: *mut Tcl_Obj)
1995                                               -> ::libc::c_int>,
1996    pub tcl_GetServiceMode: ::std::option::Option<extern "C" fn()
1997                                                      -> ::libc::c_int>,
1998    pub tcl_GetSlave: ::std::option::Option<extern "C" fn
1999                                                (interp: *mut Tcl_Interp,
2000                                                 slaveName:
2001                                                     *const ::libc::c_char)
2002                                                -> *mut Tcl_Interp>,
2003    pub tcl_GetStdChannel: ::std::option::Option<extern "C" fn
2004                                                     (_type: ::libc::c_int)
2005                                                     -> Tcl_Channel>,
2006    pub tcl_GetStringResult: ::std::option::Option<extern "C" fn
2007                                                       (interp:
2008                                                            *mut Tcl_Interp)
2009                                                       ->
2010                                                           *const ::libc::c_char>,
2011    pub tcl_GetVar: ::std::option::Option<extern "C" fn
2012                                              (interp: *mut Tcl_Interp,
2013                                               varName: *const ::libc::c_char,
2014                                               flags: ::libc::c_int)
2015                                              -> *const ::libc::c_char>,
2016    pub tcl_GetVar2: ::std::option::Option<extern "C" fn
2017                                               (interp: *mut Tcl_Interp,
2018                                                part1: *const ::libc::c_char,
2019                                                part2: *const ::libc::c_char,
2020                                                flags: ::libc::c_int)
2021                                               -> *const ::libc::c_char>,
2022    pub tcl_GlobalEval: ::std::option::Option<extern "C" fn
2023                                                  (interp: *mut Tcl_Interp,
2024                                                   command:
2025                                                       *const ::libc::c_char)
2026                                                  -> ::libc::c_int>,
2027    pub tcl_GlobalEvalObj: ::std::option::Option<extern "C" fn
2028                                                     (interp: *mut Tcl_Interp,
2029                                                      objPtr: *mut Tcl_Obj)
2030                                                     -> ::libc::c_int>,
2031    pub tcl_HideCommand: ::std::option::Option<extern "C" fn
2032                                                   (interp: *mut Tcl_Interp,
2033                                                    cmdName:
2034                                                        *const ::libc::c_char,
2035                                                    hiddenCmdToken:
2036                                                        *const ::libc::c_char)
2037                                                   -> ::libc::c_int>,
2038    pub tcl_Init: ::std::option::Option<extern "C" fn(interp: *mut Tcl_Interp)
2039                                            -> ::libc::c_int>,
2040    pub tcl_InitHashTable: ::std::option::Option<extern "C" fn
2041                                                     (tablePtr:
2042                                                          *mut Tcl_HashTable,
2043                                                      keyType: ::libc::c_int)
2044                                                     -> ()>,
2045    pub tcl_InputBlocked: ::std::option::Option<extern "C" fn
2046                                                    (chan: Tcl_Channel)
2047                                                    -> ::libc::c_int>,
2048    pub tcl_InputBuffered: ::std::option::Option<extern "C" fn
2049                                                     (chan: Tcl_Channel)
2050                                                     -> ::libc::c_int>,
2051    pub tcl_InterpDeleted: ::std::option::Option<extern "C" fn
2052                                                     (interp: *mut Tcl_Interp)
2053                                                     -> ::libc::c_int>,
2054    pub tcl_IsSafe: ::std::option::Option<extern "C" fn
2055                                              (interp: *mut Tcl_Interp)
2056                                              -> ::libc::c_int>,
2057    pub tcl_JoinPath: ::std::option::Option<extern "C" fn
2058                                                (argc: ::libc::c_int,
2059                                                 argv:
2060                                                     *const *const ::libc::c_char,
2061                                                 resultPtr: *mut Tcl_DString)
2062                                                -> *mut ::libc::c_char>,
2063    pub tcl_LinkVar: ::std::option::Option<extern "C" fn
2064                                               (interp: *mut Tcl_Interp,
2065                                                varName:
2066                                                    *const ::libc::c_char,
2067                                                addr: *mut ::libc::c_char,
2068                                                _type: ::libc::c_int)
2069                                               -> ::libc::c_int>,
2070    pub reserved188: ::std::option::Option<extern "C" fn() -> ()>,
2071    pub tcl_MakeFileChannel: ::std::option::Option<extern "C" fn
2072                                                       (handle: ClientData,
2073                                                        mode: ::libc::c_int)
2074                                                       -> Tcl_Channel>,
2075    pub tcl_MakeSafe: ::std::option::Option<extern "C" fn
2076                                                (interp: *mut Tcl_Interp)
2077                                                -> ::libc::c_int>,
2078    pub tcl_MakeTcpClientChannel: ::std::option::Option<extern "C" fn
2079                                                            (tcpSocket:
2080                                                                 ClientData)
2081                                                            -> Tcl_Channel>,
2082    pub tcl_Merge: ::std::option::Option<extern "C" fn
2083                                             (argc: ::libc::c_int,
2084                                              argv:
2085                                                  *const *const ::libc::c_char)
2086                                             -> *mut ::libc::c_char>,
2087    pub tcl_NextHashEntry: ::std::option::Option<extern "C" fn
2088                                                     (searchPtr:
2089                                                          *mut Tcl_HashSearch)
2090                                                     -> *mut Tcl_HashEntry>,
2091    pub tcl_NotifyChannel: ::std::option::Option<extern "C" fn
2092                                                     (channel: Tcl_Channel,
2093                                                      mask: ::libc::c_int)
2094                                                     -> ()>,
2095    pub tcl_ObjGetVar2: ::std::option::Option<extern "C" fn
2096                                                  (interp: *mut Tcl_Interp,
2097                                                   part1Ptr: *mut Tcl_Obj,
2098                                                   part2Ptr: *mut Tcl_Obj,
2099                                                   flags: ::libc::c_int)
2100                                                  -> *mut Tcl_Obj>,
2101    pub tcl_ObjSetVar2: ::std::option::Option<extern "C" fn
2102                                                  (interp: *mut Tcl_Interp,
2103                                                   part1Ptr: *mut Tcl_Obj,
2104                                                   part2Ptr: *mut Tcl_Obj,
2105                                                   newValuePtr: *mut Tcl_Obj,
2106                                                   flags: ::libc::c_int)
2107                                                  -> *mut Tcl_Obj>,
2108    pub tcl_OpenCommandChannel: ::std::option::Option<extern "C" fn
2109                                                          (interp:
2110                                                               *mut Tcl_Interp,
2111                                                           argc:
2112                                                               ::libc::c_int,
2113                                                           argv:
2114                                                               *mut *const ::libc::c_char,
2115                                                           flags:
2116                                                               ::libc::c_int)
2117                                                          -> Tcl_Channel>,
2118    pub tcl_OpenFileChannel: ::std::option::Option<extern "C" fn
2119                                                       (interp:
2120                                                            *mut Tcl_Interp,
2121                                                        fileName:
2122                                                            *const ::libc::c_char,
2123                                                        modeString:
2124                                                            *const ::libc::c_char,
2125                                                        permissions:
2126                                                            ::libc::c_int)
2127                                                       -> Tcl_Channel>,
2128    pub tcl_OpenTcpClient: ::std::option::Option<extern "C" fn
2129                                                     (interp: *mut Tcl_Interp,
2130                                                      port: ::libc::c_int,
2131                                                      address:
2132                                                          *const ::libc::c_char,
2133                                                      myaddr:
2134                                                          *const ::libc::c_char,
2135                                                      myport: ::libc::c_int,
2136                                                      async: ::libc::c_int)
2137                                                     -> Tcl_Channel>,
2138    pub tcl_OpenTcpServer: ::std::option::Option<extern "C" fn
2139                                                     (interp: *mut Tcl_Interp,
2140                                                      port: ::libc::c_int,
2141                                                      host:
2142                                                          *const ::libc::c_char,
2143                                                      acceptProc:
2144                                                          *mut Tcl_TcpAcceptProc,
2145                                                      callbackData:
2146                                                          ClientData)
2147                                                     -> Tcl_Channel>,
2148    pub tcl_Preserve: ::std::option::Option<extern "C" fn(data: ClientData)
2149                                                -> ()>,
2150    pub tcl_PrintDouble: ::std::option::Option<extern "C" fn
2151                                                   (interp: *mut Tcl_Interp,
2152                                                    value: ::libc::c_double,
2153                                                    dst: *mut ::libc::c_char)
2154                                                   -> ()>,
2155    pub tcl_PutEnv: ::std::option::Option<extern "C" fn
2156                                              (assignment:
2157                                                   *const ::libc::c_char)
2158                                              -> ::libc::c_int>,
2159    pub tcl_PosixError: ::std::option::Option<extern "C" fn
2160                                                  (interp: *mut Tcl_Interp)
2161                                                  -> *const ::libc::c_char>,
2162    pub tcl_QueueEvent: ::std::option::Option<extern "C" fn
2163                                                  (evPtr: *mut Tcl_Event,
2164                                                   position:
2165                                                       Tcl_QueuePosition)
2166                                                  -> ()>,
2167    pub tcl_Read: ::std::option::Option<extern "C" fn
2168                                            (chan: Tcl_Channel,
2169                                             bufPtr: *mut ::libc::c_char,
2170                                             toRead: ::libc::c_int)
2171                                            -> ::libc::c_int>,
2172    pub tcl_ReapDetachedProcs: ::std::option::Option<extern "C" fn() -> ()>,
2173    pub tcl_RecordAndEval: ::std::option::Option<extern "C" fn
2174                                                     (interp: *mut Tcl_Interp,
2175                                                      cmd:
2176                                                          *const ::libc::c_char,
2177                                                      flags: ::libc::c_int)
2178                                                     -> ::libc::c_int>,
2179    pub tcl_RecordAndEvalObj: ::std::option::Option<extern "C" fn
2180                                                        (interp:
2181                                                             *mut Tcl_Interp,
2182                                                         cmdPtr: *mut Tcl_Obj,
2183                                                         flags: ::libc::c_int)
2184                                                        -> ::libc::c_int>,
2185    pub tcl_RegisterChannel: ::std::option::Option<extern "C" fn
2186                                                       (interp:
2187                                                            *mut Tcl_Interp,
2188                                                        chan: Tcl_Channel)
2189                                                       -> ()>,
2190    pub tcl_RegisterObjType: ::std::option::Option<extern "C" fn
2191                                                       (typePtr:
2192                                                            *const Tcl_ObjType)
2193                                                       -> ()>,
2194    pub tcl_RegExpCompile: ::std::option::Option<extern "C" fn
2195                                                     (interp: *mut Tcl_Interp,
2196                                                      pattern:
2197                                                          *const ::libc::c_char)
2198                                                     -> Tcl_RegExp>,
2199    pub tcl_RegExpExec: ::std::option::Option<extern "C" fn
2200                                                  (interp: *mut Tcl_Interp,
2201                                                   regexp: Tcl_RegExp,
2202                                                   text:
2203                                                       *const ::libc::c_char,
2204                                                   start:
2205                                                       *const ::libc::c_char)
2206                                                  -> ::libc::c_int>,
2207    pub tcl_RegExpMatch: ::std::option::Option<extern "C" fn
2208                                                   (interp: *mut Tcl_Interp,
2209                                                    text:
2210                                                        *const ::libc::c_char,
2211                                                    pattern:
2212                                                        *const ::libc::c_char)
2213                                                   -> ::libc::c_int>,
2214    pub tcl_RegExpRange: ::std::option::Option<extern "C" fn
2215                                                   (regexp: Tcl_RegExp,
2216                                                    index: ::libc::c_int,
2217                                                    startPtr:
2218                                                        *mut *const ::libc::c_char,
2219                                                    endPtr:
2220                                                        *mut *const ::libc::c_char)
2221                                                   -> ()>,
2222    pub tcl_Release: ::std::option::Option<extern "C" fn
2223                                               (clientData: ClientData)
2224                                               -> ()>,
2225    pub tcl_ResetResult: ::std::option::Option<extern "C" fn
2226                                                   (interp: *mut Tcl_Interp)
2227                                                   -> ()>,
2228    pub tcl_ScanElement: ::std::option::Option<extern "C" fn
2229                                                   (src:
2230                                                        *const ::libc::c_char,
2231                                                    flagPtr:
2232                                                        *mut ::libc::c_int)
2233                                                   -> ::libc::c_int>,
2234    pub tcl_ScanCountedElement: ::std::option::Option<extern "C" fn
2235                                                          (src:
2236                                                               *const ::libc::c_char,
2237                                                           length:
2238                                                               ::libc::c_int,
2239                                                           flagPtr:
2240                                                               *mut ::libc::c_int)
2241                                                          -> ::libc::c_int>,
2242    pub tcl_SeekOld: ::std::option::Option<extern "C" fn
2243                                               (chan: Tcl_Channel,
2244                                                offset: ::libc::c_int,
2245                                                mode: ::libc::c_int)
2246                                               -> ::libc::c_int>,
2247    pub tcl_ServiceAll: ::std::option::Option<extern "C" fn()
2248                                                  -> ::libc::c_int>,
2249    pub tcl_ServiceEvent: ::std::option::Option<extern "C" fn
2250                                                    (flags: ::libc::c_int)
2251                                                    -> ::libc::c_int>,
2252    pub tcl_SetAssocData: ::std::option::Option<extern "C" fn
2253                                                    (interp: *mut Tcl_Interp,
2254                                                     name:
2255                                                         *const ::libc::c_char,
2256                                                     _proc:
2257                                                         *mut Tcl_InterpDeleteProc,
2258                                                     clientData: ClientData)
2259                                                    -> ()>,
2260    pub tcl_SetChannelBufferSize: ::std::option::Option<extern "C" fn
2261                                                            (chan:
2262                                                                 Tcl_Channel,
2263                                                             sz:
2264                                                                 ::libc::c_int)
2265                                                            -> ()>,
2266    pub tcl_SetChannelOption: ::std::option::Option<extern "C" fn
2267                                                        (interp:
2268                                                             *mut Tcl_Interp,
2269                                                         chan: Tcl_Channel,
2270                                                         optionName:
2271                                                             *const ::libc::c_char,
2272                                                         newValue:
2273                                                             *const ::libc::c_char)
2274                                                        -> ::libc::c_int>,
2275    pub tcl_SetCommandInfo: ::std::option::Option<extern "C" fn
2276                                                      (interp:
2277                                                           *mut Tcl_Interp,
2278                                                       cmdName:
2279                                                           *const ::libc::c_char,
2280                                                       infoPtr:
2281                                                           *const Tcl_CmdInfo)
2282                                                      -> ::libc::c_int>,
2283    pub tcl_SetErrno: ::std::option::Option<extern "C" fn(err: ::libc::c_int)
2284                                                -> ()>,
2285    pub tcl_SetErrorCode: ::std::option::Option<extern "C" fn
2286                                                    (interp:
2287                                                         *mut Tcl_Interp, ...)
2288                                                    -> ()>,
2289    pub tcl_SetMaxBlockTime: ::std::option::Option<extern "C" fn
2290                                                       (timePtr:
2291                                                            *const Tcl_Time)
2292                                                       -> ()>,
2293    pub tcl_SetPanicProc: ::std::option::Option<extern "C" fn
2294                                                    (panicProc:
2295                                                         *mut Tcl_PanicProc)
2296                                                    -> ()>,
2297    pub tcl_SetRecursionLimit: ::std::option::Option<extern "C" fn
2298                                                         (interp:
2299                                                              *mut Tcl_Interp,
2300                                                          depth:
2301                                                              ::libc::c_int)
2302                                                         -> ::libc::c_int>,
2303    pub tcl_SetResult: ::std::option::Option<extern "C" fn
2304                                                 (interp: *mut Tcl_Interp,
2305                                                  result: *mut ::libc::c_char,
2306                                                  freeProc: *mut Tcl_FreeProc)
2307                                                 -> ()>,
2308    pub tcl_SetServiceMode: ::std::option::Option<extern "C" fn
2309                                                      (mode: ::libc::c_int)
2310                                                      -> ::libc::c_int>,
2311    pub tcl_SetObjErrorCode: ::std::option::Option<extern "C" fn
2312                                                       (interp:
2313                                                            *mut Tcl_Interp,
2314                                                        errorObjPtr:
2315                                                            *mut Tcl_Obj)
2316                                                       -> ()>,
2317    pub tcl_SetObjResult: ::std::option::Option<extern "C" fn
2318                                                    (interp: *mut Tcl_Interp,
2319                                                     resultObjPtr:
2320                                                         *mut Tcl_Obj) -> ()>,
2321    pub tcl_SetStdChannel: ::std::option::Option<extern "C" fn
2322                                                     (channel: Tcl_Channel,
2323                                                      _type: ::libc::c_int)
2324                                                     -> ()>,
2325    pub tcl_SetVar: ::std::option::Option<extern "C" fn
2326                                              (interp: *mut Tcl_Interp,
2327                                               varName: *const ::libc::c_char,
2328                                               newValue:
2329                                                   *const ::libc::c_char,
2330                                               flags: ::libc::c_int)
2331                                              -> *const ::libc::c_char>,
2332    pub tcl_SetVar2: ::std::option::Option<extern "C" fn
2333                                               (interp: *mut Tcl_Interp,
2334                                                part1: *const ::libc::c_char,
2335                                                part2: *const ::libc::c_char,
2336                                                newValue:
2337                                                    *const ::libc::c_char,
2338                                                flags: ::libc::c_int)
2339                                               -> *const ::libc::c_char>,
2340    pub tcl_SignalId: ::std::option::Option<extern "C" fn(sig: ::libc::c_int)
2341                                                -> *const ::libc::c_char>,
2342    pub tcl_SignalMsg: ::std::option::Option<extern "C" fn(sig: ::libc::c_int)
2343                                                 -> *const ::libc::c_char>,
2344    pub tcl_SourceRCFile: ::std::option::Option<extern "C" fn
2345                                                    (interp: *mut Tcl_Interp)
2346                                                    -> ()>,
2347    pub tcl_SplitList: ::std::option::Option<extern "C" fn
2348                                                 (interp: *mut Tcl_Interp,
2349                                                  listStr:
2350                                                      *const ::libc::c_char,
2351                                                  argcPtr: *mut ::libc::c_int,
2352                                                  argvPtr:
2353                                                      *mut *mut *const ::libc::c_char)
2354                                                 -> ::libc::c_int>,
2355    pub tcl_SplitPath: ::std::option::Option<extern "C" fn
2356                                                 (path: *const ::libc::c_char,
2357                                                  argcPtr: *mut ::libc::c_int,
2358                                                  argvPtr:
2359                                                      *mut *mut *const ::libc::c_char)
2360                                                 -> ()>,
2361    pub tcl_StaticPackage: ::std::option::Option<extern "C" fn
2362                                                     (interp: *mut Tcl_Interp,
2363                                                      pkgName:
2364                                                          *const ::libc::c_char,
2365                                                      initProc:
2366                                                          *mut Tcl_PackageInitProc,
2367                                                      safeInitProc:
2368                                                          *mut Tcl_PackageInitProc)
2369                                                     -> ()>,
2370    pub tcl_StringMatch: ::std::option::Option<extern "C" fn
2371                                                   (str:
2372                                                        *const ::libc::c_char,
2373                                                    pattern:
2374                                                        *const ::libc::c_char)
2375                                                   -> ::libc::c_int>,
2376    pub tcl_TellOld: ::std::option::Option<extern "C" fn(chan: Tcl_Channel)
2377                                               -> ::libc::c_int>,
2378    pub tcl_TraceVar: ::std::option::Option<extern "C" fn
2379                                                (interp: *mut Tcl_Interp,
2380                                                 varName:
2381                                                     *const ::libc::c_char,
2382                                                 flags: ::libc::c_int,
2383                                                 _proc: *mut Tcl_VarTraceProc,
2384                                                 clientData: ClientData)
2385                                                -> ::libc::c_int>,
2386    pub tcl_TraceVar2: ::std::option::Option<extern "C" fn
2387                                                 (interp: *mut Tcl_Interp,
2388                                                  part1:
2389                                                      *const ::libc::c_char,
2390                                                  part2:
2391                                                      *const ::libc::c_char,
2392                                                  flags: ::libc::c_int,
2393                                                  _proc:
2394                                                      *mut Tcl_VarTraceProc,
2395                                                  clientData: ClientData)
2396                                                 -> ::libc::c_int>,
2397    pub tcl_TranslateFileName: ::std::option::Option<extern "C" fn
2398                                                         (interp:
2399                                                              *mut Tcl_Interp,
2400                                                          name:
2401                                                              *const ::libc::c_char,
2402                                                          bufferPtr:
2403                                                              *mut Tcl_DString)
2404                                                         ->
2405                                                             *mut ::libc::c_char>,
2406    pub tcl_Ungets: ::std::option::Option<extern "C" fn
2407                                              (chan: Tcl_Channel,
2408                                               str: *const ::libc::c_char,
2409                                               len: ::libc::c_int,
2410                                               atHead: ::libc::c_int)
2411                                              -> ::libc::c_int>,
2412    pub tcl_UnlinkVar: ::std::option::Option<extern "C" fn
2413                                                 (interp: *mut Tcl_Interp,
2414                                                  varName:
2415                                                      *const ::libc::c_char)
2416                                                 -> ()>,
2417    pub tcl_UnregisterChannel: ::std::option::Option<extern "C" fn
2418                                                         (interp:
2419                                                              *mut Tcl_Interp,
2420                                                          chan: Tcl_Channel)
2421                                                         -> ::libc::c_int>,
2422    pub tcl_UnsetVar: ::std::option::Option<extern "C" fn
2423                                                (interp: *mut Tcl_Interp,
2424                                                 varName:
2425                                                     *const ::libc::c_char,
2426                                                 flags: ::libc::c_int)
2427                                                -> ::libc::c_int>,
2428    pub tcl_UnsetVar2: ::std::option::Option<extern "C" fn
2429                                                 (interp: *mut Tcl_Interp,
2430                                                  part1:
2431                                                      *const ::libc::c_char,
2432                                                  part2:
2433                                                      *const ::libc::c_char,
2434                                                  flags: ::libc::c_int)
2435                                                 -> ::libc::c_int>,
2436    pub tcl_UntraceVar: ::std::option::Option<extern "C" fn
2437                                                  (interp: *mut Tcl_Interp,
2438                                                   varName:
2439                                                       *const ::libc::c_char,
2440                                                   flags: ::libc::c_int,
2441                                                   _proc:
2442                                                       *mut Tcl_VarTraceProc,
2443                                                   clientData: ClientData)
2444                                                  -> ()>,
2445    pub tcl_UntraceVar2: ::std::option::Option<extern "C" fn
2446                                                   (interp: *mut Tcl_Interp,
2447                                                    part1:
2448                                                        *const ::libc::c_char,
2449                                                    part2:
2450                                                        *const ::libc::c_char,
2451                                                    flags: ::libc::c_int,
2452                                                    _proc:
2453                                                        *mut Tcl_VarTraceProc,
2454                                                    clientData: ClientData)
2455                                                   -> ()>,
2456    pub tcl_UpdateLinkedVar: ::std::option::Option<extern "C" fn
2457                                                       (interp:
2458                                                            *mut Tcl_Interp,
2459                                                        varName:
2460                                                            *const ::libc::c_char)
2461                                                       -> ()>,
2462    pub tcl_UpVar: ::std::option::Option<extern "C" fn
2463                                             (interp: *mut Tcl_Interp,
2464                                              frameName:
2465                                                  *const ::libc::c_char,
2466                                              varName: *const ::libc::c_char,
2467                                              localName:
2468                                                  *const ::libc::c_char,
2469                                              flags: ::libc::c_int)
2470                                             -> ::libc::c_int>,
2471    pub tcl_UpVar2: ::std::option::Option<extern "C" fn
2472                                              (interp: *mut Tcl_Interp,
2473                                               frameName:
2474                                                   *const ::libc::c_char,
2475                                               part1: *const ::libc::c_char,
2476                                               part2: *const ::libc::c_char,
2477                                               localName:
2478                                                   *const ::libc::c_char,
2479                                               flags: ::libc::c_int)
2480                                              -> ::libc::c_int>,
2481    pub tcl_VarEval: ::std::option::Option<extern "C" fn
2482                                               (interp: *mut Tcl_Interp, ...)
2483                                               -> ::libc::c_int>,
2484    pub tcl_VarTraceInfo: ::std::option::Option<extern "C" fn
2485                                                    (interp: *mut Tcl_Interp,
2486                                                     varName:
2487                                                         *const ::libc::c_char,
2488                                                     flags: ::libc::c_int,
2489                                                     procPtr:
2490                                                         *mut Tcl_VarTraceProc,
2491                                                     prevClientData:
2492                                                         ClientData)
2493                                                    -> ClientData>,
2494    pub tcl_VarTraceInfo2: ::std::option::Option<extern "C" fn
2495                                                     (interp: *mut Tcl_Interp,
2496                                                      part1:
2497                                                          *const ::libc::c_char,
2498                                                      part2:
2499                                                          *const ::libc::c_char,
2500                                                      flags: ::libc::c_int,
2501                                                      procPtr:
2502                                                          *mut Tcl_VarTraceProc,
2503                                                      prevClientData:
2504                                                          ClientData)
2505                                                     -> ClientData>,
2506    pub tcl_Write: ::std::option::Option<extern "C" fn
2507                                             (chan: Tcl_Channel,
2508                                              s: *const ::libc::c_char,
2509                                              slen: ::libc::c_int)
2510                                             -> ::libc::c_int>,
2511    pub tcl_WrongNumArgs: ::std::option::Option<extern "C" fn
2512                                                    (interp: *mut Tcl_Interp,
2513                                                     objc: ::libc::c_int,
2514                                                     objv:
2515                                                         *const *mut Tcl_Obj,
2516                                                     message:
2517                                                         *const ::libc::c_char)
2518                                                    -> ()>,
2519    pub tcl_DumpActiveMemory: ::std::option::Option<extern "C" fn
2520                                                        (fileName:
2521                                                             *const ::libc::c_char)
2522                                                        -> ::libc::c_int>,
2523    pub tcl_ValidateAllMemory: ::std::option::Option<extern "C" fn
2524                                                         (file:
2525                                                              *const ::libc::c_char,
2526                                                          line: ::libc::c_int)
2527                                                         -> ()>,
2528/*    pub tcl_AppendResultVA: ::std::option::Option<extern "C" fn
2529                                                      (interp:
2530                                                           *mut Tcl_Interp,
2531                                                       argList: va_list)
2532                                                      -> ()>,*/
2533/*    pub tcl_AppendStringsToObjVA: ::std::option::Option<extern "C" fn
2534                                                            (objPtr:
2535                                                                 *mut Tcl_Obj,
2536                                                             argList: va_list)
2537                                                            -> ()>,*/
2538    pub tcl_HashStats: ::std::option::Option<extern "C" fn
2539                                                 (tablePtr:
2540                                                      *mut Tcl_HashTable)
2541                                                 -> *mut ::libc::c_char>,
2542    pub tcl_ParseVar: ::std::option::Option<extern "C" fn
2543                                                (interp: *mut Tcl_Interp,
2544                                                 start: *const ::libc::c_char,
2545                                                 termPtr:
2546                                                     *mut *const ::libc::c_char)
2547                                                -> *const ::libc::c_char>,
2548    pub tcl_PkgPresent: ::std::option::Option<extern "C" fn
2549                                                  (interp: *mut Tcl_Interp,
2550                                                   name:
2551                                                       *const ::libc::c_char,
2552                                                   version:
2553                                                       *const ::libc::c_char,
2554                                                   exact: ::libc::c_int)
2555                                                  -> *const ::libc::c_char>,
2556    pub tcl_PkgPresentEx: ::std::option::Option<extern "C" fn
2557                                                    (interp: *mut Tcl_Interp,
2558                                                     name:
2559                                                         *const ::libc::c_char,
2560                                                     version:
2561                                                         *const ::libc::c_char,
2562                                                     exact: ::libc::c_int,
2563                                                     clientDataPtr:
2564                                                         *mut ::libc::c_void)
2565                                                    -> *const ::libc::c_char>,
2566    pub tcl_PkgProvide: ::std::option::Option<extern "C" fn
2567                                                  (interp: *mut Tcl_Interp,
2568                                                   name:
2569                                                       *const ::libc::c_char,
2570                                                   version:
2571                                                       *const ::libc::c_char)
2572                                                  -> ::libc::c_int>,
2573    pub tcl_PkgRequire: ::std::option::Option<extern "C" fn
2574                                                  (interp: *mut Tcl_Interp,
2575                                                   name:
2576                                                       *const ::libc::c_char,
2577                                                   version:
2578                                                       *const ::libc::c_char,
2579                                                   exact: ::libc::c_int)
2580                                                  -> *const ::libc::c_char>,
2581/*    pub tcl_SetErrorCodeVA: ::std::option::Option<extern "C" fn
2582                                                      (interp:
2583                                                           *mut Tcl_Interp,
2584                                                       argList: va_list)
2585                                                      -> ()>,*/
2586/*    pub tcl_VarEvalVA: ::std::option::Option<extern "C" fn
2587                                                 (interp: *mut Tcl_Interp,
2588                                                  argList: va_list)
2589                                                 -> ::libc::c_int>,*/
2590    pub tcl_WaitPid: ::std::option::Option<extern "C" fn
2591                                               (pid: Tcl_Pid,
2592                                                statPtr: *mut ::libc::c_int,
2593                                                options: ::libc::c_int)
2594                                               -> Tcl_Pid>,
2595/*    pub tcl_PanicVA: ::std::option::Option<extern "C" fn
2596                                               (format: *const ::libc::c_char,
2597                                                argList: va_list) -> ()>,*/
2598    pub tcl_GetVersion: ::std::option::Option<extern "C" fn
2599                                                  (major: *mut ::libc::c_int,
2600                                                   minor: *mut ::libc::c_int,
2601                                                   patchLevel:
2602                                                       *mut ::libc::c_int,
2603                                                   _type: *mut ::libc::c_int)
2604                                                  -> ()>,
2605    pub tcl_InitMemory: ::std::option::Option<extern "C" fn
2606                                                  (interp: *mut Tcl_Interp)
2607                                                  -> ()>,
2608    pub tcl_StackChannel: ::std::option::Option<extern "C" fn
2609                                                    (interp: *mut Tcl_Interp,
2610                                                     typePtr:
2611                                                         *const Tcl_ChannelType,
2612                                                     instanceData: ClientData,
2613                                                     mask: ::libc::c_int,
2614                                                     prevChan: Tcl_Channel)
2615                                                    -> Tcl_Channel>,
2616    pub tcl_UnstackChannel: ::std::option::Option<extern "C" fn
2617                                                      (interp:
2618                                                           *mut Tcl_Interp,
2619                                                       chan: Tcl_Channel)
2620                                                      -> ::libc::c_int>,
2621    pub tcl_GetStackedChannel: ::std::option::Option<extern "C" fn
2622                                                         (chan: Tcl_Channel)
2623                                                         -> Tcl_Channel>,
2624    pub tcl_SetMainLoop: ::std::option::Option<extern "C" fn
2625                                                   (_proc:
2626                                                        *mut Tcl_MainLoopProc)
2627                                                   -> ()>,
2628    pub reserved285: ::std::option::Option<extern "C" fn() -> ()>,
2629    pub tcl_AppendObjToObj: ::std::option::Option<extern "C" fn
2630                                                      (objPtr: *mut Tcl_Obj,
2631                                                       appendObjPtr:
2632                                                           *mut Tcl_Obj)
2633                                                      -> ()>,
2634    pub tcl_CreateEncoding: ::std::option::Option<extern "C" fn
2635                                                      (typePtr:
2636                                                           *const Tcl_EncodingType)
2637                                                      -> Tcl_Encoding>,
2638    pub tcl_CreateThreadExitHandler: ::std::option::Option<extern "C" fn
2639                                                               (_proc:
2640                                                                    *mut Tcl_ExitProc,
2641                                                                clientData:
2642                                                                    ClientData)
2643                                                               -> ()>,
2644    pub tcl_DeleteThreadExitHandler: ::std::option::Option<extern "C" fn
2645                                                               (_proc:
2646                                                                    *mut Tcl_ExitProc,
2647                                                                clientData:
2648                                                                    ClientData)
2649                                                               -> ()>,
2650    pub tcl_DiscardResult: ::std::option::Option<extern "C" fn
2651                                                     (statePtr:
2652                                                          *mut Tcl_SavedResult)
2653                                                     -> ()>,
2654    pub tcl_EvalEx: ::std::option::Option<extern "C" fn
2655                                              (interp: *mut Tcl_Interp,
2656                                               script: *const ::libc::c_char,
2657                                               numBytes: ::libc::c_int,
2658                                               flags: ::libc::c_int)
2659                                              -> ::libc::c_int>,
2660    pub tcl_EvalObjv: ::std::option::Option<extern "C" fn
2661                                                (interp: *mut Tcl_Interp,
2662                                                 objc: ::libc::c_int,
2663                                                 objv: *const *mut Tcl_Obj,
2664                                                 flags: ::libc::c_int)
2665                                                -> ::libc::c_int>,
2666    pub tcl_EvalObjEx: ::std::option::Option<extern "C" fn
2667                                                 (interp: *mut Tcl_Interp,
2668                                                  objPtr: *mut Tcl_Obj,
2669                                                  flags: ::libc::c_int)
2670                                                 -> ::libc::c_int>,
2671    pub tcl_ExitThread: ::std::option::Option<extern "C" fn
2672                                                  (status: ::libc::c_int)
2673                                                  -> ()>,
2674    pub tcl_ExternalToUtf: ::std::option::Option<extern "C" fn
2675                                                     (interp: *mut Tcl_Interp,
2676                                                      encoding: Tcl_Encoding,
2677                                                      src:
2678                                                          *const ::libc::c_char,
2679                                                      srcLen: ::libc::c_int,
2680                                                      flags: ::libc::c_int,
2681                                                      statePtr:
2682                                                          *mut Tcl_EncodingState,
2683                                                      dst:
2684                                                          *mut ::libc::c_char,
2685                                                      dstLen: ::libc::c_int,
2686                                                      srcReadPtr:
2687                                                          *mut ::libc::c_int,
2688                                                      dstWrotePtr:
2689                                                          *mut ::libc::c_int,
2690                                                      dstCharsPtr:
2691                                                          *mut ::libc::c_int)
2692                                                     -> ::libc::c_int>,
2693    pub tcl_ExternalToUtfDString: ::std::option::Option<extern "C" fn
2694                                                            (encoding:
2695                                                                 Tcl_Encoding,
2696                                                             src:
2697                                                                 *const ::libc::c_char,
2698                                                             srcLen:
2699                                                                 ::libc::c_int,
2700                                                             dsPtr:
2701                                                                 *mut Tcl_DString)
2702                                                            ->
2703                                                                *mut ::libc::c_char>,
2704    pub tcl_FinalizeThread: ::std::option::Option<extern "C" fn() -> ()>,
2705    pub tcl_FinalizeNotifier: ::std::option::Option<extern "C" fn
2706                                                        (clientData:
2707                                                             ClientData)
2708                                                        -> ()>,
2709    pub tcl_FreeEncoding: ::std::option::Option<extern "C" fn
2710                                                    (encoding: Tcl_Encoding)
2711                                                    -> ()>,
2712    pub tcl_GetCurrentThread: ::std::option::Option<extern "C" fn()
2713                                                        -> Tcl_ThreadId>,
2714    pub tcl_GetEncoding: ::std::option::Option<extern "C" fn
2715                                                   (interp: *mut Tcl_Interp,
2716                                                    name:
2717                                                        *const ::libc::c_char)
2718                                                   -> Tcl_Encoding>,
2719    pub tcl_GetEncodingName: ::std::option::Option<extern "C" fn
2720                                                       (encoding:
2721                                                            Tcl_Encoding)
2722                                                       ->
2723                                                           *const ::libc::c_char>,
2724    pub tcl_GetEncodingNames: ::std::option::Option<extern "C" fn
2725                                                        (interp:
2726                                                             *mut Tcl_Interp)
2727                                                        -> ()>,
2728    pub tcl_GetIndexFromObjStruct: ::std::option::Option<extern "C" fn
2729                                                             (interp:
2730                                                                  *mut Tcl_Interp,
2731                                                              objPtr:
2732                                                                  *mut Tcl_Obj,
2733                                                              tablePtr:
2734                                                                  *const ::libc::c_void,
2735                                                              offset:
2736                                                                  ::libc::c_int,
2737                                                              msg:
2738                                                                  *const ::libc::c_char,
2739                                                              flags:
2740                                                                  ::libc::c_int,
2741                                                              indexPtr:
2742                                                                  *mut ::libc::c_int)
2743                                                             ->
2744                                                                 ::libc::c_int>,
2745    pub tcl_GetThreadData: ::std::option::Option<extern "C" fn
2746                                                     (keyPtr:
2747                                                          *mut Tcl_ThreadDataKey,
2748                                                      size: ::libc::c_int)
2749                                                     -> *mut ::libc::c_void>,
2750    pub tcl_GetVar2Ex: ::std::option::Option<extern "C" fn
2751                                                 (interp: *mut Tcl_Interp,
2752                                                  part1:
2753                                                      *const ::libc::c_char,
2754                                                  part2:
2755                                                      *const ::libc::c_char,
2756                                                  flags: ::libc::c_int)
2757                                                 -> *mut Tcl_Obj>,
2758    pub tcl_InitNotifier: ::std::option::Option<extern "C" fn()
2759                                                    -> ClientData>,
2760    pub tcl_MutexLock: ::std::option::Option<extern "C" fn
2761                                                 (mutexPtr: *mut Tcl_Mutex)
2762                                                 -> ()>,
2763    pub tcl_MutexUnlock: ::std::option::Option<extern "C" fn
2764                                                   (mutexPtr: *mut Tcl_Mutex)
2765                                                   -> ()>,
2766    pub tcl_ConditionNotify: ::std::option::Option<extern "C" fn
2767                                                       (condPtr:
2768                                                            *mut Tcl_Condition)
2769                                                       -> ()>,
2770    pub tcl_ConditionWait: ::std::option::Option<extern "C" fn
2771                                                     (condPtr:
2772                                                          *mut Tcl_Condition,
2773                                                      mutexPtr:
2774                                                          *mut Tcl_Mutex,
2775                                                      timePtr:
2776                                                          *const Tcl_Time)
2777                                                     -> ()>,
2778    pub tcl_NumUtfChars: ::std::option::Option<extern "C" fn
2779                                                   (src:
2780                                                        *const ::libc::c_char,
2781                                                    length: ::libc::c_int)
2782                                                   -> ::libc::c_int>,
2783    pub tcl_ReadChars: ::std::option::Option<extern "C" fn
2784                                                 (channel: Tcl_Channel,
2785                                                  objPtr: *mut Tcl_Obj,
2786                                                  charsToRead: ::libc::c_int,
2787                                                  appendFlag: ::libc::c_int)
2788                                                 -> ::libc::c_int>,
2789    pub tcl_RestoreResult: ::std::option::Option<extern "C" fn
2790                                                     (interp: *mut Tcl_Interp,
2791                                                      statePtr:
2792                                                          *mut Tcl_SavedResult)
2793                                                     -> ()>,
2794    pub tcl_SaveResult: ::std::option::Option<extern "C" fn
2795                                                  (interp: *mut Tcl_Interp,
2796                                                   statePtr:
2797                                                       *mut Tcl_SavedResult)
2798                                                  -> ()>,
2799    pub tcl_SetSystemEncoding: ::std::option::Option<extern "C" fn
2800                                                         (interp:
2801                                                              *mut Tcl_Interp,
2802                                                          name:
2803                                                              *const ::libc::c_char)
2804                                                         -> ::libc::c_int>,
2805    pub tcl_SetVar2Ex: ::std::option::Option<extern "C" fn
2806                                                 (interp: *mut Tcl_Interp,
2807                                                  part1:
2808                                                      *const ::libc::c_char,
2809                                                  part2:
2810                                                      *const ::libc::c_char,
2811                                                  newValuePtr: *mut Tcl_Obj,
2812                                                  flags: ::libc::c_int)
2813                                                 -> *mut Tcl_Obj>,
2814    pub tcl_ThreadAlert: ::std::option::Option<extern "C" fn
2815                                                   (threadId: Tcl_ThreadId)
2816                                                   -> ()>,
2817    pub tcl_ThreadQueueEvent: ::std::option::Option<extern "C" fn
2818                                                        (threadId:
2819                                                             Tcl_ThreadId,
2820                                                         evPtr:
2821                                                             *mut Tcl_Event,
2822                                                         position:
2823                                                             Tcl_QueuePosition)
2824                                                        -> ()>,
2825    pub tcl_UniCharAtIndex: ::std::option::Option<extern "C" fn
2826                                                      (src:
2827                                                           *const ::libc::c_char,
2828                                                       index: ::libc::c_int)
2829                                                      -> Tcl_UniChar>,
2830    pub tcl_UniCharToLower: ::std::option::Option<extern "C" fn
2831                                                      (ch: ::libc::c_int)
2832                                                      -> Tcl_UniChar>,
2833    pub tcl_UniCharToTitle: ::std::option::Option<extern "C" fn
2834                                                      (ch: ::libc::c_int)
2835                                                      -> Tcl_UniChar>,
2836    pub tcl_UniCharToUpper: ::std::option::Option<extern "C" fn
2837                                                      (ch: ::libc::c_int)
2838                                                      -> Tcl_UniChar>,
2839    pub tcl_UniCharToUtf: ::std::option::Option<extern "C" fn
2840                                                    (ch: ::libc::c_int,
2841                                                     buf: *mut ::libc::c_char)
2842                                                    -> ::libc::c_int>,
2843    pub tcl_UtfAtIndex: ::std::option::Option<extern "C" fn
2844                                                  (src: *const ::libc::c_char,
2845                                                   index: ::libc::c_int)
2846                                                  -> *const ::libc::c_char>,
2847    pub tcl_UtfCharComplete: ::std::option::Option<extern "C" fn
2848                                                       (src:
2849                                                            *const ::libc::c_char,
2850                                                        length: ::libc::c_int)
2851                                                       -> ::libc::c_int>,
2852    pub tcl_UtfBackslash: ::std::option::Option<extern "C" fn
2853                                                    (src:
2854                                                         *const ::libc::c_char,
2855                                                     readPtr:
2856                                                         *mut ::libc::c_int,
2857                                                     dst: *mut ::libc::c_char)
2858                                                    -> ::libc::c_int>,
2859    pub tcl_UtfFindFirst: ::std::option::Option<extern "C" fn
2860                                                    (src:
2861                                                         *const ::libc::c_char,
2862                                                     ch: ::libc::c_int)
2863                                                    -> *const ::libc::c_char>,
2864    pub tcl_UtfFindLast: ::std::option::Option<extern "C" fn
2865                                                   (src:
2866                                                        *const ::libc::c_char,
2867                                                    ch: ::libc::c_int)
2868                                                   -> *const ::libc::c_char>,
2869    pub tcl_UtfNext: ::std::option::Option<extern "C" fn
2870                                               (src: *const ::libc::c_char)
2871                                               -> *const ::libc::c_char>,
2872    pub tcl_UtfPrev: ::std::option::Option<extern "C" fn
2873                                               (src: *const ::libc::c_char,
2874                                                start: *const ::libc::c_char)
2875                                               -> *const ::libc::c_char>,
2876    pub tcl_UtfToExternal: ::std::option::Option<extern "C" fn
2877                                                     (interp: *mut Tcl_Interp,
2878                                                      encoding: Tcl_Encoding,
2879                                                      src:
2880                                                          *const ::libc::c_char,
2881                                                      srcLen: ::libc::c_int,
2882                                                      flags: ::libc::c_int,
2883                                                      statePtr:
2884                                                          *mut Tcl_EncodingState,
2885                                                      dst:
2886                                                          *mut ::libc::c_char,
2887                                                      dstLen: ::libc::c_int,
2888                                                      srcReadPtr:
2889                                                          *mut ::libc::c_int,
2890                                                      dstWrotePtr:
2891                                                          *mut ::libc::c_int,
2892                                                      dstCharsPtr:
2893                                                          *mut ::libc::c_int)
2894                                                     -> ::libc::c_int>,
2895    pub tcl_UtfToExternalDString: ::std::option::Option<extern "C" fn
2896                                                            (encoding:
2897                                                                 Tcl_Encoding,
2898                                                             src:
2899                                                                 *const ::libc::c_char,
2900                                                             srcLen:
2901                                                                 ::libc::c_int,
2902                                                             dsPtr:
2903                                                                 *mut Tcl_DString)
2904                                                            ->
2905                                                                *mut ::libc::c_char>,
2906    pub tcl_UtfToLower: ::std::option::Option<extern "C" fn
2907                                                  (src: *mut ::libc::c_char)
2908                                                  -> ::libc::c_int>,
2909    pub tcl_UtfToTitle: ::std::option::Option<extern "C" fn
2910                                                  (src: *mut ::libc::c_char)
2911                                                  -> ::libc::c_int>,
2912    pub tcl_UtfToUniChar: ::std::option::Option<extern "C" fn
2913                                                    (src:
2914                                                         *const ::libc::c_char,
2915                                                     chPtr: *mut Tcl_UniChar)
2916                                                    -> ::libc::c_int>,
2917    pub tcl_UtfToUpper: ::std::option::Option<extern "C" fn
2918                                                  (src: *mut ::libc::c_char)
2919                                                  -> ::libc::c_int>,
2920    pub tcl_WriteChars: ::std::option::Option<extern "C" fn
2921                                                  (chan: Tcl_Channel,
2922                                                   src: *const ::libc::c_char,
2923                                                   srcLen: ::libc::c_int)
2924                                                  -> ::libc::c_int>,
2925    pub tcl_WriteObj: ::std::option::Option<extern "C" fn
2926                                                (chan: Tcl_Channel,
2927                                                 objPtr: *mut Tcl_Obj)
2928                                                -> ::libc::c_int>,
2929    pub tcl_GetString: ::std::option::Option<extern "C" fn
2930                                                 (objPtr: *mut Tcl_Obj)
2931                                                 -> *mut ::libc::c_char>,
2932    pub tcl_GetDefaultEncodingDir: ::std::option::Option<extern "C" fn()
2933                                                             ->
2934                                                                 *const ::libc::c_char>,
2935    pub tcl_SetDefaultEncodingDir: ::std::option::Option<extern "C" fn
2936                                                             (path:
2937                                                                  *const ::libc::c_char)
2938                                                             -> ()>,
2939    pub tcl_AlertNotifier: ::std::option::Option<extern "C" fn
2940                                                     (clientData: ClientData)
2941                                                     -> ()>,
2942    pub tcl_ServiceModeHook: ::std::option::Option<extern "C" fn
2943                                                       (mode: ::libc::c_int)
2944                                                       -> ()>,
2945    pub tcl_UniCharIsAlnum: ::std::option::Option<extern "C" fn
2946                                                      (ch: ::libc::c_int)
2947                                                      -> ::libc::c_int>,
2948    pub tcl_UniCharIsAlpha: ::std::option::Option<extern "C" fn
2949                                                      (ch: ::libc::c_int)
2950                                                      -> ::libc::c_int>,
2951    pub tcl_UniCharIsDigit: ::std::option::Option<extern "C" fn
2952                                                      (ch: ::libc::c_int)
2953                                                      -> ::libc::c_int>,
2954    pub tcl_UniCharIsLower: ::std::option::Option<extern "C" fn
2955                                                      (ch: ::libc::c_int)
2956                                                      -> ::libc::c_int>,
2957    pub tcl_UniCharIsSpace: ::std::option::Option<extern "C" fn
2958                                                      (ch: ::libc::c_int)
2959                                                      -> ::libc::c_int>,
2960    pub tcl_UniCharIsUpper: ::std::option::Option<extern "C" fn
2961                                                      (ch: ::libc::c_int)
2962                                                      -> ::libc::c_int>,
2963    pub tcl_UniCharIsWordChar: ::std::option::Option<extern "C" fn
2964                                                         (ch: ::libc::c_int)
2965                                                         -> ::libc::c_int>,
2966    pub tcl_UniCharLen: ::std::option::Option<extern "C" fn
2967                                                  (uniStr: *const Tcl_UniChar)
2968                                                  -> ::libc::c_int>,
2969    pub tcl_UniCharNcmp: ::std::option::Option<extern "C" fn
2970                                                   (ucs: *const Tcl_UniChar,
2971                                                    uct: *const Tcl_UniChar,
2972                                                    numChars: ::libc::c_ulong)
2973                                                   -> ::libc::c_int>,
2974    pub tcl_UniCharToUtfDString: ::std::option::Option<extern "C" fn
2975                                                           (uniStr:
2976                                                                *const Tcl_UniChar,
2977                                                            uniLength:
2978                                                                ::libc::c_int,
2979                                                            dsPtr:
2980                                                                *mut Tcl_DString)
2981                                                           ->
2982                                                               *mut ::libc::c_char>,
2983    pub tcl_UtfToUniCharDString: ::std::option::Option<extern "C" fn
2984                                                           (src:
2985                                                                *const ::libc::c_char,
2986                                                            length:
2987                                                                ::libc::c_int,
2988                                                            dsPtr:
2989                                                                *mut Tcl_DString)
2990                                                           ->
2991                                                               *mut Tcl_UniChar>,
2992    pub tcl_GetRegExpFromObj: ::std::option::Option<extern "C" fn
2993                                                        (interp:
2994                                                             *mut Tcl_Interp,
2995                                                         patObj: *mut Tcl_Obj,
2996                                                         flags: ::libc::c_int)
2997                                                        -> Tcl_RegExp>,
2998    pub tcl_EvalTokens: ::std::option::Option<extern "C" fn
2999                                                  (interp: *mut Tcl_Interp,
3000                                                   tokenPtr: *mut Tcl_Token,
3001                                                   count: ::libc::c_int)
3002                                                  -> *mut Tcl_Obj>,
3003    pub tcl_FreeParse: ::std::option::Option<extern "C" fn
3004                                                 (parsePtr: *mut Tcl_Parse)
3005                                                 -> ()>,
3006    pub tcl_LogCommandInfo: ::std::option::Option<extern "C" fn
3007                                                      (interp:
3008                                                           *mut Tcl_Interp,
3009                                                       script:
3010                                                           *const ::libc::c_char,
3011                                                       command:
3012                                                           *const ::libc::c_char,
3013                                                       length: ::libc::c_int)
3014                                                      -> ()>,
3015    pub tcl_ParseBraces: ::std::option::Option<extern "C" fn
3016                                                   (interp: *mut Tcl_Interp,
3017                                                    start:
3018                                                        *const ::libc::c_char,
3019                                                    numBytes: ::libc::c_int,
3020                                                    parsePtr: *mut Tcl_Parse,
3021                                                    append: ::libc::c_int,
3022                                                    termPtr:
3023                                                        *mut *const ::libc::c_char)
3024                                                   -> ::libc::c_int>,
3025    pub tcl_ParseCommand: ::std::option::Option<extern "C" fn
3026                                                    (interp: *mut Tcl_Interp,
3027                                                     start:
3028                                                         *const ::libc::c_char,
3029                                                     numBytes: ::libc::c_int,
3030                                                     nested: ::libc::c_int,
3031                                                     parsePtr: *mut Tcl_Parse)
3032                                                    -> ::libc::c_int>,
3033    pub tcl_ParseExpr: ::std::option::Option<extern "C" fn
3034                                                 (interp: *mut Tcl_Interp,
3035                                                  start:
3036                                                      *const ::libc::c_char,
3037                                                  numBytes: ::libc::c_int,
3038                                                  parsePtr: *mut Tcl_Parse)
3039                                                 -> ::libc::c_int>,
3040    pub tcl_ParseQuotedString: ::std::option::Option<extern "C" fn
3041                                                         (interp:
3042                                                              *mut Tcl_Interp,
3043                                                          start:
3044                                                              *const ::libc::c_char,
3045                                                          numBytes:
3046                                                              ::libc::c_int,
3047                                                          parsePtr:
3048                                                              *mut Tcl_Parse,
3049                                                          append:
3050                                                              ::libc::c_int,
3051                                                          termPtr:
3052                                                              *mut *const ::libc::c_char)
3053                                                         -> ::libc::c_int>,
3054    pub tcl_ParseVarName: ::std::option::Option<extern "C" fn
3055                                                    (interp: *mut Tcl_Interp,
3056                                                     start:
3057                                                         *const ::libc::c_char,
3058                                                     numBytes: ::libc::c_int,
3059                                                     parsePtr: *mut Tcl_Parse,
3060                                                     append: ::libc::c_int)
3061                                                    -> ::libc::c_int>,
3062    pub tcl_GetCwd: ::std::option::Option<extern "C" fn
3063                                              (interp: *mut Tcl_Interp,
3064                                               cwdPtr: *mut Tcl_DString)
3065                                              -> *mut ::libc::c_char>,
3066    pub tcl_Chdir: ::std::option::Option<extern "C" fn
3067                                             (dirName: *const ::libc::c_char)
3068                                             -> ::libc::c_int>,
3069    pub tcl_Access: ::std::option::Option<extern "C" fn
3070                                              (path: *const ::libc::c_char,
3071                                               mode: ::libc::c_int)
3072                                              -> ::libc::c_int>,
3073    pub tcl_Stat: ::std::option::Option<extern "C" fn
3074                                            (path: *const ::libc::c_char,
3075                                             bufPtr: *mut Struct_stat)
3076                                            -> ::libc::c_int>,
3077    pub tcl_UtfNcmp: ::std::option::Option<extern "C" fn
3078                                               (s1: *const ::libc::c_char,
3079                                                s2: *const ::libc::c_char,
3080                                                n: ::libc::c_ulong)
3081                                               -> ::libc::c_int>,
3082    pub tcl_UtfNcasecmp: ::std::option::Option<extern "C" fn
3083                                                   (s1: *const ::libc::c_char,
3084                                                    s2: *const ::libc::c_char,
3085                                                    n: ::libc::c_ulong)
3086                                                   -> ::libc::c_int>,
3087    pub tcl_StringCaseMatch: ::std::option::Option<extern "C" fn
3088                                                       (str:
3089                                                            *const ::libc::c_char,
3090                                                        pattern:
3091                                                            *const ::libc::c_char,
3092                                                        nocase: ::libc::c_int)
3093                                                       -> ::libc::c_int>,
3094    pub tcl_UniCharIsControl: ::std::option::Option<extern "C" fn
3095                                                        (ch: ::libc::c_int)
3096                                                        -> ::libc::c_int>,
3097    pub tcl_UniCharIsGraph: ::std::option::Option<extern "C" fn
3098                                                      (ch: ::libc::c_int)
3099                                                      -> ::libc::c_int>,
3100    pub tcl_UniCharIsPrint: ::std::option::Option<extern "C" fn
3101                                                      (ch: ::libc::c_int)
3102                                                      -> ::libc::c_int>,
3103    pub tcl_UniCharIsPunct: ::std::option::Option<extern "C" fn
3104                                                      (ch: ::libc::c_int)
3105                                                      -> ::libc::c_int>,
3106    pub tcl_RegExpExecObj: ::std::option::Option<extern "C" fn
3107                                                     (interp: *mut Tcl_Interp,
3108                                                      regexp: Tcl_RegExp,
3109                                                      textObj: *mut Tcl_Obj,
3110                                                      offset: ::libc::c_int,
3111                                                      nmatches: ::libc::c_int,
3112                                                      flags: ::libc::c_int)
3113                                                     -> ::libc::c_int>,
3114    pub tcl_RegExpGetInfo: ::std::option::Option<extern "C" fn
3115                                                     (regexp: Tcl_RegExp,
3116                                                      infoPtr:
3117                                                          *mut Tcl_RegExpInfo)
3118                                                     -> ()>,
3119    pub tcl_NewUnicodeObj: ::std::option::Option<extern "C" fn
3120                                                     (unicode:
3121                                                          *const Tcl_UniChar,
3122                                                      numChars: ::libc::c_int)
3123                                                     -> *mut Tcl_Obj>,
3124    pub tcl_SetUnicodeObj: ::std::option::Option<extern "C" fn
3125                                                     (objPtr: *mut Tcl_Obj,
3126                                                      unicode:
3127                                                          *const Tcl_UniChar,
3128                                                      numChars: ::libc::c_int)
3129                                                     -> ()>,
3130    pub tcl_GetCharLength: ::std::option::Option<extern "C" fn
3131                                                     (objPtr: *mut Tcl_Obj)
3132                                                     -> ::libc::c_int>,
3133    pub tcl_GetUniChar: ::std::option::Option<extern "C" fn
3134                                                  (objPtr: *mut Tcl_Obj,
3135                                                   index: ::libc::c_int)
3136                                                  -> Tcl_UniChar>,
3137    pub tcl_GetUnicode: ::std::option::Option<extern "C" fn
3138                                                  (objPtr: *mut Tcl_Obj)
3139                                                  -> *mut Tcl_UniChar>,
3140    pub tcl_GetRange: ::std::option::Option<extern "C" fn
3141                                                (objPtr: *mut Tcl_Obj,
3142                                                 first: ::libc::c_int,
3143                                                 last: ::libc::c_int)
3144                                                -> *mut Tcl_Obj>,
3145    pub tcl_AppendUnicodeToObj: ::std::option::Option<extern "C" fn
3146                                                          (objPtr:
3147                                                               *mut Tcl_Obj,
3148                                                           unicode:
3149                                                               *const Tcl_UniChar,
3150                                                           length:
3151                                                               ::libc::c_int)
3152                                                          -> ()>,
3153    pub tcl_RegExpMatchObj: ::std::option::Option<extern "C" fn
3154                                                      (interp:
3155                                                           *mut Tcl_Interp,
3156                                                       textObj: *mut Tcl_Obj,
3157                                                       patternObj:
3158                                                           *mut Tcl_Obj)
3159                                                      -> ::libc::c_int>,
3160    pub tcl_SetNotifier: ::std::option::Option<extern "C" fn
3161                                                   (notifierProcPtr:
3162                                                        *mut Tcl_NotifierProcs)
3163                                                   -> ()>,
3164    pub tcl_GetAllocMutex: ::std::option::Option<extern "C" fn()
3165                                                     -> *mut Tcl_Mutex>,
3166    pub tcl_GetChannelNames: ::std::option::Option<extern "C" fn
3167                                                       (interp:
3168                                                            *mut Tcl_Interp)
3169                                                       -> ::libc::c_int>,
3170    pub tcl_GetChannelNamesEx: ::std::option::Option<extern "C" fn
3171                                                         (interp:
3172                                                              *mut Tcl_Interp,
3173                                                          pattern:
3174                                                              *const ::libc::c_char)
3175                                                         -> ::libc::c_int>,
3176    pub tcl_ProcObjCmd: ::std::option::Option<extern "C" fn
3177                                                  (clientData: ClientData,
3178                                                   interp: *mut Tcl_Interp,
3179                                                   objc: ::libc::c_int,
3180                                                   objv: *const *mut Tcl_Obj)
3181                                                  -> ::libc::c_int>,
3182    pub tcl_ConditionFinalize: ::std::option::Option<extern "C" fn
3183                                                         (condPtr:
3184                                                              *mut Tcl_Condition)
3185                                                         -> ()>,
3186    pub tcl_MutexFinalize: ::std::option::Option<extern "C" fn
3187                                                     (mutex: *mut Tcl_Mutex)
3188                                                     -> ()>,
3189    pub tcl_CreateThread: ::std::option::Option<extern "C" fn
3190                                                    (idPtr: *mut Tcl_ThreadId,
3191                                                     _proc:
3192                                                         *mut Tcl_ThreadCreateProc,
3193                                                     clientData: ClientData,
3194                                                     stackSize: ::libc::c_int,
3195                                                     flags: ::libc::c_int)
3196                                                    -> ::libc::c_int>,
3197    pub tcl_ReadRaw: ::std::option::Option<extern "C" fn
3198                                               (chan: Tcl_Channel,
3199                                                dst: *mut ::libc::c_char,
3200                                                bytesToRead: ::libc::c_int)
3201                                               -> ::libc::c_int>,
3202    pub tcl_WriteRaw: ::std::option::Option<extern "C" fn
3203                                                (chan: Tcl_Channel,
3204                                                 src: *const ::libc::c_char,
3205                                                 srcLen: ::libc::c_int)
3206                                                -> ::libc::c_int>,
3207    pub tcl_GetTopChannel: ::std::option::Option<extern "C" fn
3208                                                     (chan: Tcl_Channel)
3209                                                     -> Tcl_Channel>,
3210    pub tcl_ChannelBuffered: ::std::option::Option<extern "C" fn
3211                                                       (chan: Tcl_Channel)
3212                                                       -> ::libc::c_int>,
3213    pub tcl_ChannelName: ::std::option::Option<extern "C" fn
3214                                                   (chanTypePtr:
3215                                                        *const Tcl_ChannelType)
3216                                                   -> *const ::libc::c_char>,
3217    pub tcl_ChannelVersion: ::std::option::Option<extern "C" fn
3218                                                      (chanTypePtr:
3219                                                           *const Tcl_ChannelType)
3220                                                      ->
3221                                                          Tcl_ChannelTypeVersion>,
3222    pub tcl_ChannelBlockModeProc: ::std::option::Option<extern "C" fn
3223                                                            (chanTypePtr:
3224                                                                 *const Tcl_ChannelType)
3225                                                            ->
3226                                                                *mut Tcl_DriverBlockModeProc>,
3227    pub tcl_ChannelCloseProc: ::std::option::Option<extern "C" fn
3228                                                        (chanTypePtr:
3229                                                             *const Tcl_ChannelType)
3230                                                        ->
3231                                                            *mut Tcl_DriverCloseProc>,
3232    pub tcl_ChannelClose2Proc: ::std::option::Option<extern "C" fn
3233                                                         (chanTypePtr:
3234                                                              *const Tcl_ChannelType)
3235                                                         ->
3236                                                             *mut Tcl_DriverClose2Proc>,
3237    pub tcl_ChannelInputProc: ::std::option::Option<extern "C" fn
3238                                                        (chanTypePtr:
3239                                                             *const Tcl_ChannelType)
3240                                                        ->
3241                                                            *mut Tcl_DriverInputProc>,
3242    pub tcl_ChannelOutputProc: ::std::option::Option<extern "C" fn
3243                                                         (chanTypePtr:
3244                                                              *const Tcl_ChannelType)
3245                                                         ->
3246                                                             *mut Tcl_DriverOutputProc>,
3247    pub tcl_ChannelSeekProc: ::std::option::Option<extern "C" fn
3248                                                       (chanTypePtr:
3249                                                            *const Tcl_ChannelType)
3250                                                       ->
3251                                                           *mut Tcl_DriverSeekProc>,
3252    pub tcl_ChannelSetOptionProc: ::std::option::Option<extern "C" fn
3253                                                            (chanTypePtr:
3254                                                                 *const Tcl_ChannelType)
3255                                                            ->
3256                                                                *mut Tcl_DriverSetOptionProc>,
3257    pub tcl_ChannelGetOptionProc: ::std::option::Option<extern "C" fn
3258                                                            (chanTypePtr:
3259                                                                 *const Tcl_ChannelType)
3260                                                            ->
3261                                                                *mut Tcl_DriverGetOptionProc>,
3262    pub tcl_ChannelWatchProc: ::std::option::Option<extern "C" fn
3263                                                        (chanTypePtr:
3264                                                             *const Tcl_ChannelType)
3265                                                        ->
3266                                                            *mut Tcl_DriverWatchProc>,
3267    pub tcl_ChannelGetHandleProc: ::std::option::Option<extern "C" fn
3268                                                            (chanTypePtr:
3269                                                                 *const Tcl_ChannelType)
3270                                                            ->
3271                                                                *mut Tcl_DriverGetHandleProc>,
3272    pub tcl_ChannelFlushProc: ::std::option::Option<extern "C" fn
3273                                                        (chanTypePtr:
3274                                                             *const Tcl_ChannelType)
3275                                                        ->
3276                                                            *mut Tcl_DriverFlushProc>,
3277    pub tcl_ChannelHandlerProc: ::std::option::Option<extern "C" fn
3278                                                          (chanTypePtr:
3279                                                               *const Tcl_ChannelType)
3280                                                          ->
3281                                                              *mut Tcl_DriverHandlerProc>,
3282    pub tcl_JoinThread: ::std::option::Option<extern "C" fn
3283                                                  (threadId: Tcl_ThreadId,
3284                                                   result: *mut ::libc::c_int)
3285                                                  -> ::libc::c_int>,
3286    pub tcl_IsChannelShared: ::std::option::Option<extern "C" fn
3287                                                       (channel: Tcl_Channel)
3288                                                       -> ::libc::c_int>,
3289    pub tcl_IsChannelRegistered: ::std::option::Option<extern "C" fn
3290                                                           (interp:
3291                                                                *mut Tcl_Interp,
3292                                                            channel:
3293                                                                Tcl_Channel)
3294                                                           -> ::libc::c_int>,
3295    pub tcl_CutChannel: ::std::option::Option<extern "C" fn
3296                                                  (channel: Tcl_Channel)
3297                                                  -> ()>,
3298    pub tcl_SpliceChannel: ::std::option::Option<extern "C" fn
3299                                                     (channel: Tcl_Channel)
3300                                                     -> ()>,
3301    pub tcl_ClearChannelHandlers: ::std::option::Option<extern "C" fn
3302                                                            (channel:
3303                                                                 Tcl_Channel)
3304                                                            -> ()>,
3305    pub tcl_IsChannelExisting: ::std::option::Option<extern "C" fn
3306                                                         (channelName:
3307                                                              *const ::libc::c_char)
3308                                                         -> ::libc::c_int>,
3309    pub tcl_UniCharNcasecmp: ::std::option::Option<extern "C" fn
3310                                                       (ucs:
3311                                                            *const Tcl_UniChar,
3312                                                        uct:
3313                                                            *const Tcl_UniChar,
3314                                                        numChars:
3315                                                            ::libc::c_ulong)
3316                                                       -> ::libc::c_int>,
3317    pub tcl_UniCharCaseMatch: ::std::option::Option<extern "C" fn
3318                                                        (uniStr:
3319                                                             *const Tcl_UniChar,
3320                                                         uniPattern:
3321                                                             *const Tcl_UniChar,
3322                                                         nocase:
3323                                                             ::libc::c_int)
3324                                                        -> ::libc::c_int>,
3325    pub tcl_FindHashEntry: ::std::option::Option<extern "C" fn
3326                                                     (tablePtr:
3327                                                          *mut Tcl_HashTable,
3328                                                      key:
3329                                                          *const ::libc::c_void)
3330                                                     -> *mut Tcl_HashEntry>,
3331    pub tcl_CreateHashEntry: ::std::option::Option<extern "C" fn
3332                                                       (tablePtr:
3333                                                            *mut Tcl_HashTable,
3334                                                        key:
3335                                                            *const ::libc::c_void,
3336                                                        newPtr:
3337                                                            *mut ::libc::c_int)
3338                                                       -> *mut Tcl_HashEntry>,
3339    pub tcl_InitCustomHashTable: ::std::option::Option<extern "C" fn
3340                                                           (tablePtr:
3341                                                                *mut Tcl_HashTable,
3342                                                            keyType:
3343                                                                ::libc::c_int,
3344                                                            typePtr:
3345                                                                *const Tcl_HashKeyType)
3346                                                           -> ()>,
3347    pub tcl_InitObjHashTable: ::std::option::Option<extern "C" fn
3348                                                        (tablePtr:
3349                                                             *mut Tcl_HashTable)
3350                                                        -> ()>,
3351    pub tcl_CommandTraceInfo: ::std::option::Option<extern "C" fn
3352                                                        (interp:
3353                                                             *mut Tcl_Interp,
3354                                                         varName:
3355                                                             *const ::libc::c_char,
3356                                                         flags: ::libc::c_int,
3357                                                         procPtr:
3358                                                             *mut Tcl_CommandTraceProc,
3359                                                         prevClientData:
3360                                                             ClientData)
3361                                                        -> ClientData>,
3362    pub tcl_TraceCommand: ::std::option::Option<extern "C" fn
3363                                                    (interp: *mut Tcl_Interp,
3364                                                     varName:
3365                                                         *const ::libc::c_char,
3366                                                     flags: ::libc::c_int,
3367                                                     _proc:
3368                                                         *mut Tcl_CommandTraceProc,
3369                                                     clientData: ClientData)
3370                                                    -> ::libc::c_int>,
3371    pub tcl_UntraceCommand: ::std::option::Option<extern "C" fn
3372                                                      (interp:
3373                                                           *mut Tcl_Interp,
3374                                                       varName:
3375                                                           *const ::libc::c_char,
3376                                                       flags: ::libc::c_int,
3377                                                       _proc:
3378                                                           *mut Tcl_CommandTraceProc,
3379                                                       clientData: ClientData)
3380                                                      -> ()>,
3381    pub tcl_AttemptAlloc: ::std::option::Option<extern "C" fn
3382                                                    (size: ::libc::c_uint)
3383                                                    -> *mut ::libc::c_char>,
3384    pub tcl_AttemptDbCkalloc: ::std::option::Option<extern "C" fn
3385                                                        (size: ::libc::c_uint,
3386                                                         file:
3387                                                             *const ::libc::c_char,
3388                                                         line: ::libc::c_int)
3389                                                        ->
3390                                                            *mut ::libc::c_char>,
3391    pub tcl_AttemptRealloc: ::std::option::Option<extern "C" fn
3392                                                      (ptr:
3393                                                           *mut ::libc::c_char,
3394                                                       size: ::libc::c_uint)
3395                                                      -> *mut ::libc::c_char>,
3396    pub tcl_AttemptDbCkrealloc: ::std::option::Option<extern "C" fn
3397                                                          (ptr:
3398                                                               *mut ::libc::c_char,
3399                                                           size:
3400                                                               ::libc::c_uint,
3401                                                           file:
3402                                                               *const ::libc::c_char,
3403                                                           line:
3404                                                               ::libc::c_int)
3405                                                          ->
3406                                                              *mut ::libc::c_char>,
3407    pub tcl_AttemptSetObjLength: ::std::option::Option<extern "C" fn
3408                                                           (objPtr:
3409                                                                *mut Tcl_Obj,
3410                                                            length:
3411                                                                ::libc::c_int)
3412                                                           -> ::libc::c_int>,
3413    pub tcl_GetChannelThread: ::std::option::Option<extern "C" fn
3414                                                        (channel: Tcl_Channel)
3415                                                        -> Tcl_ThreadId>,
3416    pub tcl_GetUnicodeFromObj: ::std::option::Option<extern "C" fn
3417                                                         (objPtr:
3418                                                              *mut Tcl_Obj,
3419                                                          lengthPtr:
3420                                                              *mut ::libc::c_int)
3421                                                         -> *mut Tcl_UniChar>,
3422    pub tcl_GetMathFuncInfo: ::std::option::Option<extern "C" fn
3423                                                       (interp:
3424                                                            *mut Tcl_Interp,
3425                                                        name:
3426                                                            *const ::libc::c_char,
3427                                                        numArgsPtr:
3428                                                            *mut ::libc::c_int,
3429                                                        argTypesPtr:
3430                                                            *mut *mut Tcl_ValueType,
3431                                                        procPtr:
3432                                                            *mut *mut Tcl_MathProc,
3433                                                        clientDataPtr:
3434                                                            *mut ClientData)
3435                                                       -> ::libc::c_int>,
3436    pub tcl_ListMathFuncs: ::std::option::Option<extern "C" fn
3437                                                     (interp: *mut Tcl_Interp,
3438                                                      pattern:
3439                                                          *const ::libc::c_char)
3440                                                     -> *mut Tcl_Obj>,
3441    pub tcl_SubstObj: ::std::option::Option<extern "C" fn
3442                                                (interp: *mut Tcl_Interp,
3443                                                 objPtr: *mut Tcl_Obj,
3444                                                 flags: ::libc::c_int)
3445                                                -> *mut Tcl_Obj>,
3446    pub tcl_DetachChannel: ::std::option::Option<extern "C" fn
3447                                                     (interp: *mut Tcl_Interp,
3448                                                      channel: Tcl_Channel)
3449                                                     -> ::libc::c_int>,
3450    pub tcl_IsStandardChannel: ::std::option::Option<extern "C" fn
3451                                                         (channel:
3452                                                              Tcl_Channel)
3453                                                         -> ::libc::c_int>,
3454    pub tcl_FSCopyFile: ::std::option::Option<extern "C" fn
3455                                                  (srcPathPtr: *mut Tcl_Obj,
3456                                                   destPathPtr: *mut Tcl_Obj)
3457                                                  -> ::libc::c_int>,
3458    pub tcl_FSCopyDirectory: ::std::option::Option<extern "C" fn
3459                                                       (srcPathPtr:
3460                                                            *mut Tcl_Obj,
3461                                                        destPathPtr:
3462                                                            *mut Tcl_Obj,
3463                                                        errorPtr:
3464                                                            *mut *mut Tcl_Obj)
3465                                                       -> ::libc::c_int>,
3466    pub tcl_FSCreateDirectory: ::std::option::Option<extern "C" fn
3467                                                         (pathPtr:
3468                                                              *mut Tcl_Obj)
3469                                                         -> ::libc::c_int>,
3470    pub tcl_FSDeleteFile: ::std::option::Option<extern "C" fn
3471                                                    (pathPtr: *mut Tcl_Obj)
3472                                                    -> ::libc::c_int>,
3473    pub tcl_FSLoadFile: ::std::option::Option<extern "C" fn
3474                                                  (interp: *mut Tcl_Interp,
3475                                                   pathPtr: *mut Tcl_Obj,
3476                                                   sym1:
3477                                                       *const ::libc::c_char,
3478                                                   sym2:
3479                                                       *const ::libc::c_char,
3480                                                   proc1Ptr:
3481                                                       *mut *mut Tcl_PackageInitProc,
3482                                                   proc2Ptr:
3483                                                       *mut *mut Tcl_PackageInitProc,
3484                                                   handlePtr:
3485                                                       *mut Tcl_LoadHandle,
3486                                                   unloadProcPtr:
3487                                                       *mut *mut Tcl_FSUnloadFileProc)
3488                                                  -> ::libc::c_int>,
3489    pub tcl_FSMatchInDirectory: ::std::option::Option<extern "C" fn
3490                                                          (interp:
3491                                                               *mut Tcl_Interp,
3492                                                           result:
3493                                                               *mut Tcl_Obj,
3494                                                           pathPtr:
3495                                                               *mut Tcl_Obj,
3496                                                           pattern:
3497                                                               *const ::libc::c_char,
3498                                                           types:
3499                                                               *mut Tcl_GlobTypeData)
3500                                                          -> ::libc::c_int>,
3501    pub tcl_FSLink: ::std::option::Option<extern "C" fn
3502                                              (pathPtr: *mut Tcl_Obj,
3503                                               toPtr: *mut Tcl_Obj,
3504                                               linkAction: ::libc::c_int)
3505                                              -> *mut Tcl_Obj>,
3506    pub tcl_FSRemoveDirectory: ::std::option::Option<extern "C" fn
3507                                                         (pathPtr:
3508                                                              *mut Tcl_Obj,
3509                                                          recursive:
3510                                                              ::libc::c_int,
3511                                                          errorPtr:
3512                                                              *mut *mut Tcl_Obj)
3513                                                         -> ::libc::c_int>,
3514    pub tcl_FSRenameFile: ::std::option::Option<extern "C" fn
3515                                                    (srcPathPtr: *mut Tcl_Obj,
3516                                                     destPathPtr:
3517                                                         *mut Tcl_Obj)
3518                                                    -> ::libc::c_int>,
3519    pub tcl_FSLstat: ::std::option::Option<extern "C" fn
3520                                               (pathPtr: *mut Tcl_Obj,
3521                                                buf: *mut Tcl_StatBuf)
3522                                               -> ::libc::c_int>,
3523    pub tcl_FSUtime: ::std::option::Option<extern "C" fn
3524                                               (pathPtr: *mut Tcl_Obj,
3525                                                tval: *mut Struct_utimbuf)
3526                                               -> ::libc::c_int>,
3527    pub tcl_FSFileAttrsGet: ::std::option::Option<extern "C" fn
3528                                                      (interp:
3529                                                           *mut Tcl_Interp,
3530                                                       index: ::libc::c_int,
3531                                                       pathPtr: *mut Tcl_Obj,
3532                                                       objPtrRef:
3533                                                           *mut *mut Tcl_Obj)
3534                                                      -> ::libc::c_int>,
3535    pub tcl_FSFileAttrsSet: ::std::option::Option<extern "C" fn
3536                                                      (interp:
3537                                                           *mut Tcl_Interp,
3538                                                       index: ::libc::c_int,
3539                                                       pathPtr: *mut Tcl_Obj,
3540                                                       objPtr: *mut Tcl_Obj)
3541                                                      -> ::libc::c_int>,
3542    pub tcl_FSFileAttrStrings: ::std::option::Option<extern "C" fn
3543                                                         (pathPtr:
3544                                                              *mut Tcl_Obj,
3545                                                          objPtrRef:
3546                                                              *mut *mut Tcl_Obj)
3547                                                         ->
3548                                                             *const *const ::libc::c_char>,
3549    pub tcl_FSStat: ::std::option::Option<extern "C" fn
3550                                              (pathPtr: *mut Tcl_Obj,
3551                                               buf: *mut Tcl_StatBuf)
3552                                              -> ::libc::c_int>,
3553    pub tcl_FSAccess: ::std::option::Option<extern "C" fn
3554                                                (pathPtr: *mut Tcl_Obj,
3555                                                 mode: ::libc::c_int)
3556                                                -> ::libc::c_int>,
3557    pub tcl_FSOpenFileChannel: ::std::option::Option<extern "C" fn
3558                                                         (interp:
3559                                                              *mut Tcl_Interp,
3560                                                          pathPtr:
3561                                                              *mut Tcl_Obj,
3562                                                          modeString:
3563                                                              *const ::libc::c_char,
3564                                                          permissions:
3565                                                              ::libc::c_int)
3566                                                         -> Tcl_Channel>,
3567    pub tcl_FSGetCwd: ::std::option::Option<extern "C" fn
3568                                                (interp: *mut Tcl_Interp)
3569                                                -> *mut Tcl_Obj>,
3570    pub tcl_FSChdir: ::std::option::Option<extern "C" fn
3571                                               (pathPtr: *mut Tcl_Obj)
3572                                               -> ::libc::c_int>,
3573    pub tcl_FSConvertToPathType: ::std::option::Option<extern "C" fn
3574                                                           (interp:
3575                                                                *mut Tcl_Interp,
3576                                                            pathPtr:
3577                                                                *mut Tcl_Obj)
3578                                                           -> ::libc::c_int>,
3579    pub tcl_FSJoinPath: ::std::option::Option<extern "C" fn
3580                                                  (listObj: *mut Tcl_Obj,
3581                                                   elements: ::libc::c_int)
3582                                                  -> *mut Tcl_Obj>,
3583    pub tcl_FSSplitPath: ::std::option::Option<extern "C" fn
3584                                                   (pathPtr: *mut Tcl_Obj,
3585                                                    lenPtr:
3586                                                        *mut ::libc::c_int)
3587                                                   -> *mut Tcl_Obj>,
3588    pub tcl_FSEqualPaths: ::std::option::Option<extern "C" fn
3589                                                    (firstPtr: *mut Tcl_Obj,
3590                                                     secondPtr: *mut Tcl_Obj)
3591                                                    -> ::libc::c_int>,
3592    pub tcl_FSGetNormalizedPath: ::std::option::Option<extern "C" fn
3593                                                           (interp:
3594                                                                *mut Tcl_Interp,
3595                                                            pathPtr:
3596                                                                *mut Tcl_Obj)
3597                                                           -> *mut Tcl_Obj>,
3598    pub tcl_FSJoinToPath: ::std::option::Option<extern "C" fn
3599                                                    (pathPtr: *mut Tcl_Obj,
3600                                                     objc: ::libc::c_int,
3601                                                     objv:
3602                                                         *const *mut Tcl_Obj)
3603                                                    -> *mut Tcl_Obj>,
3604    pub tcl_FSGetInternalRep: ::std::option::Option<extern "C" fn
3605                                                        (pathPtr:
3606                                                             *mut Tcl_Obj,
3607                                                         fsPtr:
3608                                                             *const Tcl_Filesystem)
3609                                                        -> ClientData>,
3610    pub tcl_FSGetTranslatedPath: ::std::option::Option<extern "C" fn
3611                                                           (interp:
3612                                                                *mut Tcl_Interp,
3613                                                            pathPtr:
3614                                                                *mut Tcl_Obj)
3615                                                           -> *mut Tcl_Obj>,
3616    pub tcl_FSEvalFile: ::std::option::Option<extern "C" fn
3617                                                  (interp: *mut Tcl_Interp,
3618                                                   fileName: *mut Tcl_Obj)
3619                                                  -> ::libc::c_int>,
3620    pub tcl_FSNewNativePath: ::std::option::Option<extern "C" fn
3621                                                       (fromFilesystem:
3622                                                            *const Tcl_Filesystem,
3623                                                        clientData:
3624                                                            ClientData)
3625                                                       -> *mut Tcl_Obj>,
3626    pub tcl_FSGetNativePath: ::std::option::Option<extern "C" fn
3627                                                       (pathPtr: *mut Tcl_Obj)
3628                                                       ->
3629                                                           *const ::libc::c_void>,
3630    pub tcl_FSFileSystemInfo: ::std::option::Option<extern "C" fn
3631                                                        (pathPtr:
3632                                                             *mut Tcl_Obj)
3633                                                        -> *mut Tcl_Obj>,
3634    pub tcl_FSPathSeparator: ::std::option::Option<extern "C" fn
3635                                                       (pathPtr: *mut Tcl_Obj)
3636                                                       -> *mut Tcl_Obj>,
3637    pub tcl_FSListVolumes: ::std::option::Option<extern "C" fn()
3638                                                     -> *mut Tcl_Obj>,
3639    pub tcl_FSRegister: ::std::option::Option<extern "C" fn
3640                                                  (clientData: ClientData,
3641                                                   fsPtr:
3642                                                       *const Tcl_Filesystem)
3643                                                  -> ::libc::c_int>,
3644    pub tcl_FSUnregister: ::std::option::Option<extern "C" fn
3645                                                    (fsPtr:
3646                                                         *const Tcl_Filesystem)
3647                                                    -> ::libc::c_int>,
3648    pub tcl_FSData: ::std::option::Option<extern "C" fn
3649                                              (fsPtr: *const Tcl_Filesystem)
3650                                              -> ClientData>,
3651    pub tcl_FSGetTranslatedStringPath: ::std::option::Option<extern "C" fn
3652                                                                 (interp:
3653                                                                      *mut Tcl_Interp,
3654                                                                  pathPtr:
3655                                                                      *mut Tcl_Obj)
3656                                                                 ->
3657                                                                     *const ::libc::c_char>,
3658    pub tcl_FSGetFileSystemForPath: ::std::option::Option<extern "C" fn
3659                                                              (pathPtr:
3660                                                                   *mut Tcl_Obj)
3661                                                              ->
3662                                                                  *const Tcl_Filesystem>,
3663    pub tcl_FSGetPathType: ::std::option::Option<extern "C" fn
3664                                                     (pathPtr: *mut Tcl_Obj)
3665                                                     -> Tcl_PathType>,
3666    pub tcl_OutputBuffered: ::std::option::Option<extern "C" fn
3667                                                      (chan: Tcl_Channel)
3668                                                      -> ::libc::c_int>,
3669    pub tcl_FSMountsChanged: ::std::option::Option<extern "C" fn
3670                                                       (fsPtr:
3671                                                            *const Tcl_Filesystem)
3672                                                       -> ()>,
3673    pub tcl_EvalTokensStandard: ::std::option::Option<extern "C" fn
3674                                                          (interp:
3675                                                               *mut Tcl_Interp,
3676                                                           tokenPtr:
3677                                                               *mut Tcl_Token,
3678                                                           count:
3679                                                               ::libc::c_int)
3680                                                          -> ::libc::c_int>,
3681    pub tcl_GetTime: ::std::option::Option<extern "C" fn
3682                                               (timeBuf: *mut Tcl_Time)
3683                                               -> ()>,
3684    pub tcl_CreateObjTrace: ::std::option::Option<extern "C" fn
3685                                                      (interp:
3686                                                           *mut Tcl_Interp,
3687                                                       level: ::libc::c_int,
3688                                                       flags: ::libc::c_int,
3689                                                       objProc:
3690                                                           *mut Tcl_CmdObjTraceProc,
3691                                                       clientData: ClientData,
3692                                                       delProc:
3693                                                           *mut Tcl_CmdObjTraceDeleteProc)
3694                                                      -> Tcl_Trace>,
3695    pub tcl_GetCommandInfoFromToken: ::std::option::Option<extern "C" fn
3696                                                               (token:
3697                                                                    Tcl_Command,
3698                                                                infoPtr:
3699                                                                    *mut Tcl_CmdInfo)
3700                                                               ->
3701                                                                   ::libc::c_int>,
3702    pub tcl_SetCommandInfoFromToken: ::std::option::Option<extern "C" fn
3703                                                               (token:
3704                                                                    Tcl_Command,
3705                                                                infoPtr:
3706                                                                    *const Tcl_CmdInfo)
3707                                                               ->
3708                                                                   ::libc::c_int>,
3709    pub tcl_DbNewWideIntObj: ::std::option::Option<extern "C" fn
3710                                                       (wideValue:
3711                                                            Tcl_WideInt,
3712                                                        file:
3713                                                            *const ::libc::c_char,
3714                                                        line: ::libc::c_int)
3715                                                       -> *mut Tcl_Obj>,
3716    pub tcl_GetWideIntFromObj: ::std::option::Option<extern "C" fn
3717                                                         (interp:
3718                                                              *mut Tcl_Interp,
3719                                                          objPtr:
3720                                                              *mut Tcl_Obj,
3721                                                          widePtr:
3722                                                              *mut Tcl_WideInt)
3723                                                         -> ::libc::c_int>,
3724    pub tcl_NewWideIntObj: ::std::option::Option<extern "C" fn
3725                                                     (wideValue: Tcl_WideInt)
3726                                                     -> *mut Tcl_Obj>,
3727    pub tcl_SetWideIntObj: ::std::option::Option<extern "C" fn
3728                                                     (objPtr: *mut Tcl_Obj,
3729                                                      wideValue: Tcl_WideInt)
3730                                                     -> ()>,
3731    pub tcl_AllocStatBuf: ::std::option::Option<extern "C" fn()
3732                                                    -> *mut Tcl_StatBuf>,
3733    pub tcl_Seek: ::std::option::Option<extern "C" fn
3734                                            (chan: Tcl_Channel,
3735                                             offset: Tcl_WideInt,
3736                                             mode: ::libc::c_int)
3737                                            -> Tcl_WideInt>,
3738    pub tcl_Tell: ::std::option::Option<extern "C" fn(chan: Tcl_Channel)
3739                                            -> Tcl_WideInt>,
3740    pub tcl_ChannelWideSeekProc: ::std::option::Option<extern "C" fn
3741                                                           (chanTypePtr:
3742                                                                *const Tcl_ChannelType)
3743                                                           ->
3744                                                               *mut Tcl_DriverWideSeekProc>,
3745    pub tcl_DictObjPut: ::std::option::Option<extern "C" fn
3746                                                  (interp: *mut Tcl_Interp,
3747                                                   dictPtr: *mut Tcl_Obj,
3748                                                   keyPtr: *mut Tcl_Obj,
3749                                                   valuePtr: *mut Tcl_Obj)
3750                                                  -> ::libc::c_int>,
3751    pub tcl_DictObjGet: ::std::option::Option<extern "C" fn
3752                                                  (interp: *mut Tcl_Interp,
3753                                                   dictPtr: *mut Tcl_Obj,
3754                                                   keyPtr: *mut Tcl_Obj,
3755                                                   valuePtrPtr:
3756                                                       *mut *mut Tcl_Obj)
3757                                                  -> ::libc::c_int>,
3758    pub tcl_DictObjRemove: ::std::option::Option<extern "C" fn
3759                                                     (interp: *mut Tcl_Interp,
3760                                                      dictPtr: *mut Tcl_Obj,
3761                                                      keyPtr: *mut Tcl_Obj)
3762                                                     -> ::libc::c_int>,
3763    pub tcl_DictObjSize: ::std::option::Option<extern "C" fn
3764                                                   (interp: *mut Tcl_Interp,
3765                                                    dictPtr: *mut Tcl_Obj,
3766                                                    sizePtr:
3767                                                        *mut ::libc::c_int)
3768                                                   -> ::libc::c_int>,
3769    pub tcl_DictObjFirst: ::std::option::Option<extern "C" fn
3770                                                    (interp: *mut Tcl_Interp,
3771                                                     dictPtr: *mut Tcl_Obj,
3772                                                     searchPtr:
3773                                                         *mut Tcl_DictSearch,
3774                                                     keyPtrPtr:
3775                                                         *mut *mut Tcl_Obj,
3776                                                     valuePtrPtr:
3777                                                         *mut *mut Tcl_Obj,
3778                                                     donePtr:
3779                                                         *mut ::libc::c_int)
3780                                                    -> ::libc::c_int>,
3781    pub tcl_DictObjNext: ::std::option::Option<extern "C" fn
3782                                                   (searchPtr:
3783                                                        *mut Tcl_DictSearch,
3784                                                    keyPtrPtr:
3785                                                        *mut *mut Tcl_Obj,
3786                                                    valuePtrPtr:
3787                                                        *mut *mut Tcl_Obj,
3788                                                    donePtr:
3789                                                        *mut ::libc::c_int)
3790                                                   -> ()>,
3791    pub tcl_DictObjDone: ::std::option::Option<extern "C" fn
3792                                                   (searchPtr:
3793                                                        *mut Tcl_DictSearch)
3794                                                   -> ()>,
3795    pub tcl_DictObjPutKeyList: ::std::option::Option<extern "C" fn
3796                                                         (interp:
3797                                                              *mut Tcl_Interp,
3798                                                          dictPtr:
3799                                                              *mut Tcl_Obj,
3800                                                          keyc: ::libc::c_int,
3801                                                          keyv:
3802                                                              *const *mut Tcl_Obj,
3803                                                          valuePtr:
3804                                                              *mut Tcl_Obj)
3805                                                         -> ::libc::c_int>,
3806    pub tcl_DictObjRemoveKeyList: ::std::option::Option<extern "C" fn
3807                                                            (interp:
3808                                                                 *mut Tcl_Interp,
3809                                                             dictPtr:
3810                                                                 *mut Tcl_Obj,
3811                                                             keyc:
3812                                                                 ::libc::c_int,
3813                                                             keyv:
3814                                                                 *const *mut Tcl_Obj)
3815                                                            -> ::libc::c_int>,
3816    pub tcl_NewDictObj: ::std::option::Option<extern "C" fn()
3817                                                  -> *mut Tcl_Obj>,
3818    pub tcl_DbNewDictObj: ::std::option::Option<extern "C" fn
3819                                                    (file:
3820                                                         *const ::libc::c_char,
3821                                                     line: ::libc::c_int)
3822                                                    -> *mut Tcl_Obj>,
3823    pub tcl_RegisterConfig: ::std::option::Option<extern "C" fn
3824                                                      (interp:
3825                                                           *mut Tcl_Interp,
3826                                                       pkgName:
3827                                                           *const ::libc::c_char,
3828                                                       configuration:
3829                                                           *const Tcl_Config,
3830                                                       valEncoding:
3831                                                           *const ::libc::c_char)
3832                                                      -> ()>,
3833    pub tcl_CreateNamespace: ::std::option::Option<extern "C" fn
3834                                                       (interp:
3835                                                            *mut Tcl_Interp,
3836                                                        name:
3837                                                            *const ::libc::c_char,
3838                                                        clientData:
3839                                                            ClientData,
3840                                                        deleteProc:
3841                                                            *mut Tcl_NamespaceDeleteProc)
3842                                                       -> *mut Tcl_Namespace>,
3843    pub tcl_DeleteNamespace: ::std::option::Option<extern "C" fn
3844                                                       (nsPtr:
3845                                                            *mut Tcl_Namespace)
3846                                                       -> ()>,
3847    pub tcl_AppendExportList: ::std::option::Option<extern "C" fn
3848                                                        (interp:
3849                                                             *mut Tcl_Interp,
3850                                                         nsPtr:
3851                                                             *mut Tcl_Namespace,
3852                                                         objPtr: *mut Tcl_Obj)
3853                                                        -> ::libc::c_int>,
3854    pub tcl_Export: ::std::option::Option<extern "C" fn
3855                                              (interp: *mut Tcl_Interp,
3856                                               nsPtr: *mut Tcl_Namespace,
3857                                               pattern: *const ::libc::c_char,
3858                                               resetListFirst: ::libc::c_int)
3859                                              -> ::libc::c_int>,
3860    pub tcl_Import: ::std::option::Option<extern "C" fn
3861                                              (interp: *mut Tcl_Interp,
3862                                               nsPtr: *mut Tcl_Namespace,
3863                                               pattern: *const ::libc::c_char,
3864                                               allowOverwrite: ::libc::c_int)
3865                                              -> ::libc::c_int>,
3866    pub tcl_ForgetImport: ::std::option::Option<extern "C" fn
3867                                                    (interp: *mut Tcl_Interp,
3868                                                     nsPtr:
3869                                                         *mut Tcl_Namespace,
3870                                                     pattern:
3871                                                         *const ::libc::c_char)
3872                                                    -> ::libc::c_int>,
3873    pub tcl_GetCurrentNamespace: ::std::option::Option<extern "C" fn
3874                                                           (interp:
3875                                                                *mut Tcl_Interp)
3876                                                           ->
3877                                                               *mut Tcl_Namespace>,
3878    pub tcl_GetGlobalNamespace: ::std::option::Option<extern "C" fn
3879                                                          (interp:
3880                                                               *mut Tcl_Interp)
3881                                                          ->
3882                                                              *mut Tcl_Namespace>,
3883    pub tcl_FindNamespace: ::std::option::Option<extern "C" fn
3884                                                     (interp: *mut Tcl_Interp,
3885                                                      name:
3886                                                          *const ::libc::c_char,
3887                                                      contextNsPtr:
3888                                                          *mut Tcl_Namespace,
3889                                                      flags: ::libc::c_int)
3890                                                     -> *mut Tcl_Namespace>,
3891    pub tcl_FindCommand: ::std::option::Option<extern "C" fn
3892                                                   (interp: *mut Tcl_Interp,
3893                                                    name:
3894                                                        *const ::libc::c_char,
3895                                                    contextNsPtr:
3896                                                        *mut Tcl_Namespace,
3897                                                    flags: ::libc::c_int)
3898                                                   -> Tcl_Command>,
3899    pub tcl_GetCommandFromObj: ::std::option::Option<extern "C" fn
3900                                                         (interp:
3901                                                              *mut Tcl_Interp,
3902                                                          objPtr:
3903                                                              *mut Tcl_Obj)
3904                                                         -> Tcl_Command>,
3905    pub tcl_GetCommandFullName: ::std::option::Option<extern "C" fn
3906                                                          (interp:
3907                                                               *mut Tcl_Interp,
3908                                                           command:
3909                                                               Tcl_Command,
3910                                                           objPtr:
3911                                                               *mut Tcl_Obj)
3912                                                          -> ()>,
3913    pub tcl_FSEvalFileEx: ::std::option::Option<extern "C" fn
3914                                                    (interp: *mut Tcl_Interp,
3915                                                     fileName: *mut Tcl_Obj,
3916                                                     encodingName:
3917                                                         *const ::libc::c_char)
3918                                                    -> ::libc::c_int>,
3919    pub tcl_SetExitProc: ::std::option::Option<extern "C" fn
3920                                                   (_proc: *mut Tcl_ExitProc)
3921                                                   -> *mut Tcl_ExitProc>,
3922    pub tcl_LimitAddHandler: ::std::option::Option<extern "C" fn
3923                                                       (interp:
3924                                                            *mut Tcl_Interp,
3925                                                        _type: ::libc::c_int,
3926                                                        handlerProc:
3927                                                            *mut Tcl_LimitHandlerProc,
3928                                                        clientData:
3929                                                            ClientData,
3930                                                        deleteProc:
3931                                                            *mut Tcl_LimitHandlerDeleteProc)
3932                                                       -> ()>,
3933    pub tcl_LimitRemoveHandler: ::std::option::Option<extern "C" fn
3934                                                          (interp:
3935                                                               *mut Tcl_Interp,
3936                                                           _type:
3937                                                               ::libc::c_int,
3938                                                           handlerProc:
3939                                                               *mut Tcl_LimitHandlerProc,
3940                                                           clientData:
3941                                                               ClientData)
3942                                                          -> ()>,
3943    pub tcl_LimitReady: ::std::option::Option<extern "C" fn
3944                                                  (interp: *mut Tcl_Interp)
3945                                                  -> ::libc::c_int>,
3946    pub tcl_LimitCheck: ::std::option::Option<extern "C" fn
3947                                                  (interp: *mut Tcl_Interp)
3948                                                  -> ::libc::c_int>,
3949    pub tcl_LimitExceeded: ::std::option::Option<extern "C" fn
3950                                                     (interp: *mut Tcl_Interp)
3951                                                     -> ::libc::c_int>,
3952    pub tcl_LimitSetCommands: ::std::option::Option<extern "C" fn
3953                                                        (interp:
3954                                                             *mut Tcl_Interp,
3955                                                         commandLimit:
3956                                                             ::libc::c_int)
3957                                                        -> ()>,
3958    pub tcl_LimitSetTime: ::std::option::Option<extern "C" fn
3959                                                    (interp: *mut Tcl_Interp,
3960                                                     timeLimitPtr:
3961                                                         *mut Tcl_Time)
3962                                                    -> ()>,
3963    pub tcl_LimitSetGranularity: ::std::option::Option<extern "C" fn
3964                                                           (interp:
3965                                                                *mut Tcl_Interp,
3966                                                            _type:
3967                                                                ::libc::c_int,
3968                                                            granularity:
3969                                                                ::libc::c_int)
3970                                                           -> ()>,
3971    pub tcl_LimitTypeEnabled: ::std::option::Option<extern "C" fn
3972                                                        (interp:
3973                                                             *mut Tcl_Interp,
3974                                                         _type: ::libc::c_int)
3975                                                        -> ::libc::c_int>,
3976    pub tcl_LimitTypeExceeded: ::std::option::Option<extern "C" fn
3977                                                         (interp:
3978                                                              *mut Tcl_Interp,
3979                                                          _type:
3980                                                              ::libc::c_int)
3981                                                         -> ::libc::c_int>,
3982    pub tcl_LimitTypeSet: ::std::option::Option<extern "C" fn
3983                                                    (interp: *mut Tcl_Interp,
3984                                                     _type: ::libc::c_int)
3985                                                    -> ()>,
3986    pub tcl_LimitTypeReset: ::std::option::Option<extern "C" fn
3987                                                      (interp:
3988                                                           *mut Tcl_Interp,
3989                                                       _type: ::libc::c_int)
3990                                                      -> ()>,
3991    pub tcl_LimitGetCommands: ::std::option::Option<extern "C" fn
3992                                                        (interp:
3993                                                             *mut Tcl_Interp)
3994                                                        -> ::libc::c_int>,
3995    pub tcl_LimitGetTime: ::std::option::Option<extern "C" fn
3996                                                    (interp: *mut Tcl_Interp,
3997                                                     timeLimitPtr:
3998                                                         *mut Tcl_Time)
3999                                                    -> ()>,
4000    pub tcl_LimitGetGranularity: ::std::option::Option<extern "C" fn
4001                                                           (interp:
4002                                                                *mut Tcl_Interp,
4003                                                            _type:
4004                                                                ::libc::c_int)
4005                                                           -> ::libc::c_int>,
4006    pub tcl_SaveInterpState: ::std::option::Option<extern "C" fn
4007                                                       (interp:
4008                                                            *mut Tcl_Interp,
4009                                                        status: ::libc::c_int)
4010                                                       -> Tcl_InterpState>,
4011    pub tcl_RestoreInterpState: ::std::option::Option<extern "C" fn
4012                                                          (interp:
4013                                                               *mut Tcl_Interp,
4014                                                           state:
4015                                                               Tcl_InterpState)
4016                                                          -> ::libc::c_int>,
4017    pub tcl_DiscardInterpState: ::std::option::Option<extern "C" fn
4018                                                          (state:
4019                                                               Tcl_InterpState)
4020                                                          -> ()>,
4021    pub tcl_SetReturnOptions: ::std::option::Option<extern "C" fn
4022                                                        (interp:
4023                                                             *mut Tcl_Interp,
4024                                                         options:
4025                                                             *mut Tcl_Obj)
4026                                                        -> ::libc::c_int>,
4027    pub tcl_GetReturnOptions: ::std::option::Option<extern "C" fn
4028                                                        (interp:
4029                                                             *mut Tcl_Interp,
4030                                                         result:
4031                                                             ::libc::c_int)
4032                                                        -> *mut Tcl_Obj>,
4033    pub tcl_IsEnsemble: ::std::option::Option<extern "C" fn
4034                                                  (token: Tcl_Command)
4035                                                  -> ::libc::c_int>,
4036    pub tcl_CreateEnsemble: ::std::option::Option<extern "C" fn
4037                                                      (interp:
4038                                                           *mut Tcl_Interp,
4039                                                       name:
4040                                                           *const ::libc::c_char,
4041                                                       namespacePtr:
4042                                                           *mut Tcl_Namespace,
4043                                                       flags: ::libc::c_int)
4044                                                      -> Tcl_Command>,
4045    pub tcl_FindEnsemble: ::std::option::Option<extern "C" fn
4046                                                    (interp: *mut Tcl_Interp,
4047                                                     cmdNameObj: *mut Tcl_Obj,
4048                                                     flags: ::libc::c_int)
4049                                                    -> Tcl_Command>,
4050    pub tcl_SetEnsembleSubcommandList: ::std::option::Option<extern "C" fn
4051                                                                 (interp:
4052                                                                      *mut Tcl_Interp,
4053                                                                  token:
4054                                                                      Tcl_Command,
4055                                                                  subcmdList:
4056                                                                      *mut Tcl_Obj)
4057                                                                 ->
4058                                                                     ::libc::c_int>,
4059    pub tcl_SetEnsembleMappingDict: ::std::option::Option<extern "C" fn
4060                                                              (interp:
4061                                                                   *mut Tcl_Interp,
4062                                                               token:
4063                                                                   Tcl_Command,
4064                                                               mapDict:
4065                                                                   *mut Tcl_Obj)
4066                                                              ->
4067                                                                  ::libc::c_int>,
4068    pub tcl_SetEnsembleUnknownHandler: ::std::option::Option<extern "C" fn
4069                                                                 (interp:
4070                                                                      *mut Tcl_Interp,
4071                                                                  token:
4072                                                                      Tcl_Command,
4073                                                                  unknownList:
4074                                                                      *mut Tcl_Obj)
4075                                                                 ->
4076                                                                     ::libc::c_int>,
4077    pub tcl_SetEnsembleFlags: ::std::option::Option<extern "C" fn
4078                                                        (interp:
4079                                                             *mut Tcl_Interp,
4080                                                         token: Tcl_Command,
4081                                                         flags: ::libc::c_int)
4082                                                        -> ::libc::c_int>,
4083    pub tcl_GetEnsembleSubcommandList: ::std::option::Option<extern "C" fn
4084                                                                 (interp:
4085                                                                      *mut Tcl_Interp,
4086                                                                  token:
4087                                                                      Tcl_Command,
4088                                                                  subcmdListPtr:
4089                                                                      *mut *mut Tcl_Obj)
4090                                                                 ->
4091                                                                     ::libc::c_int>,
4092    pub tcl_GetEnsembleMappingDict: ::std::option::Option<extern "C" fn
4093                                                              (interp:
4094                                                                   *mut Tcl_Interp,
4095                                                               token:
4096                                                                   Tcl_Command,
4097                                                               mapDictPtr:
4098                                                                   *mut *mut Tcl_Obj)
4099                                                              ->
4100                                                                  ::libc::c_int>,
4101    pub tcl_GetEnsembleUnknownHandler: ::std::option::Option<extern "C" fn
4102                                                                 (interp:
4103                                                                      *mut Tcl_Interp,
4104                                                                  token:
4105                                                                      Tcl_Command,
4106                                                                  unknownListPtr:
4107                                                                      *mut *mut Tcl_Obj)
4108                                                                 ->
4109                                                                     ::libc::c_int>,
4110    pub tcl_GetEnsembleFlags: ::std::option::Option<extern "C" fn
4111                                                        (interp:
4112                                                             *mut Tcl_Interp,
4113                                                         token: Tcl_Command,
4114                                                         flagsPtr:
4115                                                             *mut ::libc::c_int)
4116                                                        -> ::libc::c_int>,
4117    pub tcl_GetEnsembleNamespace: ::std::option::Option<extern "C" fn
4118                                                            (interp:
4119                                                                 *mut Tcl_Interp,
4120                                                             token:
4121                                                                 Tcl_Command,
4122                                                             namespacePtrPtr:
4123                                                                 *mut *mut Tcl_Namespace)
4124                                                            -> ::libc::c_int>,
4125    pub tcl_SetTimeProc: ::std::option::Option<extern "C" fn
4126                                                   (getProc:
4127                                                        *mut Tcl_GetTimeProc,
4128                                                    scaleProc:
4129                                                        *mut Tcl_ScaleTimeProc,
4130                                                    clientData: ClientData)
4131                                                   -> ()>,
4132    pub tcl_QueryTimeProc: ::std::option::Option<extern "C" fn
4133                                                     (getProc:
4134                                                          *mut *mut Tcl_GetTimeProc,
4135                                                      scaleProc:
4136                                                          *mut *mut Tcl_ScaleTimeProc,
4137                                                      clientData:
4138                                                          *mut ClientData)
4139                                                     -> ()>,
4140    pub tcl_ChannelThreadActionProc: ::std::option::Option<extern "C" fn
4141                                                               (chanTypePtr:
4142                                                                    *const Tcl_ChannelType)
4143                                                               ->
4144                                                                   *mut Tcl_DriverThreadActionProc>,
4145    pub tcl_NewBignumObj: ::std::option::Option<extern "C" fn
4146                                                    (value: *mut mp_int)
4147                                                    -> *mut Tcl_Obj>,
4148    pub tcl_DbNewBignumObj: ::std::option::Option<extern "C" fn
4149                                                      (value: *mut mp_int,
4150                                                       file:
4151                                                           *const ::libc::c_char,
4152                                                       line: ::libc::c_int)
4153                                                      -> *mut Tcl_Obj>,
4154    pub tcl_SetBignumObj: ::std::option::Option<extern "C" fn
4155                                                    (obj: *mut Tcl_Obj,
4156                                                     value: *mut mp_int)
4157                                                    -> ()>,
4158    pub tcl_GetBignumFromObj: ::std::option::Option<extern "C" fn
4159                                                        (interp:
4160                                                             *mut Tcl_Interp,
4161                                                         obj: *mut Tcl_Obj,
4162                                                         value: *mut mp_int)
4163                                                        -> ::libc::c_int>,
4164    pub tcl_TakeBignumFromObj: ::std::option::Option<extern "C" fn
4165                                                         (interp:
4166                                                              *mut Tcl_Interp,
4167                                                          obj: *mut Tcl_Obj,
4168                                                          value: *mut mp_int)
4169                                                         -> ::libc::c_int>,
4170    pub tcl_TruncateChannel: ::std::option::Option<extern "C" fn
4171                                                       (chan: Tcl_Channel,
4172                                                        length: Tcl_WideInt)
4173                                                       -> ::libc::c_int>,
4174    pub tcl_ChannelTruncateProc: ::std::option::Option<extern "C" fn
4175                                                           (chanTypePtr:
4176                                                                *const Tcl_ChannelType)
4177                                                           ->
4178                                                               *mut Tcl_DriverTruncateProc>,
4179    pub tcl_SetChannelErrorInterp: ::std::option::Option<extern "C" fn
4180                                                             (interp:
4181                                                                  *mut Tcl_Interp,
4182                                                              msg:
4183                                                                  *mut Tcl_Obj)
4184                                                             -> ()>,
4185    pub tcl_GetChannelErrorInterp: ::std::option::Option<extern "C" fn
4186                                                             (interp:
4187                                                                  *mut Tcl_Interp,
4188                                                              msg:
4189                                                                  *mut *mut Tcl_Obj)
4190                                                             -> ()>,
4191    pub tcl_SetChannelError: ::std::option::Option<extern "C" fn
4192                                                       (chan: Tcl_Channel,
4193                                                        msg: *mut Tcl_Obj)
4194                                                       -> ()>,
4195    pub tcl_GetChannelError: ::std::option::Option<extern "C" fn
4196                                                       (chan: Tcl_Channel,
4197                                                        msg:
4198                                                            *mut *mut Tcl_Obj)
4199                                                       -> ()>,
4200    pub tcl_InitBignumFromDouble: ::std::option::Option<extern "C" fn
4201                                                            (interp:
4202                                                                 *mut Tcl_Interp,
4203                                                             initval:
4204                                                                 ::libc::c_double,
4205                                                             toInit:
4206                                                                 *mut mp_int)
4207                                                            -> ::libc::c_int>,
4208    pub tcl_GetNamespaceUnknownHandler: ::std::option::Option<extern "C" fn
4209                                                                  (interp:
4210                                                                       *mut Tcl_Interp,
4211                                                                   nsPtr:
4212                                                                       *mut Tcl_Namespace)
4213                                                                  ->
4214                                                                      *mut Tcl_Obj>,
4215    pub tcl_SetNamespaceUnknownHandler: ::std::option::Option<extern "C" fn
4216                                                                  (interp:
4217                                                                       *mut Tcl_Interp,
4218                                                                   nsPtr:
4219                                                                       *mut Tcl_Namespace,
4220                                                                   handlerPtr:
4221                                                                       *mut Tcl_Obj)
4222                                                                  ->
4223                                                                      ::libc::c_int>,
4224    pub tcl_GetEncodingFromObj: ::std::option::Option<extern "C" fn
4225                                                          (interp:
4226                                                               *mut Tcl_Interp,
4227                                                           objPtr:
4228                                                               *mut Tcl_Obj,
4229                                                           encodingPtr:
4230                                                               *mut Tcl_Encoding)
4231                                                          -> ::libc::c_int>,
4232    pub tcl_GetEncodingSearchPath: ::std::option::Option<extern "C" fn()
4233                                                             -> *mut Tcl_Obj>,
4234    pub tcl_SetEncodingSearchPath: ::std::option::Option<extern "C" fn
4235                                                             (searchPath:
4236                                                                  *mut Tcl_Obj)
4237                                                             ->
4238                                                                 ::libc::c_int>,
4239    pub tcl_GetEncodingNameFromEnvironment: ::std::option::Option<extern "C" fn
4240                                                                      (bufPtr:
4241                                                                           *mut Tcl_DString)
4242                                                                      ->
4243                                                                          *const ::libc::c_char>,
4244    pub tcl_PkgRequireProc: ::std::option::Option<extern "C" fn
4245                                                      (interp:
4246                                                           *mut Tcl_Interp,
4247                                                       name:
4248                                                           *const ::libc::c_char,
4249                                                       objc: ::libc::c_int,
4250                                                       objv:
4251                                                           *const *mut Tcl_Obj,
4252                                                       clientDataPtr:
4253                                                           *mut ::libc::c_void)
4254                                                      -> ::libc::c_int>,
4255    pub tcl_AppendObjToErrorInfo: ::std::option::Option<extern "C" fn
4256                                                            (interp:
4257                                                                 *mut Tcl_Interp,
4258                                                             objPtr:
4259                                                                 *mut Tcl_Obj)
4260                                                            -> ()>,
4261    pub tcl_AppendLimitedToObj: ::std::option::Option<extern "C" fn
4262                                                          (objPtr:
4263                                                               *mut Tcl_Obj,
4264                                                           bytes:
4265                                                               *const ::libc::c_char,
4266                                                           length:
4267                                                               ::libc::c_int,
4268                                                           limit:
4269                                                               ::libc::c_int,
4270                                                           ellipsis:
4271                                                               *const ::libc::c_char)
4272                                                          -> ()>,
4273    pub tcl_Format: ::std::option::Option<extern "C" fn
4274                                              (interp: *mut Tcl_Interp,
4275                                               format: *const ::libc::c_char,
4276                                               objc: ::libc::c_int,
4277                                               objv: *const *mut Tcl_Obj)
4278                                              -> *mut Tcl_Obj>,
4279    pub tcl_AppendFormatToObj: ::std::option::Option<extern "C" fn
4280                                                         (interp:
4281                                                              *mut Tcl_Interp,
4282                                                          objPtr:
4283                                                              *mut Tcl_Obj,
4284                                                          format:
4285                                                              *const ::libc::c_char,
4286                                                          objc: ::libc::c_int,
4287                                                          objv:
4288                                                              *const *mut Tcl_Obj)
4289                                                         -> ::libc::c_int>,
4290    pub tcl_ObjPrintf: ::std::option::Option<extern "C" fn
4291                                                 (format:
4292                                                      *const ::libc::c_char, ...)
4293                                                 -> *mut Tcl_Obj>,
4294    pub tcl_AppendPrintfToObj: ::std::option::Option<extern "C" fn
4295                                                         (objPtr:
4296                                                              *mut Tcl_Obj,
4297                                                          format:
4298                                                              *const ::libc::c_char, ...)
4299                                                         -> ()>,
4300    pub tcl_CancelEval: ::std::option::Option<extern "C" fn
4301                                                  (interp: *mut Tcl_Interp,
4302                                                   resultObjPtr: *mut Tcl_Obj,
4303                                                   clientData: ClientData,
4304                                                   flags: ::libc::c_int)
4305                                                  -> ::libc::c_int>,
4306    pub tcl_Canceled: ::std::option::Option<extern "C" fn
4307                                                (interp: *mut Tcl_Interp,
4308                                                 flags: ::libc::c_int)
4309                                                -> ::libc::c_int>,
4310    pub tcl_CreatePipe: ::std::option::Option<extern "C" fn
4311                                                  (interp: *mut Tcl_Interp,
4312                                                   rchan: *mut Tcl_Channel,
4313                                                   wchan: *mut Tcl_Channel,
4314                                                   flags: ::libc::c_int)
4315                                                  -> ::libc::c_int>,
4316    pub tcl_NRCreateCommand: ::std::option::Option<extern "C" fn
4317                                                       (interp:
4318                                                            *mut Tcl_Interp,
4319                                                        cmdName:
4320                                                            *const ::libc::c_char,
4321                                                        _proc:
4322                                                            *mut Tcl_ObjCmdProc,
4323                                                        nreProc:
4324                                                            *mut Tcl_ObjCmdProc,
4325                                                        clientData:
4326                                                            ClientData,
4327                                                        deleteProc:
4328                                                            *mut Tcl_CmdDeleteProc)
4329                                                       -> Tcl_Command>,
4330    pub tcl_NREvalObj: ::std::option::Option<extern "C" fn
4331                                                 (interp: *mut Tcl_Interp,
4332                                                  objPtr: *mut Tcl_Obj,
4333                                                  flags: ::libc::c_int)
4334                                                 -> ::libc::c_int>,
4335    pub tcl_NREvalObjv: ::std::option::Option<extern "C" fn
4336                                                  (interp: *mut Tcl_Interp,
4337                                                   objc: ::libc::c_int,
4338                                                   objv: *const *mut Tcl_Obj,
4339                                                   flags: ::libc::c_int)
4340                                                  -> ::libc::c_int>,
4341    pub tcl_NRCmdSwap: ::std::option::Option<extern "C" fn
4342                                                 (interp: *mut Tcl_Interp,
4343                                                  cmd: Tcl_Command,
4344                                                  objc: ::libc::c_int,
4345                                                  objv: *const *mut Tcl_Obj,
4346                                                  flags: ::libc::c_int)
4347                                                 -> ::libc::c_int>,
4348    pub tcl_NRAddCallback: ::std::option::Option<extern "C" fn
4349                                                     (interp: *mut Tcl_Interp,
4350                                                      postProcPtr:
4351                                                          *mut Tcl_NRPostProc,
4352                                                      data0: ClientData,
4353                                                      data1: ClientData,
4354                                                      data2: ClientData,
4355                                                      data3: ClientData)
4356                                                     -> ()>,
4357    pub tcl_NRCallObjProc: ::std::option::Option<extern "C" fn
4358                                                     (interp: *mut Tcl_Interp,
4359                                                      objProc:
4360                                                          *mut Tcl_ObjCmdProc,
4361                                                      clientData: ClientData,
4362                                                      objc: ::libc::c_int,
4363                                                      objv:
4364                                                          *const *mut Tcl_Obj)
4365                                                     -> ::libc::c_int>,
4366    pub tcl_GetFSDeviceFromStat: ::std::option::Option<extern "C" fn
4367                                                           (statPtr:
4368                                                                *const Tcl_StatBuf)
4369                                                           -> ::libc::c_uint>,
4370    pub tcl_GetFSInodeFromStat: ::std::option::Option<extern "C" fn
4371                                                          (statPtr:
4372                                                               *const Tcl_StatBuf)
4373                                                          -> ::libc::c_uint>,
4374    pub tcl_GetModeFromStat: ::std::option::Option<extern "C" fn
4375                                                       (statPtr:
4376                                                            *const Tcl_StatBuf)
4377                                                       -> ::libc::c_uint>,
4378    pub tcl_GetLinkCountFromStat: ::std::option::Option<extern "C" fn
4379                                                            (statPtr:
4380                                                                 *const Tcl_StatBuf)
4381                                                            -> ::libc::c_int>,
4382    pub tcl_GetUserIdFromStat: ::std::option::Option<extern "C" fn
4383                                                         (statPtr:
4384                                                              *const Tcl_StatBuf)
4385                                                         -> ::libc::c_int>,
4386    pub tcl_GetGroupIdFromStat: ::std::option::Option<extern "C" fn
4387                                                          (statPtr:
4388                                                               *const Tcl_StatBuf)
4389                                                          -> ::libc::c_int>,
4390    pub tcl_GetDeviceTypeFromStat: ::std::option::Option<extern "C" fn
4391                                                             (statPtr:
4392                                                                  *const Tcl_StatBuf)
4393                                                             ->
4394                                                                 ::libc::c_int>,
4395    pub tcl_GetAccessTimeFromStat: ::std::option::Option<extern "C" fn
4396                                                             (statPtr:
4397                                                                  *const Tcl_StatBuf)
4398                                                             -> Tcl_WideInt>,
4399    pub tcl_GetModificationTimeFromStat: ::std::option::Option<extern "C" fn
4400                                                                   (statPtr:
4401                                                                        *const Tcl_StatBuf)
4402                                                                   ->
4403                                                                       Tcl_WideInt>,
4404    pub tcl_GetChangeTimeFromStat: ::std::option::Option<extern "C" fn
4405                                                             (statPtr:
4406                                                                  *const Tcl_StatBuf)
4407                                                             -> Tcl_WideInt>,
4408    pub tcl_GetSizeFromStat: ::std::option::Option<extern "C" fn
4409                                                       (statPtr:
4410                                                            *const Tcl_StatBuf)
4411                                                       -> Tcl_WideUInt>,
4412    pub tcl_GetBlocksFromStat: ::std::option::Option<extern "C" fn
4413                                                         (statPtr:
4414                                                              *const Tcl_StatBuf)
4415                                                         -> Tcl_WideUInt>,
4416    pub tcl_GetBlockSizeFromStat: ::std::option::Option<extern "C" fn
4417                                                            (statPtr:
4418                                                                 *const Tcl_StatBuf)
4419                                                            ->
4420                                                                ::libc::c_uint>,
4421    pub tcl_SetEnsembleParameterList: ::std::option::Option<extern "C" fn
4422                                                                (interp:
4423                                                                     *mut Tcl_Interp,
4424                                                                 token:
4425                                                                     Tcl_Command,
4426                                                                 paramList:
4427                                                                     *mut Tcl_Obj)
4428                                                                ->
4429                                                                    ::libc::c_int>,
4430    pub tcl_GetEnsembleParameterList: ::std::option::Option<extern "C" fn
4431                                                                (interp:
4432                                                                     *mut Tcl_Interp,
4433                                                                 token:
4434                                                                     Tcl_Command,
4435                                                                 paramListPtr:
4436                                                                     *mut *mut Tcl_Obj)
4437                                                                ->
4438                                                                    ::libc::c_int>,
4439    pub tcl_ParseArgsObjv: ::std::option::Option<extern "C" fn
4440                                                     (interp: *mut Tcl_Interp,
4441                                                      argTable:
4442                                                          *const Tcl_ArgvInfo,
4443                                                      objcPtr:
4444                                                          *mut ::libc::c_int,
4445                                                      objv:
4446                                                          *const *mut Tcl_Obj,
4447                                                      remObjv:
4448                                                          *mut *mut *mut Tcl_Obj)
4449                                                     -> ::libc::c_int>,
4450    pub tcl_GetErrorLine: ::std::option::Option<extern "C" fn
4451                                                    (interp: *mut Tcl_Interp)
4452                                                    -> ::libc::c_int>,
4453    pub tcl_SetErrorLine: ::std::option::Option<extern "C" fn
4454                                                    (interp: *mut Tcl_Interp,
4455                                                     lineNum: ::libc::c_int)
4456                                                    -> ()>,
4457    pub tcl_TransferResult: ::std::option::Option<extern "C" fn
4458                                                      (sourceInterp:
4459                                                           *mut Tcl_Interp,
4460                                                       result: ::libc::c_int,
4461                                                       targetInterp:
4462                                                           *mut Tcl_Interp)
4463                                                      -> ()>,
4464    pub tcl_InterpActive: ::std::option::Option<extern "C" fn
4465                                                    (interp: *mut Tcl_Interp)
4466                                                    -> ::libc::c_int>,
4467    pub tcl_BackgroundException: ::std::option::Option<extern "C" fn
4468                                                           (interp:
4469                                                                *mut Tcl_Interp,
4470                                                            code:
4471                                                                ::libc::c_int)
4472                                                           -> ()>,
4473    pub tcl_ZlibDeflate: ::std::option::Option<extern "C" fn
4474                                                   (interp: *mut Tcl_Interp,
4475                                                    format: ::libc::c_int,
4476                                                    data: *mut Tcl_Obj,
4477                                                    level: ::libc::c_int,
4478                                                    gzipHeaderDictObj:
4479                                                        *mut Tcl_Obj)
4480                                                   -> ::libc::c_int>,
4481    pub tcl_ZlibInflate: ::std::option::Option<extern "C" fn
4482                                                   (interp: *mut Tcl_Interp,
4483                                                    format: ::libc::c_int,
4484                                                    data: *mut Tcl_Obj,
4485                                                    buffersize: ::libc::c_int,
4486                                                    gzipHeaderDictObj:
4487                                                        *mut Tcl_Obj)
4488                                                   -> ::libc::c_int>,
4489    pub tcl_ZlibCRC32: ::std::option::Option<extern "C" fn
4490                                                 (crc: ::libc::c_uint,
4491                                                  buf: *const ::libc::c_uchar,
4492                                                  len: ::libc::c_int)
4493                                                 -> ::libc::c_uint>,
4494    pub tcl_ZlibAdler32: ::std::option::Option<extern "C" fn
4495                                                   (adler: ::libc::c_uint,
4496                                                    buf:
4497                                                        *const ::libc::c_uchar,
4498                                                    len: ::libc::c_int)
4499                                                   -> ::libc::c_uint>,
4500    pub tcl_ZlibStreamInit: ::std::option::Option<extern "C" fn
4501                                                      (interp:
4502                                                           *mut Tcl_Interp,
4503                                                       mode: ::libc::c_int,
4504                                                       format: ::libc::c_int,
4505                                                       level: ::libc::c_int,
4506                                                       dictObj: *mut Tcl_Obj,
4507                                                       zshandle:
4508                                                           *mut Tcl_ZlibStream)
4509                                                      -> ::libc::c_int>,
4510    pub tcl_ZlibStreamGetCommandName: ::std::option::Option<extern "C" fn
4511                                                                (zshandle:
4512                                                                     Tcl_ZlibStream)
4513                                                                ->
4514                                                                    *mut Tcl_Obj>,
4515    pub tcl_ZlibStreamEof: ::std::option::Option<extern "C" fn
4516                                                     (zshandle:
4517                                                          Tcl_ZlibStream)
4518                                                     -> ::libc::c_int>,
4519    pub tcl_ZlibStreamChecksum: ::std::option::Option<extern "C" fn
4520                                                          (zshandle:
4521                                                               Tcl_ZlibStream)
4522                                                          -> ::libc::c_int>,
4523    pub tcl_ZlibStreamPut: ::std::option::Option<extern "C" fn
4524                                                     (zshandle:
4525                                                          Tcl_ZlibStream,
4526                                                      data: *mut Tcl_Obj,
4527                                                      flush: ::libc::c_int)
4528                                                     -> ::libc::c_int>,
4529    pub tcl_ZlibStreamGet: ::std::option::Option<extern "C" fn
4530                                                     (zshandle:
4531                                                          Tcl_ZlibStream,
4532                                                      data: *mut Tcl_Obj,
4533                                                      count: ::libc::c_int)
4534                                                     -> ::libc::c_int>,
4535    pub tcl_ZlibStreamClose: ::std::option::Option<extern "C" fn
4536                                                       (zshandle:
4537                                                            Tcl_ZlibStream)
4538                                                       -> ::libc::c_int>,
4539    pub tcl_ZlibStreamReset: ::std::option::Option<extern "C" fn
4540                                                       (zshandle:
4541                                                            Tcl_ZlibStream)
4542                                                       -> ::libc::c_int>,
4543    pub tcl_SetStartupScript: ::std::option::Option<extern "C" fn
4544                                                        (path: *mut Tcl_Obj,
4545                                                         encoding:
4546                                                             *const ::libc::c_char)
4547                                                        -> ()>,
4548    pub tcl_GetStartupScript: ::std::option::Option<extern "C" fn
4549                                                        (encodingPtr:
4550                                                             *mut *const ::libc::c_char)
4551                                                        -> *mut Tcl_Obj>,
4552    pub tcl_CloseEx: ::std::option::Option<extern "C" fn
4553                                               (interp: *mut Tcl_Interp,
4554                                                chan: Tcl_Channel,
4555                                                flags: ::libc::c_int)
4556                                               -> ::libc::c_int>,
4557    pub tcl_NRExprObj: ::std::option::Option<extern "C" fn
4558                                                 (interp: *mut Tcl_Interp,
4559                                                  objPtr: *mut Tcl_Obj,
4560                                                  resultPtr: *mut Tcl_Obj)
4561                                                 -> ::libc::c_int>,
4562    pub tcl_NRSubstObj: ::std::option::Option<extern "C" fn
4563                                                  (interp: *mut Tcl_Interp,
4564                                                   objPtr: *mut Tcl_Obj,
4565                                                   flags: ::libc::c_int)
4566                                                  -> ::libc::c_int>,
4567    pub tcl_LoadFile: ::std::option::Option<extern "C" fn
4568                                                (interp: *mut Tcl_Interp,
4569                                                 pathPtr: *mut Tcl_Obj,
4570                                                 symv:
4571                                                     *const *const ::libc::c_char,
4572                                                 flags: ::libc::c_int,
4573                                                 procPtrs:
4574                                                     *mut ::libc::c_void,
4575                                                 handlePtr:
4576                                                     *mut Tcl_LoadHandle)
4577                                                -> ::libc::c_int>,
4578    pub tcl_FindSymbol: ::std::option::Option<extern "C" fn
4579                                                  (interp: *mut Tcl_Interp,
4580                                                   handle: Tcl_LoadHandle,
4581                                                   symbol:
4582                                                       *const ::libc::c_char)
4583                                                  -> *mut ::libc::c_void>,
4584    pub tcl_FSUnloadFile: ::std::option::Option<extern "C" fn
4585                                                    (interp: *mut Tcl_Interp,
4586                                                     handlePtr:
4587                                                         Tcl_LoadHandle)
4588                                                    -> ::libc::c_int>,
4589    pub tcl_ZlibStreamSetCompressionDictionary: ::std::option::Option<extern "C" fn
4590                                                                          (zhandle:
4591                                                                               Tcl_ZlibStream,
4592                                                                           compressionDictionaryObj:
4593                                                                               *mut Tcl_Obj)
4594                                                                          ->
4595                                                                              ()>,
4596}
4597impl ::std::default::Default for Struct_TclStubs {
4598    fn default() -> Struct_TclStubs { unsafe { ::std::mem::zeroed() } }
4599}
4600pub type TclStubs = Struct_TclStubs;
4601#[repr(C)]
4602pub struct Struct_TclPlatStubs {
4603    pub magic: ::libc::c_int,
4604    pub hooks: *mut ::libc::c_void,
4605}
4606impl ::std::default::Default for Struct_TclPlatStubs {
4607    fn default() -> Struct_TclPlatStubs { unsafe { ::std::mem::zeroed() } }
4608}
4609pub type TclPlatStubs = Struct_TclPlatStubs;
4610extern "C" {
4611    pub static mut __stdinp: *mut FILE;
4612    pub static mut __stdoutp: *mut FILE;
4613    pub static mut __stderrp: *mut FILE;
4614    pub static sys_nerr: ::libc::c_int;
4615    pub static mut sys_errlist: *const *const ::libc::c_char;
4616    pub static mut tclStubsPtr: *const TclStubs;
4617    pub static mut tclPlatStubsPtr: *const TclPlatStubs;
4618}
4619extern "C" {
4620    pub fn renameat(arg1: ::libc::c_int, arg2: *const ::libc::c_char,
4621                    arg3: ::libc::c_int, arg4: *const ::libc::c_char)
4622     -> ::libc::c_int;
4623    pub fn clearerr(arg1: *mut FILE) -> ();
4624    pub fn fclose(arg1: *mut FILE) -> ::libc::c_int;
4625    pub fn feof(arg1: *mut FILE) -> ::libc::c_int;
4626    pub fn ferror(arg1: *mut FILE) -> ::libc::c_int;
4627    pub fn fflush(arg1: *mut FILE) -> ::libc::c_int;
4628    pub fn fgetc(arg1: *mut FILE) -> ::libc::c_int;
4629    pub fn fgetpos(arg1: *mut FILE, arg2: *mut fpos_t) -> ::libc::c_int;
4630    pub fn fgets(arg1: *mut ::libc::c_char, arg2: ::libc::c_int,
4631                 arg3: *mut FILE) -> *mut ::libc::c_char;
4632    pub fn fopen(arg1: *const ::libc::c_char, arg2: *const ::libc::c_char)
4633     -> *mut FILE;
4634    pub fn fprintf(arg1: *mut FILE, arg2: *const ::libc::c_char, ...)
4635     -> ::libc::c_int;
4636    pub fn fputc(arg1: ::libc::c_int, arg2: *mut FILE) -> ::libc::c_int;
4637    pub fn fputs(arg1: *const ::libc::c_char, arg2: *mut FILE)
4638     -> ::libc::c_int;
4639    pub fn fread(arg1: *mut ::libc::c_void, arg2: size_t, arg3: size_t,
4640                 arg4: *mut FILE) -> size_t;
4641    pub fn freopen(arg1: *const ::libc::c_char, arg2: *const ::libc::c_char,
4642                   arg3: *mut FILE) -> *mut FILE;
4643    pub fn fscanf(arg1: *mut FILE, arg2: *const ::libc::c_char, ...)
4644     -> ::libc::c_int;
4645    pub fn fseek(arg1: *mut FILE, arg2: ::libc::c_long, arg3: ::libc::c_int)
4646     -> ::libc::c_int;
4647    pub fn fsetpos(arg1: *mut FILE, arg2: *const fpos_t) -> ::libc::c_int;
4648    pub fn ftell(arg1: *mut FILE) -> ::libc::c_long;
4649    pub fn fwrite(arg1: *const ::libc::c_void, arg2: size_t, arg3: size_t,
4650                  arg4: *mut FILE) -> size_t;
4651    pub fn getc(arg1: *mut FILE) -> ::libc::c_int;
4652    pub fn getchar() -> ::libc::c_int;
4653    pub fn gets(arg1: *mut ::libc::c_char) -> *mut ::libc::c_char;
4654    pub fn perror(arg1: *const ::libc::c_char) -> ();
4655    pub fn printf(arg1: *const ::libc::c_char, ...) -> ::libc::c_int;
4656    pub fn putc(arg1: ::libc::c_int, arg2: *mut FILE) -> ::libc::c_int;
4657    pub fn putchar(arg1: ::libc::c_int) -> ::libc::c_int;
4658    pub fn puts(arg1: *const ::libc::c_char) -> ::libc::c_int;
4659    pub fn remove(arg1: *const ::libc::c_char) -> ::libc::c_int;
4660    pub fn rename(arg1: *const ::libc::c_char, arg2: *const ::libc::c_char)
4661     -> ::libc::c_int;
4662    pub fn rewind(arg1: *mut FILE) -> ();
4663    pub fn scanf(arg1: *const ::libc::c_char, ...) -> ::libc::c_int;
4664    pub fn setbuf(arg1: *mut FILE, arg2: *mut ::libc::c_char) -> ();
4665    pub fn setvbuf(arg1: *mut FILE, arg2: *mut ::libc::c_char,
4666                   arg3: ::libc::c_int, arg4: size_t) -> ::libc::c_int;
4667    pub fn sprintf(arg1: *mut ::libc::c_char,
4668                   arg2: *const ::libc::c_char, ...) -> ::libc::c_int;
4669    pub fn sscanf(arg1: *const ::libc::c_char,
4670                  arg2: *const ::libc::c_char, ...) -> ::libc::c_int;
4671    pub fn tmpfile() -> *mut FILE;
4672    pub fn tmpnam(arg1: *mut ::libc::c_char) -> *mut ::libc::c_char;
4673    pub fn ungetc(arg1: ::libc::c_int, arg2: *mut FILE) -> ::libc::c_int;
4674/*    pub fn vfprintf(arg1: *mut FILE, arg2: *const ::libc::c_char,
4675                    arg3: va_list) -> ::libc::c_int;*/
4676/*    pub fn vprintf(arg1: *const ::libc::c_char, arg2: va_list)
4677     -> ::libc::c_int;*/
4678/*    pub fn vsprintf(arg1: *mut ::libc::c_char, arg2: *const ::libc::c_char,
4679                    arg3: va_list) -> ::libc::c_int;*/
4680    pub fn ctermid(arg1: *mut ::libc::c_char) -> *mut ::libc::c_char;
4681    pub fn fdopen(arg1: ::libc::c_int, arg2: *const ::libc::c_char)
4682     -> *mut FILE;
4683    pub fn fileno(arg1: *mut FILE) -> ::libc::c_int;
4684    pub fn pclose(arg1: *mut FILE) -> ::libc::c_int;
4685    pub fn popen(arg1: *const ::libc::c_char, arg2: *const ::libc::c_char)
4686     -> *mut FILE;
4687    pub fn __srget(arg1: *mut FILE) -> ::libc::c_int;
4688/*    pub fn __svfscanf(arg1: *mut FILE, arg2: *const ::libc::c_char,
4689                      arg3: va_list) -> ::libc::c_int;*/
4690    pub fn __swbuf(arg1: ::libc::c_int, arg2: *mut FILE) -> ::libc::c_int;
4691    pub fn __sputc(_c: ::libc::c_int, _p: *mut FILE) -> ::libc::c_int;
4692    pub fn flockfile(arg1: *mut FILE) -> ();
4693    pub fn ftrylockfile(arg1: *mut FILE) -> ::libc::c_int;
4694    pub fn funlockfile(arg1: *mut FILE) -> ();
4695    pub fn getc_unlocked(arg1: *mut FILE) -> ::libc::c_int;
4696    pub fn getchar_unlocked() -> ::libc::c_int;
4697    pub fn putc_unlocked(arg1: ::libc::c_int, arg2: *mut FILE)
4698     -> ::libc::c_int;
4699    pub fn putchar_unlocked(arg1: ::libc::c_int) -> ::libc::c_int;
4700    pub fn getw(arg1: *mut FILE) -> ::libc::c_int;
4701    pub fn putw(arg1: ::libc::c_int, arg2: *mut FILE) -> ::libc::c_int;
4702    pub fn tempnam(arg1: *const ::libc::c_char, arg2: *const ::libc::c_char)
4703     -> *mut ::libc::c_char;
4704    pub fn fseeko(arg1: *mut FILE, arg2: off_t, arg3: ::libc::c_int)
4705     -> ::libc::c_int;
4706    pub fn ftello(arg1: *mut FILE) -> off_t;
4707    pub fn snprintf(arg1: *mut ::libc::c_char, arg2: size_t,
4708                    arg3: *const ::libc::c_char, ...) -> ::libc::c_int;
4709/*    pub fn vfscanf(arg1: *mut FILE, arg2: *const ::libc::c_char,
4710                   arg3: va_list) -> ::libc::c_int;*/
4711/*    pub fn vscanf(arg1: *const ::libc::c_char, arg2: va_list)
4712     -> ::libc::c_int;*/
4713/*    pub fn vsnprintf(arg1: *mut ::libc::c_char, arg2: size_t,
4714                     arg3: *const ::libc::c_char, arg4: va_list)
4715     -> ::libc::c_int;*/
4716/*    pub fn vsscanf(arg1: *const ::libc::c_char, arg2: *const ::libc::c_char,
4717                   arg3: va_list) -> ::libc::c_int;*/
4718    pub fn dprintf(arg1: ::libc::c_int, arg2: *const ::libc::c_char, ...)
4719     -> ::libc::c_int;
4720/*    pub fn vdprintf(arg1: ::libc::c_int, arg2: *const ::libc::c_char,
4721                    arg3: va_list) -> ::libc::c_int;*/
4722    pub fn getdelim(arg1: *mut *mut ::libc::c_char, arg2: *mut size_t,
4723                    arg3: ::libc::c_int, arg4: *mut FILE) -> ssize_t;
4724    pub fn getline(arg1: *mut *mut ::libc::c_char, arg2: *mut size_t,
4725                   arg3: *mut FILE) -> ssize_t;
4726    pub fn asprintf(arg1: *mut *mut ::libc::c_char,
4727                    arg2: *const ::libc::c_char, ...) -> ::libc::c_int;
4728    pub fn ctermid_r(arg1: *mut ::libc::c_char) -> *mut ::libc::c_char;
4729    pub fn fgetln(arg1: *mut FILE, arg2: *mut size_t) -> *mut ::libc::c_char;
4730    pub fn fmtcheck(arg1: *const ::libc::c_char, arg2: *const ::libc::c_char)
4731     -> *const ::libc::c_char;
4732    pub fn fpurge(arg1: *mut FILE) -> ::libc::c_int;
4733    pub fn setbuffer(arg1: *mut FILE, arg2: *mut ::libc::c_char,
4734                     arg3: ::libc::c_int) -> ();
4735    pub fn setlinebuf(arg1: *mut FILE) -> ::libc::c_int;
4736/*    pub fn vasprintf(arg1: *mut *mut ::libc::c_char,
4737                     arg2: *const ::libc::c_char, arg3: va_list)
4738     -> ::libc::c_int;*/
4739    pub fn zopen(arg1: *const ::libc::c_char, arg2: *const ::libc::c_char,
4740                 arg3: ::libc::c_int) -> *mut FILE;
4741    pub fn funopen(arg1: *const ::libc::c_void,
4742                   arg2:
4743                       ::std::option::Option<extern "C" fn
4744                                                 (arg1: *mut ::libc::c_void,
4745                                                  arg2: *mut ::libc::c_char,
4746                                                  arg3: ::libc::c_int)
4747                                                 -> ::libc::c_int>,
4748                   arg3:
4749                       ::std::option::Option<extern "C" fn
4750                                                 (arg1: *mut ::libc::c_void,
4751                                                  arg2: *const ::libc::c_char,
4752                                                  arg3: ::libc::c_int)
4753                                                 -> ::libc::c_int>,
4754                   arg4:
4755                       ::std::option::Option<extern "C" fn
4756                                                 (arg1: *mut ::libc::c_void,
4757                                                  arg2: fpos_t,
4758                                                  arg3: ::libc::c_int)
4759                                                 -> fpos_t>,
4760                   arg5:
4761                       ::std::option::Option<extern "C" fn
4762                                                 (arg1: *mut ::libc::c_void)
4763                                                 -> ::libc::c_int>)
4764     -> *mut FILE;
4765    pub fn __sprintf_chk(arg1: *mut ::libc::c_char, arg2: ::libc::c_int,
4766                         arg3: size_t, arg4: *const ::libc::c_char, ...)
4767     -> ::libc::c_int;
4768    pub fn __snprintf_chk(arg1: *mut ::libc::c_char, arg2: size_t,
4769                          arg3: ::libc::c_int, arg4: size_t,
4770                          arg5: *const ::libc::c_char, ...) -> ::libc::c_int;
4771/*    pub fn __vsprintf_chk(arg1: *mut ::libc::c_char, arg2: ::libc::c_int,
4772                          arg3: size_t, arg4: *const ::libc::c_char,
4773                          arg5: va_list) -> ::libc::c_int;*/
4774/*    pub fn __vsnprintf_chk(arg1: *mut ::libc::c_char, arg2: size_t,
4775                           arg3: ::libc::c_int, arg4: size_t,
4776                           arg5: *const ::libc::c_char, arg6: va_list)
4777     -> ::libc::c_int;*/
4778    //pub fn Tcl_IncrRefCount(objPtr: *mut Tcl_Obj) -> (); //NOTICE: These two functions are defined as a macro :(
4779    //pub fn Tcl_DecrRefCount(objPtr: *mut Tcl_Obj) -> ();
4780    //pub fn Tcl_IsShared(objPtr: *mut Tcl_Obj) -> ::libc::c_int;
4781    pub fn Tcl_InitStubs(interp: *mut Tcl_Interp,
4782                         version: *const ::libc::c_char, exact: ::libc::c_int)
4783     -> *const ::libc::c_char;
4784    pub fn TclTomMathInitializeStubs(interp: *mut Tcl_Interp,
4785                                     version: *const ::libc::c_char,
4786                                     epoch: ::libc::c_int,
4787                                     revision: ::libc::c_int)
4788     -> *const ::libc::c_char;
4789    pub fn Tcl_MainEx(argc: ::libc::c_int, argv: *mut *mut ::libc::c_char,
4790                      appInitProc: *mut Tcl_AppInitProc,
4791                      interp: *mut Tcl_Interp) -> ();
4792    pub fn Tcl_PkgInitStubsCheck(interp: *mut Tcl_Interp,
4793                                 version: *const ::libc::c_char,
4794                                 exact: ::libc::c_int)
4795     -> *const ::libc::c_char;
4796    pub fn Tcl_PkgProvideEx(interp: *mut Tcl_Interp,
4797                            name: *const ::libc::c_char,
4798                            version: *const ::libc::c_char,
4799                            clientData: *const ::libc::c_void)
4800     -> ::libc::c_int;
4801    pub fn Tcl_PkgRequireEx(interp: *mut Tcl_Interp,
4802                            name: *const ::libc::c_char,
4803                            version: *const ::libc::c_char,
4804                            exact: ::libc::c_int,
4805                            clientDataPtr: *mut ::libc::c_void)
4806     -> *const ::libc::c_char;
4807    pub fn Tcl_Panic(format: *const ::libc::c_char, ...) -> ();
4808    pub fn Tcl_Alloc(size: ::libc::c_uint) -> *mut ::libc::c_char;
4809    pub fn Tcl_Free(ptr: *mut ::libc::c_char) -> ();
4810    pub fn Tcl_Realloc(ptr: *mut ::libc::c_char, size: ::libc::c_uint)
4811     -> *mut ::libc::c_char;
4812    pub fn Tcl_DbCkalloc(size: ::libc::c_uint, file: *const ::libc::c_char,
4813                         line: ::libc::c_int) -> *mut ::libc::c_char;
4814    pub fn Tcl_DbCkfree(ptr: *mut ::libc::c_char, file: *const ::libc::c_char,
4815                        line: ::libc::c_int) -> ();
4816    pub fn Tcl_DbCkrealloc(ptr: *mut ::libc::c_char, size: ::libc::c_uint,
4817                           file: *const ::libc::c_char, line: ::libc::c_int)
4818     -> *mut ::libc::c_char;
4819    pub fn Tcl_CreateFileHandler(fd: ::libc::c_int, mask: ::libc::c_int,
4820                                 _proc: *mut Tcl_FileProc,
4821                                 clientData: ClientData) -> ();
4822    pub fn Tcl_DeleteFileHandler(fd: ::libc::c_int) -> ();
4823    pub fn Tcl_SetTimer(timePtr: *const Tcl_Time) -> ();
4824    pub fn Tcl_Sleep(ms: ::libc::c_int) -> ();
4825    pub fn Tcl_WaitForEvent(timePtr: *const Tcl_Time) -> ::libc::c_int;
4826    pub fn Tcl_AppendAllObjTypes(interp: *mut Tcl_Interp,
4827                                 objPtr: *mut Tcl_Obj) -> ::libc::c_int;
4828    pub fn Tcl_AppendStringsToObj(objPtr: *mut Tcl_Obj, ...) -> ();
4829    pub fn Tcl_AppendToObj(objPtr: *mut Tcl_Obj, bytes: *const ::libc::c_char,
4830                           length: ::libc::c_int) -> ();
4831    pub fn Tcl_ConcatObj(objc: ::libc::c_int, objv: *const *mut Tcl_Obj)
4832     -> *mut Tcl_Obj;
4833    pub fn Tcl_ConvertToType(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
4834                             typePtr: *const Tcl_ObjType) -> ::libc::c_int;
4835    pub fn Tcl_DbDecrRefCount(objPtr: *mut Tcl_Obj,
4836                              file: *const ::libc::c_char,
4837                              line: ::libc::c_int) -> ();
4838    pub fn Tcl_DbIncrRefCount(objPtr: *mut Tcl_Obj,
4839                              file: *const ::libc::c_char,
4840                              line: ::libc::c_int) -> ();
4841    pub fn Tcl_DbIsShared(objPtr: *mut Tcl_Obj, file: *const ::libc::c_char,
4842                          line: ::libc::c_int) -> ::libc::c_int;
4843    pub fn Tcl_DbNewBooleanObj(boolValue: ::libc::c_int,
4844                               file: *const ::libc::c_char,
4845                               line: ::libc::c_int) -> *mut Tcl_Obj;
4846    pub fn Tcl_DbNewByteArrayObj(bytes: *const ::libc::c_uchar,
4847                                 length: ::libc::c_int,
4848                                 file: *const ::libc::c_char,
4849                                 line: ::libc::c_int) -> *mut Tcl_Obj;
4850    pub fn Tcl_DbNewDoubleObj(doubleValue: ::libc::c_double,
4851                              file: *const ::libc::c_char,
4852                              line: ::libc::c_int) -> *mut Tcl_Obj;
4853    pub fn Tcl_DbNewListObj(objc: ::libc::c_int, objv: *const *mut Tcl_Obj,
4854                            file: *const ::libc::c_char, line: ::libc::c_int)
4855     -> *mut Tcl_Obj;
4856    pub fn Tcl_DbNewLongObj(longValue: ::libc::c_long,
4857                            file: *const ::libc::c_char, line: ::libc::c_int)
4858     -> *mut Tcl_Obj;
4859    pub fn Tcl_DbNewObj(file: *const ::libc::c_char, line: ::libc::c_int)
4860     -> *mut Tcl_Obj;
4861    pub fn Tcl_DbNewStringObj(bytes: *const ::libc::c_char,
4862                              length: ::libc::c_int,
4863                              file: *const ::libc::c_char,
4864                              line: ::libc::c_int) -> *mut Tcl_Obj;
4865    pub fn Tcl_DuplicateObj(objPtr: *mut Tcl_Obj) -> *mut Tcl_Obj;
4866    pub fn TclFreeObj(objPtr: *mut Tcl_Obj) -> ();
4867    pub fn Tcl_GetBoolean(interp: *mut Tcl_Interp, src: *const ::libc::c_char,
4868                          boolPtr: *mut ::libc::c_int) -> ::libc::c_int;
4869    pub fn Tcl_GetBooleanFromObj(interp: *mut Tcl_Interp,
4870                                 objPtr: *mut Tcl_Obj,
4871                                 boolPtr: *mut ::libc::c_int)
4872     -> ::libc::c_int;
4873    pub fn Tcl_GetByteArrayFromObj(objPtr: *mut Tcl_Obj,
4874                                   lengthPtr: *mut ::libc::c_int)
4875     -> *mut ::libc::c_uchar;
4876    pub fn Tcl_GetDouble(interp: *mut Tcl_Interp, src: *const ::libc::c_char,
4877                         doublePtr: *mut ::libc::c_double) -> ::libc::c_int;
4878    pub fn Tcl_GetDoubleFromObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
4879                                doublePtr: *mut ::libc::c_double)
4880     -> ::libc::c_int;
4881    pub fn Tcl_GetIndexFromObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
4882                               tablePtr: *const *const ::libc::c_char,
4883                               msg: *const ::libc::c_char,
4884                               flags: ::libc::c_int,
4885                               indexPtr: *mut ::libc::c_int) -> ::libc::c_int;
4886    pub fn Tcl_GetInt(interp: *mut Tcl_Interp, src: *const ::libc::c_char,
4887                      intPtr: *mut ::libc::c_int) -> ::libc::c_int;
4888    pub fn Tcl_GetIntFromObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
4889                             intPtr: *mut ::libc::c_int) -> ::libc::c_int;
4890    pub fn Tcl_GetLongFromObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
4891                              longPtr: *mut ::libc::c_long) -> ::libc::c_int;
4892    pub fn Tcl_GetObjType(typeName: *const ::libc::c_char)
4893     -> *const Tcl_ObjType;
4894    pub fn Tcl_GetStringFromObj(objPtr: *mut Tcl_Obj,
4895                                lengthPtr: *mut ::libc::c_int)
4896     -> *mut ::libc::c_char;
4897    pub fn Tcl_InvalidateStringRep(objPtr: *mut Tcl_Obj) -> ();
4898    pub fn Tcl_ListObjAppendList(interp: *mut Tcl_Interp,
4899                                 listPtr: *mut Tcl_Obj,
4900                                 elemListPtr: *mut Tcl_Obj) -> ::libc::c_int;
4901    pub fn Tcl_ListObjAppendElement(interp: *mut Tcl_Interp,
4902                                    listPtr: *mut Tcl_Obj,
4903                                    objPtr: *mut Tcl_Obj) -> ::libc::c_int;
4904    pub fn Tcl_ListObjGetElements(interp: *mut Tcl_Interp,
4905                                  listPtr: *mut Tcl_Obj,
4906                                  objcPtr: *mut ::libc::c_int,
4907                                  objvPtr: *mut *mut *mut Tcl_Obj)
4908     -> ::libc::c_int;
4909    pub fn Tcl_ListObjIndex(interp: *mut Tcl_Interp, listPtr: *mut Tcl_Obj,
4910                            index: ::libc::c_int,
4911                            objPtrPtr: *mut *mut Tcl_Obj) -> ::libc::c_int;
4912    pub fn Tcl_ListObjLength(interp: *mut Tcl_Interp, listPtr: *mut Tcl_Obj,
4913                             lengthPtr: *mut ::libc::c_int) -> ::libc::c_int;
4914    pub fn Tcl_ListObjReplace(interp: *mut Tcl_Interp, listPtr: *mut Tcl_Obj,
4915                              first: ::libc::c_int, count: ::libc::c_int,
4916                              objc: ::libc::c_int, objv: *const *mut Tcl_Obj)
4917     -> ::libc::c_int;
4918    pub fn Tcl_NewBooleanObj(boolValue: ::libc::c_int) -> *mut Tcl_Obj;
4919    pub fn Tcl_NewByteArrayObj(bytes: *const ::libc::c_uchar,
4920                               length: ::libc::c_int) -> *mut Tcl_Obj;
4921    pub fn Tcl_NewDoubleObj(doubleValue: ::libc::c_double) -> *mut Tcl_Obj;
4922    pub fn Tcl_NewIntObj(intValue: ::libc::c_int) -> *mut Tcl_Obj;
4923    pub fn Tcl_NewListObj(objc: ::libc::c_int, objv: *const *mut Tcl_Obj)
4924     -> *mut Tcl_Obj;
4925    pub fn Tcl_NewLongObj(longValue: ::libc::c_long) -> *mut Tcl_Obj;
4926    pub fn Tcl_NewObj() -> *mut Tcl_Obj;
4927    pub fn Tcl_NewStringObj(bytes: *const ::libc::c_char,
4928                            length: ::libc::c_int) -> *mut Tcl_Obj;
4929    pub fn Tcl_SetBooleanObj(objPtr: *mut Tcl_Obj, boolValue: ::libc::c_int)
4930     -> ();
4931    pub fn Tcl_SetByteArrayLength(objPtr: *mut Tcl_Obj, length: ::libc::c_int)
4932     -> *mut ::libc::c_uchar;
4933    pub fn Tcl_SetByteArrayObj(objPtr: *mut Tcl_Obj,
4934                               bytes: *const ::libc::c_uchar,
4935                               length: ::libc::c_int) -> ();
4936    pub fn Tcl_SetDoubleObj(objPtr: *mut Tcl_Obj,
4937                            doubleValue: ::libc::c_double) -> ();
4938    pub fn Tcl_SetIntObj(objPtr: *mut Tcl_Obj, intValue: ::libc::c_int) -> ();
4939    pub fn Tcl_SetListObj(objPtr: *mut Tcl_Obj, objc: ::libc::c_int,
4940                          objv: *const *mut Tcl_Obj) -> ();
4941    pub fn Tcl_SetLongObj(objPtr: *mut Tcl_Obj, longValue: ::libc::c_long)
4942     -> ();
4943    pub fn Tcl_SetObjLength(objPtr: *mut Tcl_Obj, length: ::libc::c_int)
4944     -> ();
4945    pub fn Tcl_SetStringObj(objPtr: *mut Tcl_Obj,
4946                            bytes: *const ::libc::c_char,
4947                            length: ::libc::c_int) -> ();
4948    pub fn Tcl_AddErrorInfo(interp: *mut Tcl_Interp,
4949                            message: *const ::libc::c_char) -> ();
4950    pub fn Tcl_AddObjErrorInfo(interp: *mut Tcl_Interp,
4951                               message: *const ::libc::c_char,
4952                               length: ::libc::c_int) -> ();
4953    pub fn Tcl_AllowExceptions(interp: *mut Tcl_Interp) -> ();
4954    pub fn Tcl_AppendElement(interp: *mut Tcl_Interp,
4955                             element: *const ::libc::c_char) -> ();
4956    pub fn Tcl_AppendResult(interp: *mut Tcl_Interp, ...) -> ();
4957    pub fn Tcl_AsyncCreate(_proc: *mut Tcl_AsyncProc, clientData: ClientData)
4958     -> Tcl_AsyncHandler;
4959    pub fn Tcl_AsyncDelete(async: Tcl_AsyncHandler) -> ();
4960    pub fn Tcl_AsyncInvoke(interp: *mut Tcl_Interp, code: ::libc::c_int)
4961     -> ::libc::c_int;
4962    pub fn Tcl_AsyncMark(async: Tcl_AsyncHandler) -> ();
4963    pub fn Tcl_AsyncReady() -> ::libc::c_int;
4964    pub fn Tcl_BackgroundError(interp: *mut Tcl_Interp) -> ();
4965    pub fn Tcl_Backslash(src: *const ::libc::c_char,
4966                         readPtr: *mut ::libc::c_int) -> ::libc::c_char;
4967    pub fn Tcl_BadChannelOption(interp: *mut Tcl_Interp,
4968                                optionName: *const ::libc::c_char,
4969                                optionList: *const ::libc::c_char)
4970     -> ::libc::c_int;
4971    pub fn Tcl_CallWhenDeleted(interp: *mut Tcl_Interp,
4972                               _proc: *mut Tcl_InterpDeleteProc,
4973                               clientData: ClientData) -> ();
4974    pub fn Tcl_CancelIdleCall(idleProc: *mut Tcl_IdleProc,
4975                              clientData: ClientData) -> ();
4976    pub fn Tcl_Close(interp: *mut Tcl_Interp, chan: Tcl_Channel)
4977     -> ::libc::c_int;
4978    pub fn Tcl_CommandComplete(cmd: *const ::libc::c_char) -> ::libc::c_int;
4979    pub fn Tcl_Concat(argc: ::libc::c_int, argv: *const *const ::libc::c_char)
4980     -> *mut ::libc::c_char;
4981    pub fn Tcl_ConvertElement(src: *const ::libc::c_char,
4982                              dst: *mut ::libc::c_char, flags: ::libc::c_int)
4983     -> ::libc::c_int;
4984    pub fn Tcl_ConvertCountedElement(src: *const ::libc::c_char,
4985                                     length: ::libc::c_int,
4986                                     dst: *mut ::libc::c_char,
4987                                     flags: ::libc::c_int) -> ::libc::c_int;
4988    pub fn Tcl_CreateAlias(slave: *mut Tcl_Interp,
4989                           slaveCmd: *const ::libc::c_char,
4990                           target: *mut Tcl_Interp,
4991                           targetCmd: *const ::libc::c_char,
4992                           argc: ::libc::c_int,
4993                           argv: *const *const ::libc::c_char)
4994     -> ::libc::c_int;
4995    pub fn Tcl_CreateAliasObj(slave: *mut Tcl_Interp,
4996                              slaveCmd: *const ::libc::c_char,
4997                              target: *mut Tcl_Interp,
4998                              targetCmd: *const ::libc::c_char,
4999                              objc: ::libc::c_int, objv: *const *mut Tcl_Obj)
5000     -> ::libc::c_int;
5001    pub fn Tcl_CreateChannel(typePtr: *const Tcl_ChannelType,
5002                             chanName: *const ::libc::c_char,
5003                             instanceData: ClientData, mask: ::libc::c_int)
5004     -> Tcl_Channel;
5005    pub fn Tcl_CreateChannelHandler(chan: Tcl_Channel, mask: ::libc::c_int,
5006                                    _proc: *mut Tcl_ChannelProc,
5007                                    clientData: ClientData) -> ();
5008    pub fn Tcl_CreateCloseHandler(chan: Tcl_Channel,
5009                                  _proc: *mut Tcl_CloseProc,
5010                                  clientData: ClientData) -> ();
5011    pub fn Tcl_CreateCommand(interp: *mut Tcl_Interp,
5012                             cmdName: *const ::libc::c_char,
5013                             _proc: *mut Tcl_CmdProc, clientData: ClientData,
5014                             deleteProc: *mut Tcl_CmdDeleteProc)
5015     -> Tcl_Command;
5016    pub fn Tcl_CreateEventSource(setupProc: *mut Tcl_EventSetupProc,
5017                                 checkProc: *mut Tcl_EventCheckProc,
5018                                 clientData: ClientData) -> ();
5019    pub fn Tcl_CreateExitHandler(_proc: *mut Tcl_ExitProc,
5020                                 clientData: ClientData) -> ();
5021    pub fn Tcl_CreateInterp() -> *mut Tcl_Interp;
5022    pub fn Tcl_CreateMathFunc(interp: *mut Tcl_Interp,
5023                              name: *const ::libc::c_char,
5024                              numArgs: ::libc::c_int,
5025                              argTypes: *mut Tcl_ValueType,
5026                              _proc: *mut Tcl_MathProc,
5027                              clientData: ClientData) -> ();
5028    pub fn Tcl_CreateObjCommand(interp: *mut Tcl_Interp,
5029                                cmdName: *const ::libc::c_char,
5030                                _proc: *mut Tcl_ObjCmdProc,
5031                                clientData: ClientData,
5032                                deleteProc: *mut Tcl_CmdDeleteProc)
5033     -> Tcl_Command;
5034    pub fn Tcl_CreateSlave(interp: *mut Tcl_Interp,
5035                           slaveName: *const ::libc::c_char,
5036                           isSafe: ::libc::c_int) -> *mut Tcl_Interp;
5037    pub fn Tcl_CreateTimerHandler(milliseconds: ::libc::c_int,
5038                                  _proc: *mut Tcl_TimerProc,
5039                                  clientData: ClientData) -> Tcl_TimerToken;
5040    pub fn Tcl_CreateTrace(interp: *mut Tcl_Interp, level: ::libc::c_int,
5041                           _proc: *mut Tcl_CmdTraceProc,
5042                           clientData: ClientData) -> Tcl_Trace;
5043    pub fn Tcl_DeleteAssocData(interp: *mut Tcl_Interp,
5044                               name: *const ::libc::c_char) -> ();
5045    pub fn Tcl_DeleteChannelHandler(chan: Tcl_Channel,
5046                                    _proc: *mut Tcl_ChannelProc,
5047                                    clientData: ClientData) -> ();
5048    pub fn Tcl_DeleteCloseHandler(chan: Tcl_Channel,
5049                                  _proc: *mut Tcl_CloseProc,
5050                                  clientData: ClientData) -> ();
5051    pub fn Tcl_DeleteCommand(interp: *mut Tcl_Interp,
5052                             cmdName: *const ::libc::c_char) -> ::libc::c_int;
5053    pub fn Tcl_DeleteCommandFromToken(interp: *mut Tcl_Interp,
5054                                      command: Tcl_Command) -> ::libc::c_int;
5055    pub fn Tcl_DeleteEvents(_proc: *mut Tcl_EventDeleteProc,
5056                            clientData: ClientData) -> ();
5057    pub fn Tcl_DeleteEventSource(setupProc: *mut Tcl_EventSetupProc,
5058                                 checkProc: *mut Tcl_EventCheckProc,
5059                                 clientData: ClientData) -> ();
5060    pub fn Tcl_DeleteExitHandler(_proc: *mut Tcl_ExitProc,
5061                                 clientData: ClientData) -> ();
5062    pub fn Tcl_DeleteHashEntry(entryPtr: *mut Tcl_HashEntry) -> ();
5063    pub fn Tcl_DeleteHashTable(tablePtr: *mut Tcl_HashTable) -> ();
5064    pub fn Tcl_DeleteInterp(interp: *mut Tcl_Interp) -> ();
5065    pub fn Tcl_DetachPids(numPids: ::libc::c_int, pidPtr: *mut Tcl_Pid) -> ();
5066    pub fn Tcl_DeleteTimerHandler(token: Tcl_TimerToken) -> ();
5067    pub fn Tcl_DeleteTrace(interp: *mut Tcl_Interp, trace: Tcl_Trace) -> ();
5068    pub fn Tcl_DontCallWhenDeleted(interp: *mut Tcl_Interp,
5069                                   _proc: *mut Tcl_InterpDeleteProc,
5070                                   clientData: ClientData) -> ();
5071    pub fn Tcl_DoOneEvent(flags: ::libc::c_int) -> ::libc::c_int;
5072    pub fn Tcl_DoWhenIdle(_proc: *mut Tcl_IdleProc, clientData: ClientData)
5073     -> ();
5074    pub fn Tcl_DStringAppend(dsPtr: *mut Tcl_DString,
5075                             bytes: *const ::libc::c_char,
5076                             length: ::libc::c_int) -> *mut ::libc::c_char;
5077    pub fn Tcl_DStringAppendElement(dsPtr: *mut Tcl_DString,
5078                                    element: *const ::libc::c_char)
5079     -> *mut ::libc::c_char;
5080    pub fn Tcl_DStringEndSublist(dsPtr: *mut Tcl_DString) -> ();
5081    pub fn Tcl_DStringFree(dsPtr: *mut Tcl_DString) -> ();
5082    pub fn Tcl_DStringGetResult(interp: *mut Tcl_Interp,
5083                                dsPtr: *mut Tcl_DString) -> ();
5084    pub fn Tcl_DStringInit(dsPtr: *mut Tcl_DString) -> ();
5085    pub fn Tcl_DStringResult(interp: *mut Tcl_Interp, dsPtr: *mut Tcl_DString)
5086     -> ();
5087    pub fn Tcl_DStringSetLength(dsPtr: *mut Tcl_DString,
5088                                length: ::libc::c_int) -> ();
5089    pub fn Tcl_DStringStartSublist(dsPtr: *mut Tcl_DString) -> ();
5090    pub fn Tcl_Eof(chan: Tcl_Channel) -> ::libc::c_int;
5091    pub fn Tcl_ErrnoId() -> *const ::libc::c_char;
5092    pub fn Tcl_ErrnoMsg(err: ::libc::c_int) -> *const ::libc::c_char;
5093    pub fn Tcl_Eval(interp: *mut Tcl_Interp, script: *const ::libc::c_char)
5094     -> ::libc::c_int;
5095    pub fn Tcl_EvalFile(interp: *mut Tcl_Interp,
5096                        fileName: *const ::libc::c_char) -> ::libc::c_int;
5097    pub fn Tcl_EvalObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj)
5098     -> ::libc::c_int;
5099    pub fn Tcl_EventuallyFree(clientData: ClientData,
5100                              freeProc: *mut Tcl_FreeProc) -> ();
5101    pub fn Tcl_Exit(status: ::libc::c_int) -> ();
5102    pub fn Tcl_ExposeCommand(interp: *mut Tcl_Interp,
5103                             hiddenCmdToken: *const ::libc::c_char,
5104                             cmdName: *const ::libc::c_char) -> ::libc::c_int;
5105    pub fn Tcl_ExprBoolean(interp: *mut Tcl_Interp,
5106                           expr: *const ::libc::c_char,
5107                           ptr: *mut ::libc::c_int) -> ::libc::c_int;
5108    pub fn Tcl_ExprBooleanObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
5109                              ptr: *mut ::libc::c_int) -> ::libc::c_int;
5110    pub fn Tcl_ExprDouble(interp: *mut Tcl_Interp,
5111                          expr: *const ::libc::c_char,
5112                          ptr: *mut ::libc::c_double) -> ::libc::c_int;
5113    pub fn Tcl_ExprDoubleObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
5114                             ptr: *mut ::libc::c_double) -> ::libc::c_int;
5115    pub fn Tcl_ExprLong(interp: *mut Tcl_Interp, expr: *const ::libc::c_char,
5116                        ptr: *mut ::libc::c_long) -> ::libc::c_int;
5117    pub fn Tcl_ExprLongObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
5118                           ptr: *mut ::libc::c_long) -> ::libc::c_int;
5119    pub fn Tcl_ExprObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
5120                       resultPtrPtr: *mut *mut Tcl_Obj) -> ::libc::c_int;
5121    pub fn Tcl_ExprString(interp: *mut Tcl_Interp,
5122                          expr: *const ::libc::c_char) -> ::libc::c_int;
5123    pub fn Tcl_Finalize() -> ();
5124    pub fn Tcl_FindExecutable(argv0: *const ::libc::c_char) -> ();
5125    pub fn Tcl_FirstHashEntry(tablePtr: *mut Tcl_HashTable,
5126                              searchPtr: *mut Tcl_HashSearch)
5127     -> *mut Tcl_HashEntry;
5128    pub fn Tcl_Flush(chan: Tcl_Channel) -> ::libc::c_int;
5129    pub fn Tcl_FreeResult(interp: *mut Tcl_Interp) -> ();
5130    pub fn Tcl_GetAlias(interp: *mut Tcl_Interp,
5131                        slaveCmd: *const ::libc::c_char,
5132                        targetInterpPtr: *mut *mut Tcl_Interp,
5133                        targetCmdPtr: *mut *const ::libc::c_char,
5134                        argcPtr: *mut ::libc::c_int,
5135                        argvPtr: *mut *mut *const ::libc::c_char)
5136     -> ::libc::c_int;
5137    pub fn Tcl_GetAliasObj(interp: *mut Tcl_Interp,
5138                           slaveCmd: *const ::libc::c_char,
5139                           targetInterpPtr: *mut *mut Tcl_Interp,
5140                           targetCmdPtr: *mut *const ::libc::c_char,
5141                           objcPtr: *mut ::libc::c_int,
5142                           objv: *mut *mut *mut Tcl_Obj) -> ::libc::c_int;
5143    pub fn Tcl_GetAssocData(interp: *mut Tcl_Interp,
5144                            name: *const ::libc::c_char,
5145                            procPtr: *mut *mut Tcl_InterpDeleteProc)
5146     -> ClientData;
5147    pub fn Tcl_GetChannel(interp: *mut Tcl_Interp,
5148                          chanName: *const ::libc::c_char,
5149                          modePtr: *mut ::libc::c_int) -> Tcl_Channel;
5150    pub fn Tcl_GetChannelBufferSize(chan: Tcl_Channel) -> ::libc::c_int;
5151    pub fn Tcl_GetChannelHandle(chan: Tcl_Channel, direction: ::libc::c_int,
5152                                handlePtr: *mut ClientData) -> ::libc::c_int;
5153    pub fn Tcl_GetChannelInstanceData(chan: Tcl_Channel) -> ClientData;
5154    pub fn Tcl_GetChannelMode(chan: Tcl_Channel) -> ::libc::c_int;
5155    pub fn Tcl_GetChannelName(chan: Tcl_Channel) -> *const ::libc::c_char;
5156    pub fn Tcl_GetChannelOption(interp: *mut Tcl_Interp, chan: Tcl_Channel,
5157                                optionName: *const ::libc::c_char,
5158                                dsPtr: *mut Tcl_DString) -> ::libc::c_int;
5159    pub fn Tcl_GetChannelType(chan: Tcl_Channel) -> *const Tcl_ChannelType;
5160    pub fn Tcl_GetCommandInfo(interp: *mut Tcl_Interp,
5161                              cmdName: *const ::libc::c_char,
5162                              infoPtr: *mut Tcl_CmdInfo) -> ::libc::c_int;
5163    pub fn Tcl_GetCommandName(interp: *mut Tcl_Interp, command: Tcl_Command)
5164     -> *const ::libc::c_char;
5165    pub fn Tcl_GetErrno() -> ::libc::c_int;
5166    pub fn Tcl_GetHostName() -> *const ::libc::c_char;
5167    pub fn Tcl_GetInterpPath(askInterp: *mut Tcl_Interp,
5168                             slaveInterp: *mut Tcl_Interp) -> ::libc::c_int;
5169    pub fn Tcl_GetMaster(interp: *mut Tcl_Interp) -> *mut Tcl_Interp;
5170    pub fn Tcl_GetNameOfExecutable() -> *const ::libc::c_char;
5171    pub fn Tcl_GetObjResult(interp: *mut Tcl_Interp) -> *mut Tcl_Obj;
5172    pub fn Tcl_GetOpenFile(interp: *mut Tcl_Interp,
5173                           chanID: *const ::libc::c_char,
5174                           forWriting: ::libc::c_int,
5175                           checkUsage: ::libc::c_int,
5176                           filePtr: *mut ClientData) -> ::libc::c_int;
5177    pub fn Tcl_GetPathType(path: *const ::libc::c_char) -> Tcl_PathType;
5178    pub fn Tcl_Gets(chan: Tcl_Channel, dsPtr: *mut Tcl_DString)
5179     -> ::libc::c_int;
5180    pub fn Tcl_GetsObj(chan: Tcl_Channel, objPtr: *mut Tcl_Obj)
5181     -> ::libc::c_int;
5182    pub fn Tcl_GetServiceMode() -> ::libc::c_int;
5183    pub fn Tcl_GetSlave(interp: *mut Tcl_Interp,
5184                        slaveName: *const ::libc::c_char) -> *mut Tcl_Interp;
5185    pub fn Tcl_GetStdChannel(_type: ::libc::c_int) -> Tcl_Channel;
5186    pub fn Tcl_GetStringResult(interp: *mut Tcl_Interp)
5187     -> *const ::libc::c_char;
5188    pub fn Tcl_GetVar(interp: *mut Tcl_Interp, varName: *const ::libc::c_char,
5189                      flags: ::libc::c_int) -> *const ::libc::c_char;
5190    pub fn Tcl_GetVar2(interp: *mut Tcl_Interp, part1: *const ::libc::c_char,
5191                       part2: *const ::libc::c_char, flags: ::libc::c_int)
5192     -> *const ::libc::c_char;
5193    pub fn Tcl_GlobalEval(interp: *mut Tcl_Interp,
5194                          command: *const ::libc::c_char) -> ::libc::c_int;
5195    pub fn Tcl_GlobalEvalObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj)
5196     -> ::libc::c_int;
5197    pub fn Tcl_HideCommand(interp: *mut Tcl_Interp,
5198                           cmdName: *const ::libc::c_char,
5199                           hiddenCmdToken: *const ::libc::c_char)
5200     -> ::libc::c_int;
5201    pub fn Tcl_Init(interp: *mut Tcl_Interp) -> ::libc::c_int;
5202    pub fn Tcl_InitHashTable(tablePtr: *mut Tcl_HashTable,
5203                             keyType: ::libc::c_int) -> ();
5204    pub fn Tcl_InputBlocked(chan: Tcl_Channel) -> ::libc::c_int;
5205    pub fn Tcl_InputBuffered(chan: Tcl_Channel) -> ::libc::c_int;
5206    pub fn Tcl_InterpDeleted(interp: *mut Tcl_Interp) -> ::libc::c_int;
5207    pub fn Tcl_IsSafe(interp: *mut Tcl_Interp) -> ::libc::c_int;
5208    pub fn Tcl_JoinPath(argc: ::libc::c_int,
5209                        argv: *const *const ::libc::c_char,
5210                        resultPtr: *mut Tcl_DString) -> *mut ::libc::c_char;
5211    pub fn Tcl_LinkVar(interp: *mut Tcl_Interp,
5212                       varName: *const ::libc::c_char,
5213                       addr: *mut ::libc::c_char, _type: ::libc::c_int)
5214     -> ::libc::c_int;
5215    pub fn Tcl_MakeFileChannel(handle: ClientData, mode: ::libc::c_int)
5216     -> Tcl_Channel;
5217    pub fn Tcl_MakeSafe(interp: *mut Tcl_Interp) -> ::libc::c_int;
5218    pub fn Tcl_MakeTcpClientChannel(tcpSocket: ClientData) -> Tcl_Channel;
5219    pub fn Tcl_Merge(argc: ::libc::c_int, argv: *const *const ::libc::c_char)
5220     -> *mut ::libc::c_char;
5221    pub fn Tcl_NextHashEntry(searchPtr: *mut Tcl_HashSearch)
5222     -> *mut Tcl_HashEntry;
5223    pub fn Tcl_NotifyChannel(channel: Tcl_Channel, mask: ::libc::c_int) -> ();
5224    pub fn Tcl_ObjGetVar2(interp: *mut Tcl_Interp, part1Ptr: *mut Tcl_Obj,
5225                          part2Ptr: *mut Tcl_Obj, flags: ::libc::c_int)
5226     -> *mut Tcl_Obj;
5227    pub fn Tcl_ObjSetVar2(interp: *mut Tcl_Interp, part1Ptr: *mut Tcl_Obj,
5228                          part2Ptr: *mut Tcl_Obj, newValuePtr: *mut Tcl_Obj,
5229                          flags: ::libc::c_int) -> *mut Tcl_Obj;
5230    pub fn Tcl_OpenCommandChannel(interp: *mut Tcl_Interp,
5231                                  argc: ::libc::c_int,
5232                                  argv: *mut *const ::libc::c_char,
5233                                  flags: ::libc::c_int) -> Tcl_Channel;
5234    pub fn Tcl_OpenFileChannel(interp: *mut Tcl_Interp,
5235                               fileName: *const ::libc::c_char,
5236                               modeString: *const ::libc::c_char,
5237                               permissions: ::libc::c_int) -> Tcl_Channel;
5238    pub fn Tcl_OpenTcpClient(interp: *mut Tcl_Interp, port: ::libc::c_int,
5239                             address: *const ::libc::c_char,
5240                             myaddr: *const ::libc::c_char,
5241                             myport: ::libc::c_int, async: ::libc::c_int)
5242     -> Tcl_Channel;
5243    pub fn Tcl_OpenTcpServer(interp: *mut Tcl_Interp, port: ::libc::c_int,
5244                             host: *const ::libc::c_char,
5245                             acceptProc: *mut Tcl_TcpAcceptProc,
5246                             callbackData: ClientData) -> Tcl_Channel;
5247    pub fn Tcl_Preserve(data: ClientData) -> ();
5248    pub fn Tcl_PrintDouble(interp: *mut Tcl_Interp, value: ::libc::c_double,
5249                           dst: *mut ::libc::c_char) -> ();
5250    pub fn Tcl_PutEnv(assignment: *const ::libc::c_char) -> ::libc::c_int;
5251    pub fn Tcl_PosixError(interp: *mut Tcl_Interp) -> *const ::libc::c_char;
5252    pub fn Tcl_QueueEvent(evPtr: *mut Tcl_Event, position: Tcl_QueuePosition)
5253     -> ();
5254    pub fn Tcl_Read(chan: Tcl_Channel, bufPtr: *mut ::libc::c_char,
5255                    toRead: ::libc::c_int) -> ::libc::c_int;
5256    pub fn Tcl_ReapDetachedProcs() -> ();
5257    pub fn Tcl_RecordAndEval(interp: *mut Tcl_Interp,
5258                             cmd: *const ::libc::c_char, flags: ::libc::c_int)
5259     -> ::libc::c_int;
5260    pub fn Tcl_RecordAndEvalObj(interp: *mut Tcl_Interp, cmdPtr: *mut Tcl_Obj,
5261                                flags: ::libc::c_int) -> ::libc::c_int;
5262    pub fn Tcl_RegisterChannel(interp: *mut Tcl_Interp, chan: Tcl_Channel)
5263     -> ();
5264    pub fn Tcl_RegisterObjType(typePtr: *const Tcl_ObjType) -> ();
5265    pub fn Tcl_RegExpCompile(interp: *mut Tcl_Interp,
5266                             pattern: *const ::libc::c_char) -> Tcl_RegExp;
5267    pub fn Tcl_RegExpExec(interp: *mut Tcl_Interp, regexp: Tcl_RegExp,
5268                          text: *const ::libc::c_char,
5269                          start: *const ::libc::c_char) -> ::libc::c_int;
5270    pub fn Tcl_RegExpMatch(interp: *mut Tcl_Interp,
5271                           text: *const ::libc::c_char,
5272                           pattern: *const ::libc::c_char) -> ::libc::c_int;
5273    pub fn Tcl_RegExpRange(regexp: Tcl_RegExp, index: ::libc::c_int,
5274                           startPtr: *mut *const ::libc::c_char,
5275                           endPtr: *mut *const ::libc::c_char) -> ();
5276    pub fn Tcl_Release(clientData: ClientData) -> ();
5277    pub fn Tcl_ResetResult(interp: *mut Tcl_Interp) -> ();
5278    pub fn Tcl_ScanElement(src: *const ::libc::c_char,
5279                           flagPtr: *mut ::libc::c_int) -> ::libc::c_int;
5280    pub fn Tcl_ScanCountedElement(src: *const ::libc::c_char,
5281                                  length: ::libc::c_int,
5282                                  flagPtr: *mut ::libc::c_int)
5283     -> ::libc::c_int;
5284    pub fn Tcl_SeekOld(chan: Tcl_Channel, offset: ::libc::c_int,
5285                       mode: ::libc::c_int) -> ::libc::c_int;
5286    pub fn Tcl_ServiceAll() -> ::libc::c_int;
5287    pub fn Tcl_ServiceEvent(flags: ::libc::c_int) -> ::libc::c_int;
5288    pub fn Tcl_SetAssocData(interp: *mut Tcl_Interp,
5289                            name: *const ::libc::c_char,
5290                            _proc: *mut Tcl_InterpDeleteProc,
5291                            clientData: ClientData) -> ();
5292    pub fn Tcl_SetChannelBufferSize(chan: Tcl_Channel, sz: ::libc::c_int)
5293     -> ();
5294    pub fn Tcl_SetChannelOption(interp: *mut Tcl_Interp, chan: Tcl_Channel,
5295                                optionName: *const ::libc::c_char,
5296                                newValue: *const ::libc::c_char)
5297     -> ::libc::c_int;
5298    pub fn Tcl_SetCommandInfo(interp: *mut Tcl_Interp,
5299                              cmdName: *const ::libc::c_char,
5300                              infoPtr: *const Tcl_CmdInfo) -> ::libc::c_int;
5301    pub fn Tcl_SetErrno(err: ::libc::c_int) -> ();
5302    pub fn Tcl_SetErrorCode(interp: *mut Tcl_Interp, ...) -> ();
5303    pub fn Tcl_SetMaxBlockTime(timePtr: *const Tcl_Time) -> ();
5304    pub fn Tcl_SetPanicProc(panicProc: *mut Tcl_PanicProc) -> ();
5305    pub fn Tcl_SetRecursionLimit(interp: *mut Tcl_Interp,
5306                                 depth: ::libc::c_int) -> ::libc::c_int;
5307    pub fn Tcl_SetResult(interp: *mut Tcl_Interp, result: *mut ::libc::c_char,
5308                         freeProc: *mut Tcl_FreeProc) -> ();
5309    pub fn Tcl_SetServiceMode(mode: ::libc::c_int) -> ::libc::c_int;
5310    pub fn Tcl_SetObjErrorCode(interp: *mut Tcl_Interp,
5311                               errorObjPtr: *mut Tcl_Obj) -> ();
5312    pub fn Tcl_SetObjResult(interp: *mut Tcl_Interp,
5313                            resultObjPtr: *mut Tcl_Obj) -> ();
5314    pub fn Tcl_SetStdChannel(channel: Tcl_Channel, _type: ::libc::c_int)
5315     -> ();
5316    pub fn Tcl_SetVar(interp: *mut Tcl_Interp, varName: *const ::libc::c_char,
5317                      newValue: *const ::libc::c_char, flags: ::libc::c_int)
5318     -> *const ::libc::c_char;
5319    pub fn Tcl_SetVar2(interp: *mut Tcl_Interp, part1: *const ::libc::c_char,
5320                       part2: *const ::libc::c_char,
5321                       newValue: *const ::libc::c_char, flags: ::libc::c_int)
5322     -> *const ::libc::c_char;
5323    pub fn Tcl_SignalId(sig: ::libc::c_int) -> *const ::libc::c_char;
5324    pub fn Tcl_SignalMsg(sig: ::libc::c_int) -> *const ::libc::c_char;
5325    pub fn Tcl_SourceRCFile(interp: *mut Tcl_Interp) -> ();
5326    pub fn Tcl_SplitList(interp: *mut Tcl_Interp,
5327                         listStr: *const ::libc::c_char,
5328                         argcPtr: *mut ::libc::c_int,
5329                         argvPtr: *mut *mut *const ::libc::c_char)
5330     -> ::libc::c_int;
5331    pub fn Tcl_SplitPath(path: *const ::libc::c_char,
5332                         argcPtr: *mut ::libc::c_int,
5333                         argvPtr: *mut *mut *const ::libc::c_char) -> ();
5334    pub fn Tcl_StaticPackage(interp: *mut Tcl_Interp,
5335                             pkgName: *const ::libc::c_char,
5336                             initProc: *mut Tcl_PackageInitProc,
5337                             safeInitProc: *mut Tcl_PackageInitProc) -> ();
5338    pub fn Tcl_StringMatch(str: *const ::libc::c_char,
5339                           pattern: *const ::libc::c_char) -> ::libc::c_int;
5340    pub fn Tcl_TellOld(chan: Tcl_Channel) -> ::libc::c_int;
5341    pub fn Tcl_TraceVar(interp: *mut Tcl_Interp,
5342                        varName: *const ::libc::c_char, flags: ::libc::c_int,
5343                        _proc: *mut Tcl_VarTraceProc, clientData: ClientData)
5344     -> ::libc::c_int;
5345    pub fn Tcl_TraceVar2(interp: *mut Tcl_Interp,
5346                         part1: *const ::libc::c_char,
5347                         part2: *const ::libc::c_char, flags: ::libc::c_int,
5348                         _proc: *mut Tcl_VarTraceProc, clientData: ClientData)
5349     -> ::libc::c_int;
5350    pub fn Tcl_TranslateFileName(interp: *mut Tcl_Interp,
5351                                 name: *const ::libc::c_char,
5352                                 bufferPtr: *mut Tcl_DString)
5353     -> *mut ::libc::c_char;
5354    pub fn Tcl_Ungets(chan: Tcl_Channel, str: *const ::libc::c_char,
5355                      len: ::libc::c_int, atHead: ::libc::c_int)
5356     -> ::libc::c_int;
5357    pub fn Tcl_UnlinkVar(interp: *mut Tcl_Interp,
5358                         varName: *const ::libc::c_char) -> ();
5359    pub fn Tcl_UnregisterChannel(interp: *mut Tcl_Interp, chan: Tcl_Channel)
5360     -> ::libc::c_int;
5361    pub fn Tcl_UnsetVar(interp: *mut Tcl_Interp,
5362                        varName: *const ::libc::c_char, flags: ::libc::c_int)
5363     -> ::libc::c_int;
5364    pub fn Tcl_UnsetVar2(interp: *mut Tcl_Interp,
5365                         part1: *const ::libc::c_char,
5366                         part2: *const ::libc::c_char, flags: ::libc::c_int)
5367     -> ::libc::c_int;
5368    pub fn Tcl_UntraceVar(interp: *mut Tcl_Interp,
5369                          varName: *const ::libc::c_char,
5370                          flags: ::libc::c_int, _proc: *mut Tcl_VarTraceProc,
5371                          clientData: ClientData) -> ();
5372    pub fn Tcl_UntraceVar2(interp: *mut Tcl_Interp,
5373                           part1: *const ::libc::c_char,
5374                           part2: *const ::libc::c_char, flags: ::libc::c_int,
5375                           _proc: *mut Tcl_VarTraceProc,
5376                           clientData: ClientData) -> ();
5377    pub fn Tcl_UpdateLinkedVar(interp: *mut Tcl_Interp,
5378                               varName: *const ::libc::c_char) -> ();
5379    pub fn Tcl_UpVar(interp: *mut Tcl_Interp,
5380                     frameName: *const ::libc::c_char,
5381                     varName: *const ::libc::c_char,
5382                     localName: *const ::libc::c_char, flags: ::libc::c_int)
5383     -> ::libc::c_int;
5384    pub fn Tcl_UpVar2(interp: *mut Tcl_Interp,
5385                      frameName: *const ::libc::c_char,
5386                      part1: *const ::libc::c_char,
5387                      part2: *const ::libc::c_char,
5388                      localName: *const ::libc::c_char, flags: ::libc::c_int)
5389     -> ::libc::c_int;
5390    pub fn Tcl_VarEval(interp: *mut Tcl_Interp, ...) -> ::libc::c_int;
5391    pub fn Tcl_VarTraceInfo(interp: *mut Tcl_Interp,
5392                            varName: *const ::libc::c_char,
5393                            flags: ::libc::c_int,
5394                            procPtr: *mut Tcl_VarTraceProc,
5395                            prevClientData: ClientData) -> ClientData;
5396    pub fn Tcl_VarTraceInfo2(interp: *mut Tcl_Interp,
5397                             part1: *const ::libc::c_char,
5398                             part2: *const ::libc::c_char,
5399                             flags: ::libc::c_int,
5400                             procPtr: *mut Tcl_VarTraceProc,
5401                             prevClientData: ClientData) -> ClientData;
5402    pub fn Tcl_Write(chan: Tcl_Channel, s: *const ::libc::c_char,
5403                     slen: ::libc::c_int) -> ::libc::c_int;
5404    pub fn Tcl_WrongNumArgs(interp: *mut Tcl_Interp, objc: ::libc::c_int,
5405                            objv: *const *mut Tcl_Obj,
5406                            message: *const ::libc::c_char) -> ();
5407    pub fn Tcl_DumpActiveMemory(fileName: *const ::libc::c_char)
5408     -> ::libc::c_int;
5409    pub fn Tcl_ValidateAllMemory(file: *const ::libc::c_char,
5410                                 line: ::libc::c_int) -> ();
5411/*    pub fn Tcl_AppendResultVA(interp: *mut Tcl_Interp, argList: va_list)
5412     -> ();*/
5413/*    pub fn Tcl_AppendStringsToObjVA(objPtr: *mut Tcl_Obj, argList: va_list)
5414     -> ();*/
5415    pub fn Tcl_HashStats(tablePtr: *mut Tcl_HashTable) -> *mut ::libc::c_char;
5416    pub fn Tcl_ParseVar(interp: *mut Tcl_Interp, start: *const ::libc::c_char,
5417                        termPtr: *mut *const ::libc::c_char)
5418     -> *const ::libc::c_char;
5419    pub fn Tcl_PkgPresent(interp: *mut Tcl_Interp,
5420                          name: *const ::libc::c_char,
5421                          version: *const ::libc::c_char,
5422                          exact: ::libc::c_int) -> *const ::libc::c_char;
5423    pub fn Tcl_PkgPresentEx(interp: *mut Tcl_Interp,
5424                            name: *const ::libc::c_char,
5425                            version: *const ::libc::c_char,
5426                            exact: ::libc::c_int,
5427                            clientDataPtr: *mut ::libc::c_void)
5428     -> *const ::libc::c_char;
5429    pub fn Tcl_PkgProvide(interp: *mut Tcl_Interp,
5430                          name: *const ::libc::c_char,
5431                          version: *const ::libc::c_char) -> ::libc::c_int;
5432    pub fn Tcl_PkgRequire(interp: *mut Tcl_Interp,
5433                          name: *const ::libc::c_char,
5434                          version: *const ::libc::c_char,
5435                          exact: ::libc::c_int) -> *const ::libc::c_char;
5436/*    pub fn Tcl_SetErrorCodeVA(interp: *mut Tcl_Interp, argList: va_list)
5437     -> ();*/
5438/*    pub fn Tcl_VarEvalVA(interp: *mut Tcl_Interp, argList: va_list)
5439     -> ::libc::c_int;*/
5440    pub fn Tcl_WaitPid(pid: Tcl_Pid, statPtr: *mut ::libc::c_int,
5441                       options: ::libc::c_int) -> Tcl_Pid;
5442/*    pub fn Tcl_PanicVA(format: *const ::libc::c_char, argList: va_list) -> ();*/
5443    pub fn Tcl_GetVersion(major: *mut ::libc::c_int,
5444                          minor: *mut ::libc::c_int,
5445                          patchLevel: *mut ::libc::c_int,
5446                          _type: *mut ::libc::c_int) -> ();
5447    pub fn Tcl_InitMemory(interp: *mut Tcl_Interp) -> ();
5448    pub fn Tcl_StackChannel(interp: *mut Tcl_Interp,
5449                            typePtr: *const Tcl_ChannelType,
5450                            instanceData: ClientData, mask: ::libc::c_int,
5451                            prevChan: Tcl_Channel) -> Tcl_Channel;
5452    pub fn Tcl_UnstackChannel(interp: *mut Tcl_Interp, chan: Tcl_Channel)
5453     -> ::libc::c_int;
5454    pub fn Tcl_GetStackedChannel(chan: Tcl_Channel) -> Tcl_Channel;
5455    pub fn Tcl_SetMainLoop(_proc: *mut Tcl_MainLoopProc) -> ();
5456    pub fn Tcl_AppendObjToObj(objPtr: *mut Tcl_Obj,
5457                              appendObjPtr: *mut Tcl_Obj) -> ();
5458    pub fn Tcl_CreateEncoding(typePtr: *const Tcl_EncodingType)
5459     -> Tcl_Encoding;
5460    pub fn Tcl_CreateThreadExitHandler(_proc: *mut Tcl_ExitProc,
5461                                       clientData: ClientData) -> ();
5462    pub fn Tcl_DeleteThreadExitHandler(_proc: *mut Tcl_ExitProc,
5463                                       clientData: ClientData) -> ();
5464    pub fn Tcl_DiscardResult(statePtr: *mut Tcl_SavedResult) -> ();
5465    pub fn Tcl_EvalEx(interp: *mut Tcl_Interp, script: *const ::libc::c_char,
5466                      numBytes: ::libc::c_int, flags: ::libc::c_int)
5467     -> ::libc::c_int;
5468    pub fn Tcl_EvalObjv(interp: *mut Tcl_Interp, objc: ::libc::c_int,
5469                        objv: *const *mut Tcl_Obj, flags: ::libc::c_int)
5470     -> ::libc::c_int;
5471    pub fn Tcl_EvalObjEx(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
5472                         flags: ::libc::c_int) -> ::libc::c_int;
5473    pub fn Tcl_ExitThread(status: ::libc::c_int) -> ();
5474    pub fn Tcl_ExternalToUtf(interp: *mut Tcl_Interp, encoding: Tcl_Encoding,
5475                             src: *const ::libc::c_char,
5476                             srcLen: ::libc::c_int, flags: ::libc::c_int,
5477                             statePtr: *mut Tcl_EncodingState,
5478                             dst: *mut ::libc::c_char, dstLen: ::libc::c_int,
5479                             srcReadPtr: *mut ::libc::c_int,
5480                             dstWrotePtr: *mut ::libc::c_int,
5481                             dstCharsPtr: *mut ::libc::c_int)
5482     -> ::libc::c_int;
5483    pub fn Tcl_ExternalToUtfDString(encoding: Tcl_Encoding,
5484                                    src: *const ::libc::c_char,
5485                                    srcLen: ::libc::c_int,
5486                                    dsPtr: *mut Tcl_DString)
5487     -> *mut ::libc::c_char;
5488    pub fn Tcl_FinalizeThread() -> ();
5489    pub fn Tcl_FinalizeNotifier(clientData: ClientData) -> ();
5490    pub fn Tcl_FreeEncoding(encoding: Tcl_Encoding) -> ();
5491    pub fn Tcl_GetCurrentThread() -> Tcl_ThreadId;
5492    pub fn Tcl_GetEncoding(interp: *mut Tcl_Interp,
5493                           name: *const ::libc::c_char) -> Tcl_Encoding;
5494    pub fn Tcl_GetEncodingName(encoding: Tcl_Encoding)
5495     -> *const ::libc::c_char;
5496    pub fn Tcl_GetEncodingNames(interp: *mut Tcl_Interp) -> ();
5497    pub fn Tcl_GetIndexFromObjStruct(interp: *mut Tcl_Interp,
5498                                     objPtr: *mut Tcl_Obj,
5499                                     tablePtr: *const ::libc::c_void,
5500                                     offset: ::libc::c_int,
5501                                     msg: *const ::libc::c_char,
5502                                     flags: ::libc::c_int,
5503                                     indexPtr: *mut ::libc::c_int)
5504     -> ::libc::c_int;
5505    pub fn Tcl_GetThreadData(keyPtr: *mut Tcl_ThreadDataKey,
5506                             size: ::libc::c_int) -> *mut ::libc::c_void;
5507    pub fn Tcl_GetVar2Ex(interp: *mut Tcl_Interp,
5508                         part1: *const ::libc::c_char,
5509                         part2: *const ::libc::c_char, flags: ::libc::c_int)
5510     -> *mut Tcl_Obj;
5511    pub fn Tcl_InitNotifier() -> ClientData;
5512    pub fn Tcl_MutexLock(mutexPtr: *mut Tcl_Mutex) -> ();
5513    pub fn Tcl_MutexUnlock(mutexPtr: *mut Tcl_Mutex) -> ();
5514    pub fn Tcl_ConditionNotify(condPtr: *mut Tcl_Condition) -> ();
5515    pub fn Tcl_ConditionWait(condPtr: *mut Tcl_Condition,
5516                             mutexPtr: *mut Tcl_Mutex,
5517                             timePtr: *const Tcl_Time) -> ();
5518    pub fn Tcl_NumUtfChars(src: *const ::libc::c_char, length: ::libc::c_int)
5519     -> ::libc::c_int;
5520    pub fn Tcl_ReadChars(channel: Tcl_Channel, objPtr: *mut Tcl_Obj,
5521                         charsToRead: ::libc::c_int,
5522                         appendFlag: ::libc::c_int) -> ::libc::c_int;
5523    pub fn Tcl_RestoreResult(interp: *mut Tcl_Interp,
5524                             statePtr: *mut Tcl_SavedResult) -> ();
5525    pub fn Tcl_SaveResult(interp: *mut Tcl_Interp,
5526                          statePtr: *mut Tcl_SavedResult) -> ();
5527    pub fn Tcl_SetSystemEncoding(interp: *mut Tcl_Interp,
5528                                 name: *const ::libc::c_char)
5529     -> ::libc::c_int;
5530    pub fn Tcl_SetVar2Ex(interp: *mut Tcl_Interp,
5531                         part1: *const ::libc::c_char,
5532                         part2: *const ::libc::c_char,
5533                         newValuePtr: *mut Tcl_Obj, flags: ::libc::c_int)
5534     -> *mut Tcl_Obj;
5535    pub fn Tcl_ThreadAlert(threadId: Tcl_ThreadId) -> ();
5536    pub fn Tcl_ThreadQueueEvent(threadId: Tcl_ThreadId, evPtr: *mut Tcl_Event,
5537                                position: Tcl_QueuePosition) -> ();
5538    pub fn Tcl_UniCharAtIndex(src: *const ::libc::c_char,
5539                              index: ::libc::c_int) -> Tcl_UniChar;
5540    pub fn Tcl_UniCharToLower(ch: ::libc::c_int) -> Tcl_UniChar;
5541    pub fn Tcl_UniCharToTitle(ch: ::libc::c_int) -> Tcl_UniChar;
5542    pub fn Tcl_UniCharToUpper(ch: ::libc::c_int) -> Tcl_UniChar;
5543    pub fn Tcl_UniCharToUtf(ch: ::libc::c_int, buf: *mut ::libc::c_char)
5544     -> ::libc::c_int;
5545    pub fn Tcl_UtfAtIndex(src: *const ::libc::c_char, index: ::libc::c_int)
5546     -> *const ::libc::c_char;
5547    pub fn Tcl_UtfCharComplete(src: *const ::libc::c_char,
5548                               length: ::libc::c_int) -> ::libc::c_int;
5549    pub fn Tcl_UtfBackslash(src: *const ::libc::c_char,
5550                            readPtr: *mut ::libc::c_int,
5551                            dst: *mut ::libc::c_char) -> ::libc::c_int;
5552    pub fn Tcl_UtfFindFirst(src: *const ::libc::c_char, ch: ::libc::c_int)
5553     -> *const ::libc::c_char;
5554    pub fn Tcl_UtfFindLast(src: *const ::libc::c_char, ch: ::libc::c_int)
5555     -> *const ::libc::c_char;
5556    pub fn Tcl_UtfNext(src: *const ::libc::c_char) -> *const ::libc::c_char;
5557    pub fn Tcl_UtfPrev(src: *const ::libc::c_char,
5558                       start: *const ::libc::c_char) -> *const ::libc::c_char;
5559    pub fn Tcl_UtfToExternal(interp: *mut Tcl_Interp, encoding: Tcl_Encoding,
5560                             src: *const ::libc::c_char,
5561                             srcLen: ::libc::c_int, flags: ::libc::c_int,
5562                             statePtr: *mut Tcl_EncodingState,
5563                             dst: *mut ::libc::c_char, dstLen: ::libc::c_int,
5564                             srcReadPtr: *mut ::libc::c_int,
5565                             dstWrotePtr: *mut ::libc::c_int,
5566                             dstCharsPtr: *mut ::libc::c_int)
5567     -> ::libc::c_int;
5568    pub fn Tcl_UtfToExternalDString(encoding: Tcl_Encoding,
5569                                    src: *const ::libc::c_char,
5570                                    srcLen: ::libc::c_int,
5571                                    dsPtr: *mut Tcl_DString)
5572     -> *mut ::libc::c_char;
5573    pub fn Tcl_UtfToLower(src: *mut ::libc::c_char) -> ::libc::c_int;
5574    pub fn Tcl_UtfToTitle(src: *mut ::libc::c_char) -> ::libc::c_int;
5575    pub fn Tcl_UtfToUniChar(src: *const ::libc::c_char,
5576                            chPtr: *mut Tcl_UniChar) -> ::libc::c_int;
5577    pub fn Tcl_UtfToUpper(src: *mut ::libc::c_char) -> ::libc::c_int;
5578    pub fn Tcl_WriteChars(chan: Tcl_Channel, src: *const ::libc::c_char,
5579                          srcLen: ::libc::c_int) -> ::libc::c_int;
5580    pub fn Tcl_WriteObj(chan: Tcl_Channel, objPtr: *mut Tcl_Obj)
5581     -> ::libc::c_int;
5582    pub fn Tcl_GetString(objPtr: *mut Tcl_Obj) -> *mut ::libc::c_char;
5583    pub fn Tcl_GetDefaultEncodingDir() -> *const ::libc::c_char;
5584    pub fn Tcl_SetDefaultEncodingDir(path: *const ::libc::c_char) -> ();
5585    pub fn Tcl_AlertNotifier(clientData: ClientData) -> ();
5586    pub fn Tcl_ServiceModeHook(mode: ::libc::c_int) -> ();
5587    pub fn Tcl_UniCharIsAlnum(ch: ::libc::c_int) -> ::libc::c_int;
5588    pub fn Tcl_UniCharIsAlpha(ch: ::libc::c_int) -> ::libc::c_int;
5589    pub fn Tcl_UniCharIsDigit(ch: ::libc::c_int) -> ::libc::c_int;
5590    pub fn Tcl_UniCharIsLower(ch: ::libc::c_int) -> ::libc::c_int;
5591    pub fn Tcl_UniCharIsSpace(ch: ::libc::c_int) -> ::libc::c_int;
5592    pub fn Tcl_UniCharIsUpper(ch: ::libc::c_int) -> ::libc::c_int;
5593    pub fn Tcl_UniCharIsWordChar(ch: ::libc::c_int) -> ::libc::c_int;
5594    pub fn Tcl_UniCharLen(uniStr: *const Tcl_UniChar) -> ::libc::c_int;
5595    pub fn Tcl_UniCharNcmp(ucs: *const Tcl_UniChar, uct: *const Tcl_UniChar,
5596                           numChars: ::libc::c_ulong) -> ::libc::c_int;
5597    pub fn Tcl_UniCharToUtfDString(uniStr: *const Tcl_UniChar,
5598                                   uniLength: ::libc::c_int,
5599                                   dsPtr: *mut Tcl_DString)
5600     -> *mut ::libc::c_char;
5601    pub fn Tcl_UtfToUniCharDString(src: *const ::libc::c_char,
5602                                   length: ::libc::c_int,
5603                                   dsPtr: *mut Tcl_DString)
5604     -> *mut Tcl_UniChar;
5605    pub fn Tcl_GetRegExpFromObj(interp: *mut Tcl_Interp, patObj: *mut Tcl_Obj,
5606                                flags: ::libc::c_int) -> Tcl_RegExp;
5607    pub fn Tcl_EvalTokens(interp: *mut Tcl_Interp, tokenPtr: *mut Tcl_Token,
5608                          count: ::libc::c_int) -> *mut Tcl_Obj;
5609    pub fn Tcl_FreeParse(parsePtr: *mut Tcl_Parse) -> ();
5610    pub fn Tcl_LogCommandInfo(interp: *mut Tcl_Interp,
5611                              script: *const ::libc::c_char,
5612                              command: *const ::libc::c_char,
5613                              length: ::libc::c_int) -> ();
5614    pub fn Tcl_ParseBraces(interp: *mut Tcl_Interp,
5615                           start: *const ::libc::c_char,
5616                           numBytes: ::libc::c_int, parsePtr: *mut Tcl_Parse,
5617                           append: ::libc::c_int,
5618                           termPtr: *mut *const ::libc::c_char)
5619     -> ::libc::c_int;
5620    pub fn Tcl_ParseCommand(interp: *mut Tcl_Interp,
5621                            start: *const ::libc::c_char,
5622                            numBytes: ::libc::c_int, nested: ::libc::c_int,
5623                            parsePtr: *mut Tcl_Parse) -> ::libc::c_int;
5624    pub fn Tcl_ParseExpr(interp: *mut Tcl_Interp,
5625                         start: *const ::libc::c_char,
5626                         numBytes: ::libc::c_int, parsePtr: *mut Tcl_Parse)
5627     -> ::libc::c_int;
5628    pub fn Tcl_ParseQuotedString(interp: *mut Tcl_Interp,
5629                                 start: *const ::libc::c_char,
5630                                 numBytes: ::libc::c_int,
5631                                 parsePtr: *mut Tcl_Parse,
5632                                 append: ::libc::c_int,
5633                                 termPtr: *mut *const ::libc::c_char)
5634     -> ::libc::c_int;
5635    pub fn Tcl_ParseVarName(interp: *mut Tcl_Interp,
5636                            start: *const ::libc::c_char,
5637                            numBytes: ::libc::c_int, parsePtr: *mut Tcl_Parse,
5638                            append: ::libc::c_int) -> ::libc::c_int;
5639    pub fn Tcl_GetCwd(interp: *mut Tcl_Interp, cwdPtr: *mut Tcl_DString)
5640     -> *mut ::libc::c_char;
5641    pub fn Tcl_Chdir(dirName: *const ::libc::c_char) -> ::libc::c_int;
5642    pub fn Tcl_Access(path: *const ::libc::c_char, mode: ::libc::c_int)
5643     -> ::libc::c_int;
5644    pub fn Tcl_Stat(path: *const ::libc::c_char, bufPtr: *mut Struct_stat)
5645     -> ::libc::c_int;
5646    pub fn Tcl_UtfNcmp(s1: *const ::libc::c_char, s2: *const ::libc::c_char,
5647                       n: ::libc::c_ulong) -> ::libc::c_int;
5648    pub fn Tcl_UtfNcasecmp(s1: *const ::libc::c_char,
5649                           s2: *const ::libc::c_char, n: ::libc::c_ulong)
5650     -> ::libc::c_int;
5651    pub fn Tcl_StringCaseMatch(str: *const ::libc::c_char,
5652                               pattern: *const ::libc::c_char,
5653                               nocase: ::libc::c_int) -> ::libc::c_int;
5654    pub fn Tcl_UniCharIsControl(ch: ::libc::c_int) -> ::libc::c_int;
5655    pub fn Tcl_UniCharIsGraph(ch: ::libc::c_int) -> ::libc::c_int;
5656    pub fn Tcl_UniCharIsPrint(ch: ::libc::c_int) -> ::libc::c_int;
5657    pub fn Tcl_UniCharIsPunct(ch: ::libc::c_int) -> ::libc::c_int;
5658    pub fn Tcl_RegExpExecObj(interp: *mut Tcl_Interp, regexp: Tcl_RegExp,
5659                             textObj: *mut Tcl_Obj, offset: ::libc::c_int,
5660                             nmatches: ::libc::c_int, flags: ::libc::c_int)
5661     -> ::libc::c_int;
5662    pub fn Tcl_RegExpGetInfo(regexp: Tcl_RegExp, infoPtr: *mut Tcl_RegExpInfo)
5663     -> ();
5664    pub fn Tcl_NewUnicodeObj(unicode: *const Tcl_UniChar,
5665                             numChars: ::libc::c_int) -> *mut Tcl_Obj;
5666    pub fn Tcl_SetUnicodeObj(objPtr: *mut Tcl_Obj,
5667                             unicode: *const Tcl_UniChar,
5668                             numChars: ::libc::c_int) -> ();
5669    pub fn Tcl_GetCharLength(objPtr: *mut Tcl_Obj) -> ::libc::c_int;
5670    pub fn Tcl_GetUniChar(objPtr: *mut Tcl_Obj, index: ::libc::c_int)
5671     -> Tcl_UniChar;
5672    pub fn Tcl_GetUnicode(objPtr: *mut Tcl_Obj) -> *mut Tcl_UniChar;
5673    pub fn Tcl_GetRange(objPtr: *mut Tcl_Obj, first: ::libc::c_int,
5674                        last: ::libc::c_int) -> *mut Tcl_Obj;
5675    pub fn Tcl_AppendUnicodeToObj(objPtr: *mut Tcl_Obj,
5676                                  unicode: *const Tcl_UniChar,
5677                                  length: ::libc::c_int) -> ();
5678    pub fn Tcl_RegExpMatchObj(interp: *mut Tcl_Interp, textObj: *mut Tcl_Obj,
5679                              patternObj: *mut Tcl_Obj) -> ::libc::c_int;
5680    pub fn Tcl_SetNotifier(notifierProcPtr: *mut Tcl_NotifierProcs) -> ();
5681    pub fn Tcl_GetAllocMutex() -> *mut Tcl_Mutex;
5682    pub fn Tcl_GetChannelNames(interp: *mut Tcl_Interp) -> ::libc::c_int;
5683    pub fn Tcl_GetChannelNamesEx(interp: *mut Tcl_Interp,
5684                                 pattern: *const ::libc::c_char)
5685     -> ::libc::c_int;
5686    pub fn Tcl_ProcObjCmd(clientData: ClientData, interp: *mut Tcl_Interp,
5687                          objc: ::libc::c_int, objv: *const *mut Tcl_Obj)
5688     -> ::libc::c_int;
5689    pub fn Tcl_ConditionFinalize(condPtr: *mut Tcl_Condition) -> ();
5690    pub fn Tcl_MutexFinalize(mutex: *mut Tcl_Mutex) -> ();
5691    pub fn Tcl_CreateThread(idPtr: *mut Tcl_ThreadId,
5692                            _proc: *mut Tcl_ThreadCreateProc,
5693                            clientData: ClientData, stackSize: ::libc::c_int,
5694                            flags: ::libc::c_int) -> ::libc::c_int;
5695    pub fn Tcl_ReadRaw(chan: Tcl_Channel, dst: *mut ::libc::c_char,
5696                       bytesToRead: ::libc::c_int) -> ::libc::c_int;
5697    pub fn Tcl_WriteRaw(chan: Tcl_Channel, src: *const ::libc::c_char,
5698                        srcLen: ::libc::c_int) -> ::libc::c_int;
5699    pub fn Tcl_GetTopChannel(chan: Tcl_Channel) -> Tcl_Channel;
5700    pub fn Tcl_ChannelBuffered(chan: Tcl_Channel) -> ::libc::c_int;
5701    pub fn Tcl_ChannelName(chanTypePtr: *const Tcl_ChannelType)
5702     -> *const ::libc::c_char;
5703    pub fn Tcl_ChannelVersion(chanTypePtr: *const Tcl_ChannelType)
5704     -> Tcl_ChannelTypeVersion;
5705    pub fn Tcl_ChannelBlockModeProc(chanTypePtr: *const Tcl_ChannelType)
5706     -> *mut Tcl_DriverBlockModeProc;
5707    pub fn Tcl_ChannelCloseProc(chanTypePtr: *const Tcl_ChannelType)
5708     -> *mut Tcl_DriverCloseProc;
5709    pub fn Tcl_ChannelClose2Proc(chanTypePtr: *const Tcl_ChannelType)
5710     -> *mut Tcl_DriverClose2Proc;
5711    pub fn Tcl_ChannelInputProc(chanTypePtr: *const Tcl_ChannelType)
5712     -> *mut Tcl_DriverInputProc;
5713    pub fn Tcl_ChannelOutputProc(chanTypePtr: *const Tcl_ChannelType)
5714     -> *mut Tcl_DriverOutputProc;
5715    pub fn Tcl_ChannelSeekProc(chanTypePtr: *const Tcl_ChannelType)
5716     -> *mut Tcl_DriverSeekProc;
5717    pub fn Tcl_ChannelSetOptionProc(chanTypePtr: *const Tcl_ChannelType)
5718     -> *mut Tcl_DriverSetOptionProc;
5719    pub fn Tcl_ChannelGetOptionProc(chanTypePtr: *const Tcl_ChannelType)
5720     -> *mut Tcl_DriverGetOptionProc;
5721    pub fn Tcl_ChannelWatchProc(chanTypePtr: *const Tcl_ChannelType)
5722     -> *mut Tcl_DriverWatchProc;
5723    pub fn Tcl_ChannelGetHandleProc(chanTypePtr: *const Tcl_ChannelType)
5724     -> *mut Tcl_DriverGetHandleProc;
5725    pub fn Tcl_ChannelFlushProc(chanTypePtr: *const Tcl_ChannelType)
5726     -> *mut Tcl_DriverFlushProc;
5727    pub fn Tcl_ChannelHandlerProc(chanTypePtr: *const Tcl_ChannelType)
5728     -> *mut Tcl_DriverHandlerProc;
5729    pub fn Tcl_JoinThread(threadId: Tcl_ThreadId, result: *mut ::libc::c_int)
5730     -> ::libc::c_int;
5731    pub fn Tcl_IsChannelShared(channel: Tcl_Channel) -> ::libc::c_int;
5732    pub fn Tcl_IsChannelRegistered(interp: *mut Tcl_Interp,
5733                                   channel: Tcl_Channel) -> ::libc::c_int;
5734    pub fn Tcl_CutChannel(channel: Tcl_Channel) -> ();
5735    pub fn Tcl_SpliceChannel(channel: Tcl_Channel) -> ();
5736    pub fn Tcl_ClearChannelHandlers(channel: Tcl_Channel) -> ();
5737    pub fn Tcl_IsChannelExisting(channelName: *const ::libc::c_char)
5738     -> ::libc::c_int;
5739    pub fn Tcl_UniCharNcasecmp(ucs: *const Tcl_UniChar,
5740                               uct: *const Tcl_UniChar,
5741                               numChars: ::libc::c_ulong) -> ::libc::c_int;
5742    pub fn Tcl_UniCharCaseMatch(uniStr: *const Tcl_UniChar,
5743                                uniPattern: *const Tcl_UniChar,
5744                                nocase: ::libc::c_int) -> ::libc::c_int;
5745    pub fn Tcl_FindHashEntry(tablePtr: *mut Tcl_HashTable,
5746                             key: *const ::libc::c_void)
5747     -> *mut Tcl_HashEntry;
5748    pub fn Tcl_CreateHashEntry(tablePtr: *mut Tcl_HashTable,
5749                               key: *const ::libc::c_void,
5750                               newPtr: *mut ::libc::c_int)
5751     -> *mut Tcl_HashEntry;
5752    pub fn Tcl_InitCustomHashTable(tablePtr: *mut Tcl_HashTable,
5753                                   keyType: ::libc::c_int,
5754                                   typePtr: *const Tcl_HashKeyType) -> ();
5755    pub fn Tcl_InitObjHashTable(tablePtr: *mut Tcl_HashTable) -> ();
5756    pub fn Tcl_CommandTraceInfo(interp: *mut Tcl_Interp,
5757                                varName: *const ::libc::c_char,
5758                                flags: ::libc::c_int,
5759                                procPtr: *mut Tcl_CommandTraceProc,
5760                                prevClientData: ClientData) -> ClientData;
5761    pub fn Tcl_TraceCommand(interp: *mut Tcl_Interp,
5762                            varName: *const ::libc::c_char,
5763                            flags: ::libc::c_int,
5764                            _proc: *mut Tcl_CommandTraceProc,
5765                            clientData: ClientData) -> ::libc::c_int;
5766    pub fn Tcl_UntraceCommand(interp: *mut Tcl_Interp,
5767                              varName: *const ::libc::c_char,
5768                              flags: ::libc::c_int,
5769                              _proc: *mut Tcl_CommandTraceProc,
5770                              clientData: ClientData) -> ();
5771    pub fn Tcl_AttemptAlloc(size: ::libc::c_uint) -> *mut ::libc::c_char;
5772    pub fn Tcl_AttemptDbCkalloc(size: ::libc::c_uint,
5773                                file: *const ::libc::c_char,
5774                                line: ::libc::c_int) -> *mut ::libc::c_char;
5775    pub fn Tcl_AttemptRealloc(ptr: *mut ::libc::c_char, size: ::libc::c_uint)
5776     -> *mut ::libc::c_char;
5777    pub fn Tcl_AttemptDbCkrealloc(ptr: *mut ::libc::c_char,
5778                                  size: ::libc::c_uint,
5779                                  file: *const ::libc::c_char,
5780                                  line: ::libc::c_int) -> *mut ::libc::c_char;
5781    pub fn Tcl_AttemptSetObjLength(objPtr: *mut Tcl_Obj,
5782                                   length: ::libc::c_int) -> ::libc::c_int;
5783    pub fn Tcl_GetChannelThread(channel: Tcl_Channel) -> Tcl_ThreadId;
5784    pub fn Tcl_GetUnicodeFromObj(objPtr: *mut Tcl_Obj,
5785                                 lengthPtr: *mut ::libc::c_int)
5786     -> *mut Tcl_UniChar;
5787    pub fn Tcl_GetMathFuncInfo(interp: *mut Tcl_Interp,
5788                               name: *const ::libc::c_char,
5789                               numArgsPtr: *mut ::libc::c_int,
5790                               argTypesPtr: *mut *mut Tcl_ValueType,
5791                               procPtr: *mut *mut Tcl_MathProc,
5792                               clientDataPtr: *mut ClientData)
5793     -> ::libc::c_int;
5794    pub fn Tcl_ListMathFuncs(interp: *mut Tcl_Interp,
5795                             pattern: *const ::libc::c_char) -> *mut Tcl_Obj;
5796    pub fn Tcl_SubstObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
5797                        flags: ::libc::c_int) -> *mut Tcl_Obj;
5798    pub fn Tcl_DetachChannel(interp: *mut Tcl_Interp, channel: Tcl_Channel)
5799     -> ::libc::c_int;
5800    pub fn Tcl_IsStandardChannel(channel: Tcl_Channel) -> ::libc::c_int;
5801    pub fn Tcl_FSCopyFile(srcPathPtr: *mut Tcl_Obj, destPathPtr: *mut Tcl_Obj)
5802     -> ::libc::c_int;
5803    pub fn Tcl_FSCopyDirectory(srcPathPtr: *mut Tcl_Obj,
5804                               destPathPtr: *mut Tcl_Obj,
5805                               errorPtr: *mut *mut Tcl_Obj) -> ::libc::c_int;
5806    pub fn Tcl_FSCreateDirectory(pathPtr: *mut Tcl_Obj) -> ::libc::c_int;
5807    pub fn Tcl_FSDeleteFile(pathPtr: *mut Tcl_Obj) -> ::libc::c_int;
5808    pub fn Tcl_FSLoadFile(interp: *mut Tcl_Interp, pathPtr: *mut Tcl_Obj,
5809                          sym1: *const ::libc::c_char,
5810                          sym2: *const ::libc::c_char,
5811                          proc1Ptr: *mut *mut Tcl_PackageInitProc,
5812                          proc2Ptr: *mut *mut Tcl_PackageInitProc,
5813                          handlePtr: *mut Tcl_LoadHandle,
5814                          unloadProcPtr: *mut *mut Tcl_FSUnloadFileProc)
5815     -> ::libc::c_int;
5816    pub fn Tcl_FSMatchInDirectory(interp: *mut Tcl_Interp,
5817                                  result: *mut Tcl_Obj, pathPtr: *mut Tcl_Obj,
5818                                  pattern: *const ::libc::c_char,
5819                                  types: *mut Tcl_GlobTypeData)
5820     -> ::libc::c_int;
5821    pub fn Tcl_FSLink(pathPtr: *mut Tcl_Obj, toPtr: *mut Tcl_Obj,
5822                      linkAction: ::libc::c_int) -> *mut Tcl_Obj;
5823    pub fn Tcl_FSRemoveDirectory(pathPtr: *mut Tcl_Obj,
5824                                 recursive: ::libc::c_int,
5825                                 errorPtr: *mut *mut Tcl_Obj)
5826     -> ::libc::c_int;
5827    pub fn Tcl_FSRenameFile(srcPathPtr: *mut Tcl_Obj,
5828                            destPathPtr: *mut Tcl_Obj) -> ::libc::c_int;
5829    pub fn Tcl_FSLstat(pathPtr: *mut Tcl_Obj, buf: *mut Tcl_StatBuf)
5830     -> ::libc::c_int;
5831    pub fn Tcl_FSUtime(pathPtr: *mut Tcl_Obj, tval: *mut Struct_utimbuf)
5832     -> ::libc::c_int;
5833    pub fn Tcl_FSFileAttrsGet(interp: *mut Tcl_Interp, index: ::libc::c_int,
5834                              pathPtr: *mut Tcl_Obj,
5835                              objPtrRef: *mut *mut Tcl_Obj) -> ::libc::c_int;
5836    pub fn Tcl_FSFileAttrsSet(interp: *mut Tcl_Interp, index: ::libc::c_int,
5837                              pathPtr: *mut Tcl_Obj, objPtr: *mut Tcl_Obj)
5838     -> ::libc::c_int;
5839    pub fn Tcl_FSFileAttrStrings(pathPtr: *mut Tcl_Obj,
5840                                 objPtrRef: *mut *mut Tcl_Obj)
5841     -> *const *const ::libc::c_char;
5842    pub fn Tcl_FSStat(pathPtr: *mut Tcl_Obj, buf: *mut Tcl_StatBuf)
5843     -> ::libc::c_int;
5844    pub fn Tcl_FSAccess(pathPtr: *mut Tcl_Obj, mode: ::libc::c_int)
5845     -> ::libc::c_int;
5846    pub fn Tcl_FSOpenFileChannel(interp: *mut Tcl_Interp,
5847                                 pathPtr: *mut Tcl_Obj,
5848                                 modeString: *const ::libc::c_char,
5849                                 permissions: ::libc::c_int) -> Tcl_Channel;
5850    pub fn Tcl_FSGetCwd(interp: *mut Tcl_Interp) -> *mut Tcl_Obj;
5851    pub fn Tcl_FSChdir(pathPtr: *mut Tcl_Obj) -> ::libc::c_int;
5852    pub fn Tcl_FSConvertToPathType(interp: *mut Tcl_Interp,
5853                                   pathPtr: *mut Tcl_Obj) -> ::libc::c_int;
5854    pub fn Tcl_FSJoinPath(listObj: *mut Tcl_Obj, elements: ::libc::c_int)
5855     -> *mut Tcl_Obj;
5856    pub fn Tcl_FSSplitPath(pathPtr: *mut Tcl_Obj, lenPtr: *mut ::libc::c_int)
5857     -> *mut Tcl_Obj;
5858    pub fn Tcl_FSEqualPaths(firstPtr: *mut Tcl_Obj, secondPtr: *mut Tcl_Obj)
5859     -> ::libc::c_int;
5860    pub fn Tcl_FSGetNormalizedPath(interp: *mut Tcl_Interp,
5861                                   pathPtr: *mut Tcl_Obj) -> *mut Tcl_Obj;
5862    pub fn Tcl_FSJoinToPath(pathPtr: *mut Tcl_Obj, objc: ::libc::c_int,
5863                            objv: *const *mut Tcl_Obj) -> *mut Tcl_Obj;
5864    pub fn Tcl_FSGetInternalRep(pathPtr: *mut Tcl_Obj,
5865                                fsPtr: *const Tcl_Filesystem) -> ClientData;
5866    pub fn Tcl_FSGetTranslatedPath(interp: *mut Tcl_Interp,
5867                                   pathPtr: *mut Tcl_Obj) -> *mut Tcl_Obj;
5868    pub fn Tcl_FSEvalFile(interp: *mut Tcl_Interp, fileName: *mut Tcl_Obj)
5869     -> ::libc::c_int;
5870    pub fn Tcl_FSNewNativePath(fromFilesystem: *const Tcl_Filesystem,
5871                               clientData: ClientData) -> *mut Tcl_Obj;
5872    pub fn Tcl_FSGetNativePath(pathPtr: *mut Tcl_Obj)
5873     -> *const ::libc::c_void;
5874    pub fn Tcl_FSFileSystemInfo(pathPtr: *mut Tcl_Obj) -> *mut Tcl_Obj;
5875    pub fn Tcl_FSPathSeparator(pathPtr: *mut Tcl_Obj) -> *mut Tcl_Obj;
5876    pub fn Tcl_FSListVolumes() -> *mut Tcl_Obj;
5877    pub fn Tcl_FSRegister(clientData: ClientData,
5878                          fsPtr: *const Tcl_Filesystem) -> ::libc::c_int;
5879    pub fn Tcl_FSUnregister(fsPtr: *const Tcl_Filesystem) -> ::libc::c_int;
5880    pub fn Tcl_FSData(fsPtr: *const Tcl_Filesystem) -> ClientData;
5881    pub fn Tcl_FSGetTranslatedStringPath(interp: *mut Tcl_Interp,
5882                                         pathPtr: *mut Tcl_Obj)
5883     -> *const ::libc::c_char;
5884    pub fn Tcl_FSGetFileSystemForPath(pathPtr: *mut Tcl_Obj)
5885     -> *const Tcl_Filesystem;
5886    pub fn Tcl_FSGetPathType(pathPtr: *mut Tcl_Obj) -> Tcl_PathType;
5887    pub fn Tcl_OutputBuffered(chan: Tcl_Channel) -> ::libc::c_int;
5888    pub fn Tcl_FSMountsChanged(fsPtr: *const Tcl_Filesystem) -> ();
5889    pub fn Tcl_EvalTokensStandard(interp: *mut Tcl_Interp,
5890                                  tokenPtr: *mut Tcl_Token,
5891                                  count: ::libc::c_int) -> ::libc::c_int;
5892    pub fn Tcl_GetTime(timeBuf: *mut Tcl_Time) -> ();
5893    pub fn Tcl_CreateObjTrace(interp: *mut Tcl_Interp, level: ::libc::c_int,
5894                              flags: ::libc::c_int,
5895                              objProc: *mut Tcl_CmdObjTraceProc,
5896                              clientData: ClientData,
5897                              delProc: *mut Tcl_CmdObjTraceDeleteProc)
5898     -> Tcl_Trace;
5899    pub fn Tcl_GetCommandInfoFromToken(token: Tcl_Command,
5900                                       infoPtr: *mut Tcl_CmdInfo)
5901     -> ::libc::c_int;
5902    pub fn Tcl_SetCommandInfoFromToken(token: Tcl_Command,
5903                                       infoPtr: *const Tcl_CmdInfo)
5904     -> ::libc::c_int;
5905    pub fn Tcl_DbNewWideIntObj(wideValue: Tcl_WideInt,
5906                               file: *const ::libc::c_char,
5907                               line: ::libc::c_int) -> *mut Tcl_Obj;
5908    pub fn Tcl_GetWideIntFromObj(interp: *mut Tcl_Interp,
5909                                 objPtr: *mut Tcl_Obj,
5910                                 widePtr: *mut Tcl_WideInt) -> ::libc::c_int;
5911    pub fn Tcl_NewWideIntObj(wideValue: Tcl_WideInt) -> *mut Tcl_Obj;
5912    pub fn Tcl_SetWideIntObj(objPtr: *mut Tcl_Obj, wideValue: Tcl_WideInt)
5913     -> ();
5914    pub fn Tcl_AllocStatBuf() -> *mut Tcl_StatBuf;
5915    pub fn Tcl_Seek(chan: Tcl_Channel, offset: Tcl_WideInt,
5916                    mode: ::libc::c_int) -> Tcl_WideInt;
5917    pub fn Tcl_Tell(chan: Tcl_Channel) -> Tcl_WideInt;
5918    pub fn Tcl_ChannelWideSeekProc(chanTypePtr: *const Tcl_ChannelType)
5919     -> *mut Tcl_DriverWideSeekProc;
5920    pub fn Tcl_DictObjPut(interp: *mut Tcl_Interp, dictPtr: *mut Tcl_Obj,
5921                          keyPtr: *mut Tcl_Obj, valuePtr: *mut Tcl_Obj)
5922     -> ::libc::c_int;
5923    pub fn Tcl_DictObjGet(interp: *mut Tcl_Interp, dictPtr: *mut Tcl_Obj,
5924                          keyPtr: *mut Tcl_Obj,
5925                          valuePtrPtr: *mut *mut Tcl_Obj) -> ::libc::c_int;
5926    pub fn Tcl_DictObjRemove(interp: *mut Tcl_Interp, dictPtr: *mut Tcl_Obj,
5927                             keyPtr: *mut Tcl_Obj) -> ::libc::c_int;
5928    pub fn Tcl_DictObjSize(interp: *mut Tcl_Interp, dictPtr: *mut Tcl_Obj,
5929                           sizePtr: *mut ::libc::c_int) -> ::libc::c_int;
5930    pub fn Tcl_DictObjFirst(interp: *mut Tcl_Interp, dictPtr: *mut Tcl_Obj,
5931                            searchPtr: *mut Tcl_DictSearch,
5932                            keyPtrPtr: *mut *mut Tcl_Obj,
5933                            valuePtrPtr: *mut *mut Tcl_Obj,
5934                            donePtr: *mut ::libc::c_int) -> ::libc::c_int;
5935    pub fn Tcl_DictObjNext(searchPtr: *mut Tcl_DictSearch,
5936                           keyPtrPtr: *mut *mut Tcl_Obj,
5937                           valuePtrPtr: *mut *mut Tcl_Obj,
5938                           donePtr: *mut ::libc::c_int) -> ();
5939    pub fn Tcl_DictObjDone(searchPtr: *mut Tcl_DictSearch) -> ();
5940    pub fn Tcl_DictObjPutKeyList(interp: *mut Tcl_Interp,
5941                                 dictPtr: *mut Tcl_Obj, keyc: ::libc::c_int,
5942                                 keyv: *const *mut Tcl_Obj,
5943                                 valuePtr: *mut Tcl_Obj) -> ::libc::c_int;
5944    pub fn Tcl_DictObjRemoveKeyList(interp: *mut Tcl_Interp,
5945                                    dictPtr: *mut Tcl_Obj,
5946                                    keyc: ::libc::c_int,
5947                                    keyv: *const *mut Tcl_Obj)
5948     -> ::libc::c_int;
5949    pub fn Tcl_NewDictObj() -> *mut Tcl_Obj;
5950    pub fn Tcl_DbNewDictObj(file: *const ::libc::c_char, line: ::libc::c_int)
5951     -> *mut Tcl_Obj;
5952    pub fn Tcl_RegisterConfig(interp: *mut Tcl_Interp,
5953                              pkgName: *const ::libc::c_char,
5954                              configuration: *const Tcl_Config,
5955                              valEncoding: *const ::libc::c_char) -> ();
5956    pub fn Tcl_CreateNamespace(interp: *mut Tcl_Interp,
5957                               name: *const ::libc::c_char,
5958                               clientData: ClientData,
5959                               deleteProc: *mut Tcl_NamespaceDeleteProc)
5960     -> *mut Tcl_Namespace;
5961    pub fn Tcl_DeleteNamespace(nsPtr: *mut Tcl_Namespace) -> ();
5962    pub fn Tcl_AppendExportList(interp: *mut Tcl_Interp,
5963                                nsPtr: *mut Tcl_Namespace,
5964                                objPtr: *mut Tcl_Obj) -> ::libc::c_int;
5965    pub fn Tcl_Export(interp: *mut Tcl_Interp, nsPtr: *mut Tcl_Namespace,
5966                      pattern: *const ::libc::c_char,
5967                      resetListFirst: ::libc::c_int) -> ::libc::c_int;
5968    pub fn Tcl_Import(interp: *mut Tcl_Interp, nsPtr: *mut Tcl_Namespace,
5969                      pattern: *const ::libc::c_char,
5970                      allowOverwrite: ::libc::c_int) -> ::libc::c_int;
5971    pub fn Tcl_ForgetImport(interp: *mut Tcl_Interp,
5972                            nsPtr: *mut Tcl_Namespace,
5973                            pattern: *const ::libc::c_char) -> ::libc::c_int;
5974    pub fn Tcl_GetCurrentNamespace(interp: *mut Tcl_Interp)
5975     -> *mut Tcl_Namespace;
5976    pub fn Tcl_GetGlobalNamespace(interp: *mut Tcl_Interp)
5977     -> *mut Tcl_Namespace;
5978    pub fn Tcl_FindNamespace(interp: *mut Tcl_Interp,
5979                             name: *const ::libc::c_char,
5980                             contextNsPtr: *mut Tcl_Namespace,
5981                             flags: ::libc::c_int) -> *mut Tcl_Namespace;
5982    pub fn Tcl_FindCommand(interp: *mut Tcl_Interp,
5983                           name: *const ::libc::c_char,
5984                           contextNsPtr: *mut Tcl_Namespace,
5985                           flags: ::libc::c_int) -> Tcl_Command;
5986    pub fn Tcl_GetCommandFromObj(interp: *mut Tcl_Interp,
5987                                 objPtr: *mut Tcl_Obj) -> Tcl_Command;
5988    pub fn Tcl_GetCommandFullName(interp: *mut Tcl_Interp,
5989                                  command: Tcl_Command, objPtr: *mut Tcl_Obj)
5990     -> ();
5991    pub fn Tcl_FSEvalFileEx(interp: *mut Tcl_Interp, fileName: *mut Tcl_Obj,
5992                            encodingName: *const ::libc::c_char)
5993     -> ::libc::c_int;
5994    pub fn Tcl_SetExitProc(_proc: *mut Tcl_ExitProc) -> *mut Tcl_ExitProc;
5995    pub fn Tcl_LimitAddHandler(interp: *mut Tcl_Interp, _type: ::libc::c_int,
5996                               handlerProc: *mut Tcl_LimitHandlerProc,
5997                               clientData: ClientData,
5998                               deleteProc: *mut Tcl_LimitHandlerDeleteProc)
5999     -> ();
6000    pub fn Tcl_LimitRemoveHandler(interp: *mut Tcl_Interp,
6001                                  _type: ::libc::c_int,
6002                                  handlerProc: *mut Tcl_LimitHandlerProc,
6003                                  clientData: ClientData) -> ();
6004    pub fn Tcl_LimitReady(interp: *mut Tcl_Interp) -> ::libc::c_int;
6005    pub fn Tcl_LimitCheck(interp: *mut Tcl_Interp) -> ::libc::c_int;
6006    pub fn Tcl_LimitExceeded(interp: *mut Tcl_Interp) -> ::libc::c_int;
6007    pub fn Tcl_LimitSetCommands(interp: *mut Tcl_Interp,
6008                                commandLimit: ::libc::c_int) -> ();
6009    pub fn Tcl_LimitSetTime(interp: *mut Tcl_Interp,
6010                            timeLimitPtr: *mut Tcl_Time) -> ();
6011    pub fn Tcl_LimitSetGranularity(interp: *mut Tcl_Interp,
6012                                   _type: ::libc::c_int,
6013                                   granularity: ::libc::c_int) -> ();
6014    pub fn Tcl_LimitTypeEnabled(interp: *mut Tcl_Interp, _type: ::libc::c_int)
6015     -> ::libc::c_int;
6016    pub fn Tcl_LimitTypeExceeded(interp: *mut Tcl_Interp,
6017                                 _type: ::libc::c_int) -> ::libc::c_int;
6018    pub fn Tcl_LimitTypeSet(interp: *mut Tcl_Interp, _type: ::libc::c_int)
6019     -> ();
6020    pub fn Tcl_LimitTypeReset(interp: *mut Tcl_Interp, _type: ::libc::c_int)
6021     -> ();
6022    pub fn Tcl_LimitGetCommands(interp: *mut Tcl_Interp) -> ::libc::c_int;
6023    pub fn Tcl_LimitGetTime(interp: *mut Tcl_Interp,
6024                            timeLimitPtr: *mut Tcl_Time) -> ();
6025    pub fn Tcl_LimitGetGranularity(interp: *mut Tcl_Interp,
6026                                   _type: ::libc::c_int) -> ::libc::c_int;
6027    pub fn Tcl_SaveInterpState(interp: *mut Tcl_Interp, status: ::libc::c_int)
6028     -> Tcl_InterpState;
6029    pub fn Tcl_RestoreInterpState(interp: *mut Tcl_Interp,
6030                                  state: Tcl_InterpState) -> ::libc::c_int;
6031    pub fn Tcl_DiscardInterpState(state: Tcl_InterpState) -> ();
6032    pub fn Tcl_SetReturnOptions(interp: *mut Tcl_Interp,
6033                                options: *mut Tcl_Obj) -> ::libc::c_int;
6034    pub fn Tcl_GetReturnOptions(interp: *mut Tcl_Interp,
6035                                result: ::libc::c_int) -> *mut Tcl_Obj;
6036    pub fn Tcl_IsEnsemble(token: Tcl_Command) -> ::libc::c_int;
6037    pub fn Tcl_CreateEnsemble(interp: *mut Tcl_Interp,
6038                              name: *const ::libc::c_char,
6039                              namespacePtr: *mut Tcl_Namespace,
6040                              flags: ::libc::c_int) -> Tcl_Command;
6041    pub fn Tcl_FindEnsemble(interp: *mut Tcl_Interp, cmdNameObj: *mut Tcl_Obj,
6042                            flags: ::libc::c_int) -> Tcl_Command;
6043    pub fn Tcl_SetEnsembleSubcommandList(interp: *mut Tcl_Interp,
6044                                         token: Tcl_Command,
6045                                         subcmdList: *mut Tcl_Obj)
6046     -> ::libc::c_int;
6047    pub fn Tcl_SetEnsembleMappingDict(interp: *mut Tcl_Interp,
6048                                      token: Tcl_Command,
6049                                      mapDict: *mut Tcl_Obj) -> ::libc::c_int;
6050    pub fn Tcl_SetEnsembleUnknownHandler(interp: *mut Tcl_Interp,
6051                                         token: Tcl_Command,
6052                                         unknownList: *mut Tcl_Obj)
6053     -> ::libc::c_int;
6054    pub fn Tcl_SetEnsembleFlags(interp: *mut Tcl_Interp, token: Tcl_Command,
6055                                flags: ::libc::c_int) -> ::libc::c_int;
6056    pub fn Tcl_GetEnsembleSubcommandList(interp: *mut Tcl_Interp,
6057                                         token: Tcl_Command,
6058                                         subcmdListPtr: *mut *mut Tcl_Obj)
6059     -> ::libc::c_int;
6060    pub fn Tcl_GetEnsembleMappingDict(interp: *mut Tcl_Interp,
6061                                      token: Tcl_Command,
6062                                      mapDictPtr: *mut *mut Tcl_Obj)
6063     -> ::libc::c_int;
6064    pub fn Tcl_GetEnsembleUnknownHandler(interp: *mut Tcl_Interp,
6065                                         token: Tcl_Command,
6066                                         unknownListPtr: *mut *mut Tcl_Obj)
6067     -> ::libc::c_int;
6068    pub fn Tcl_GetEnsembleFlags(interp: *mut Tcl_Interp, token: Tcl_Command,
6069                                flagsPtr: *mut ::libc::c_int)
6070     -> ::libc::c_int;
6071    pub fn Tcl_GetEnsembleNamespace(interp: *mut Tcl_Interp,
6072                                    token: Tcl_Command,
6073                                    namespacePtrPtr: *mut *mut Tcl_Namespace)
6074     -> ::libc::c_int;
6075    pub fn Tcl_SetTimeProc(getProc: *mut Tcl_GetTimeProc,
6076                           scaleProc: *mut Tcl_ScaleTimeProc,
6077                           clientData: ClientData) -> ();
6078    pub fn Tcl_QueryTimeProc(getProc: *mut *mut Tcl_GetTimeProc,
6079                             scaleProc: *mut *mut Tcl_ScaleTimeProc,
6080                             clientData: *mut ClientData) -> ();
6081    pub fn Tcl_ChannelThreadActionProc(chanTypePtr: *const Tcl_ChannelType)
6082     -> *mut Tcl_DriverThreadActionProc;
6083    pub fn Tcl_NewBignumObj(value: *mut mp_int) -> *mut Tcl_Obj;
6084    pub fn Tcl_DbNewBignumObj(value: *mut mp_int, file: *const ::libc::c_char,
6085                              line: ::libc::c_int) -> *mut Tcl_Obj;
6086    pub fn Tcl_SetBignumObj(obj: *mut Tcl_Obj, value: *mut mp_int) -> ();
6087    pub fn Tcl_GetBignumFromObj(interp: *mut Tcl_Interp, obj: *mut Tcl_Obj,
6088                                value: *mut mp_int) -> ::libc::c_int;
6089    pub fn Tcl_TakeBignumFromObj(interp: *mut Tcl_Interp, obj: *mut Tcl_Obj,
6090                                 value: *mut mp_int) -> ::libc::c_int;
6091    pub fn Tcl_TruncateChannel(chan: Tcl_Channel, length: Tcl_WideInt)
6092     -> ::libc::c_int;
6093    pub fn Tcl_ChannelTruncateProc(chanTypePtr: *const Tcl_ChannelType)
6094     -> *mut Tcl_DriverTruncateProc;
6095    pub fn Tcl_SetChannelErrorInterp(interp: *mut Tcl_Interp,
6096                                     msg: *mut Tcl_Obj) -> ();
6097    pub fn Tcl_GetChannelErrorInterp(interp: *mut Tcl_Interp,
6098                                     msg: *mut *mut Tcl_Obj) -> ();
6099    pub fn Tcl_SetChannelError(chan: Tcl_Channel, msg: *mut Tcl_Obj) -> ();
6100    pub fn Tcl_GetChannelError(chan: Tcl_Channel, msg: *mut *mut Tcl_Obj)
6101     -> ();
6102    pub fn Tcl_InitBignumFromDouble(interp: *mut Tcl_Interp,
6103                                    initval: ::libc::c_double,
6104                                    toInit: *mut mp_int) -> ::libc::c_int;
6105    pub fn Tcl_GetNamespaceUnknownHandler(interp: *mut Tcl_Interp,
6106                                          nsPtr: *mut Tcl_Namespace)
6107     -> *mut Tcl_Obj;
6108    pub fn Tcl_SetNamespaceUnknownHandler(interp: *mut Tcl_Interp,
6109                                          nsPtr: *mut Tcl_Namespace,
6110                                          handlerPtr: *mut Tcl_Obj)
6111     -> ::libc::c_int;
6112    pub fn Tcl_GetEncodingFromObj(interp: *mut Tcl_Interp,
6113                                  objPtr: *mut Tcl_Obj,
6114                                  encodingPtr: *mut Tcl_Encoding)
6115     -> ::libc::c_int;
6116    pub fn Tcl_GetEncodingSearchPath() -> *mut Tcl_Obj;
6117    pub fn Tcl_SetEncodingSearchPath(searchPath: *mut Tcl_Obj)
6118     -> ::libc::c_int;
6119    pub fn Tcl_GetEncodingNameFromEnvironment(bufPtr: *mut Tcl_DString)
6120     -> *const ::libc::c_char;
6121    pub fn Tcl_PkgRequireProc(interp: *mut Tcl_Interp,
6122                              name: *const ::libc::c_char,
6123                              objc: ::libc::c_int, objv: *const *mut Tcl_Obj,
6124                              clientDataPtr: *mut ::libc::c_void)
6125     -> ::libc::c_int;
6126    pub fn Tcl_AppendObjToErrorInfo(interp: *mut Tcl_Interp,
6127                                    objPtr: *mut Tcl_Obj) -> ();
6128    pub fn Tcl_AppendLimitedToObj(objPtr: *mut Tcl_Obj,
6129                                  bytes: *const ::libc::c_char,
6130                                  length: ::libc::c_int, limit: ::libc::c_int,
6131                                  ellipsis: *const ::libc::c_char) -> ();
6132    pub fn Tcl_Format(interp: *mut Tcl_Interp, format: *const ::libc::c_char,
6133                      objc: ::libc::c_int, objv: *const *mut Tcl_Obj)
6134     -> *mut Tcl_Obj;
6135    pub fn Tcl_AppendFormatToObj(interp: *mut Tcl_Interp,
6136                                 objPtr: *mut Tcl_Obj,
6137                                 format: *const ::libc::c_char,
6138                                 objc: ::libc::c_int,
6139                                 objv: *const *mut Tcl_Obj) -> ::libc::c_int;
6140    pub fn Tcl_ObjPrintf(format: *const ::libc::c_char, ...) -> *mut Tcl_Obj;
6141    pub fn Tcl_AppendPrintfToObj(objPtr: *mut Tcl_Obj,
6142                                 format: *const ::libc::c_char, ...) -> ();
6143    pub fn Tcl_CancelEval(interp: *mut Tcl_Interp, resultObjPtr: *mut Tcl_Obj,
6144                          clientData: ClientData, flags: ::libc::c_int)
6145     -> ::libc::c_int;
6146    pub fn Tcl_Canceled(interp: *mut Tcl_Interp, flags: ::libc::c_int)
6147     -> ::libc::c_int;
6148    pub fn Tcl_CreatePipe(interp: *mut Tcl_Interp, rchan: *mut Tcl_Channel,
6149                          wchan: *mut Tcl_Channel, flags: ::libc::c_int)
6150     -> ::libc::c_int;
6151    pub fn Tcl_NRCreateCommand(interp: *mut Tcl_Interp,
6152                               cmdName: *const ::libc::c_char,
6153                               _proc: *mut Tcl_ObjCmdProc,
6154                               nreProc: *mut Tcl_ObjCmdProc,
6155                               clientData: ClientData,
6156                               deleteProc: *mut Tcl_CmdDeleteProc)
6157     -> Tcl_Command;
6158    pub fn Tcl_NREvalObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
6159                         flags: ::libc::c_int) -> ::libc::c_int;
6160    pub fn Tcl_NREvalObjv(interp: *mut Tcl_Interp, objc: ::libc::c_int,
6161                          objv: *const *mut Tcl_Obj, flags: ::libc::c_int)
6162     -> ::libc::c_int;
6163    pub fn Tcl_NRCmdSwap(interp: *mut Tcl_Interp, cmd: Tcl_Command,
6164                         objc: ::libc::c_int, objv: *const *mut Tcl_Obj,
6165                         flags: ::libc::c_int) -> ::libc::c_int;
6166    pub fn Tcl_NRAddCallback(interp: *mut Tcl_Interp,
6167                             postProcPtr: *mut Tcl_NRPostProc,
6168                             data0: ClientData, data1: ClientData,
6169                             data2: ClientData, data3: ClientData) -> ();
6170    pub fn Tcl_NRCallObjProc(interp: *mut Tcl_Interp,
6171                             objProc: *mut Tcl_ObjCmdProc,
6172                             clientData: ClientData, objc: ::libc::c_int,
6173                             objv: *const *mut Tcl_Obj) -> ::libc::c_int;
6174    pub fn Tcl_GetFSDeviceFromStat(statPtr: *const Tcl_StatBuf)
6175     -> ::libc::c_uint;
6176    pub fn Tcl_GetFSInodeFromStat(statPtr: *const Tcl_StatBuf)
6177     -> ::libc::c_uint;
6178    pub fn Tcl_GetModeFromStat(statPtr: *const Tcl_StatBuf) -> ::libc::c_uint;
6179    pub fn Tcl_GetLinkCountFromStat(statPtr: *const Tcl_StatBuf)
6180     -> ::libc::c_int;
6181    pub fn Tcl_GetUserIdFromStat(statPtr: *const Tcl_StatBuf)
6182     -> ::libc::c_int;
6183    pub fn Tcl_GetGroupIdFromStat(statPtr: *const Tcl_StatBuf)
6184     -> ::libc::c_int;
6185    pub fn Tcl_GetDeviceTypeFromStat(statPtr: *const Tcl_StatBuf)
6186     -> ::libc::c_int;
6187    pub fn Tcl_GetAccessTimeFromStat(statPtr: *const Tcl_StatBuf)
6188     -> Tcl_WideInt;
6189    pub fn Tcl_GetModificationTimeFromStat(statPtr: *const Tcl_StatBuf)
6190     -> Tcl_WideInt;
6191    pub fn Tcl_GetChangeTimeFromStat(statPtr: *const Tcl_StatBuf)
6192     -> Tcl_WideInt;
6193    pub fn Tcl_GetSizeFromStat(statPtr: *const Tcl_StatBuf) -> Tcl_WideUInt;
6194    pub fn Tcl_GetBlocksFromStat(statPtr: *const Tcl_StatBuf) -> Tcl_WideUInt;
6195    pub fn Tcl_GetBlockSizeFromStat(statPtr: *const Tcl_StatBuf)
6196     -> ::libc::c_uint;
6197    pub fn Tcl_SetEnsembleParameterList(interp: *mut Tcl_Interp,
6198                                        token: Tcl_Command,
6199                                        paramList: *mut Tcl_Obj)
6200     -> ::libc::c_int;
6201    pub fn Tcl_GetEnsembleParameterList(interp: *mut Tcl_Interp,
6202                                        token: Tcl_Command,
6203                                        paramListPtr: *mut *mut Tcl_Obj)
6204     -> ::libc::c_int;
6205    pub fn Tcl_ParseArgsObjv(interp: *mut Tcl_Interp,
6206                             argTable: *const Tcl_ArgvInfo,
6207                             objcPtr: *mut ::libc::c_int,
6208                             objv: *const *mut Tcl_Obj,
6209                             remObjv: *mut *mut *mut Tcl_Obj)
6210     -> ::libc::c_int;
6211    pub fn Tcl_GetErrorLine(interp: *mut Tcl_Interp) -> ::libc::c_int;
6212    pub fn Tcl_SetErrorLine(interp: *mut Tcl_Interp, lineNum: ::libc::c_int)
6213     -> ();
6214    pub fn Tcl_TransferResult(sourceInterp: *mut Tcl_Interp,
6215                              result: ::libc::c_int,
6216                              targetInterp: *mut Tcl_Interp) -> ();
6217    pub fn Tcl_InterpActive(interp: *mut Tcl_Interp) -> ::libc::c_int;
6218    pub fn Tcl_BackgroundException(interp: *mut Tcl_Interp,
6219                                   code: ::libc::c_int) -> ();
6220    pub fn Tcl_ZlibDeflate(interp: *mut Tcl_Interp, format: ::libc::c_int,
6221                           data: *mut Tcl_Obj, level: ::libc::c_int,
6222                           gzipHeaderDictObj: *mut Tcl_Obj) -> ::libc::c_int;
6223    pub fn Tcl_ZlibInflate(interp: *mut Tcl_Interp, format: ::libc::c_int,
6224                           data: *mut Tcl_Obj, buffersize: ::libc::c_int,
6225                           gzipHeaderDictObj: *mut Tcl_Obj) -> ::libc::c_int;
6226    pub fn Tcl_ZlibCRC32(crc: ::libc::c_uint, buf: *const ::libc::c_uchar,
6227                         len: ::libc::c_int) -> ::libc::c_uint;
6228    pub fn Tcl_ZlibAdler32(adler: ::libc::c_uint, buf: *const ::libc::c_uchar,
6229                           len: ::libc::c_int) -> ::libc::c_uint;
6230    pub fn Tcl_ZlibStreamInit(interp: *mut Tcl_Interp, mode: ::libc::c_int,
6231                              format: ::libc::c_int, level: ::libc::c_int,
6232                              dictObj: *mut Tcl_Obj,
6233                              zshandle: *mut Tcl_ZlibStream) -> ::libc::c_int;
6234    pub fn Tcl_ZlibStreamGetCommandName(zshandle: Tcl_ZlibStream)
6235     -> *mut Tcl_Obj;
6236    pub fn Tcl_ZlibStreamEof(zshandle: Tcl_ZlibStream) -> ::libc::c_int;
6237    pub fn Tcl_ZlibStreamChecksum(zshandle: Tcl_ZlibStream) -> ::libc::c_int;
6238    pub fn Tcl_ZlibStreamPut(zshandle: Tcl_ZlibStream, data: *mut Tcl_Obj,
6239                             flush: ::libc::c_int) -> ::libc::c_int;
6240    pub fn Tcl_ZlibStreamGet(zshandle: Tcl_ZlibStream, data: *mut Tcl_Obj,
6241                             count: ::libc::c_int) -> ::libc::c_int;
6242    pub fn Tcl_ZlibStreamClose(zshandle: Tcl_ZlibStream) -> ::libc::c_int;
6243    pub fn Tcl_ZlibStreamReset(zshandle: Tcl_ZlibStream) -> ::libc::c_int;
6244    pub fn Tcl_SetStartupScript(path: *mut Tcl_Obj,
6245                                encoding: *const ::libc::c_char) -> ();
6246    pub fn Tcl_GetStartupScript(encodingPtr: *mut *const ::libc::c_char)
6247     -> *mut Tcl_Obj;
6248    pub fn Tcl_CloseEx(interp: *mut Tcl_Interp, chan: Tcl_Channel,
6249                       flags: ::libc::c_int) -> ::libc::c_int;
6250    pub fn Tcl_NRExprObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
6251                         resultPtr: *mut Tcl_Obj) -> ::libc::c_int;
6252    pub fn Tcl_NRSubstObj(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj,
6253                          flags: ::libc::c_int) -> ::libc::c_int;
6254    pub fn Tcl_LoadFile(interp: *mut Tcl_Interp, pathPtr: *mut Tcl_Obj,
6255                        symv: *const *const ::libc::c_char,
6256                        flags: ::libc::c_int, procPtrs: *mut ::libc::c_void,
6257                        handlePtr: *mut Tcl_LoadHandle) -> ::libc::c_int;
6258    pub fn Tcl_FindSymbol(interp: *mut Tcl_Interp, handle: Tcl_LoadHandle,
6259                          symbol: *const ::libc::c_char)
6260     -> *mut ::libc::c_void;
6261    pub fn Tcl_FSUnloadFile(interp: *mut Tcl_Interp,
6262                            handlePtr: Tcl_LoadHandle) -> ::libc::c_int;
6263    pub fn Tcl_ZlibStreamSetCompressionDictionary(zhandle: Tcl_ZlibStream,
6264                                                  compressionDictionaryObj:
6265                                                      *mut Tcl_Obj) -> ();
6266    pub fn Tcl_AppInit(arg1: *mut Tcl_Interp) -> ::libc::c_int;
6267}