tcl.h   tcl.h 
skipping to change at line 59 skipping to change at line 59
* macosx/Tcl.xcode/default.pbxuser (not patchlevel) 1 LOC * macosx/Tcl.xcode/default.pbxuser (not patchlevel) 1 LOC
* macosx/Tcl-Common.xcconfig (not patchlevel) 1 LOC * macosx/Tcl-Common.xcconfig (not patchlevel) 1 LOC
* win/README (not patchlevel) (sections 0 and 2) * win/README (not patchlevel) (sections 0 and 2)
* unix/tcl.spec (1 LOC patch) * unix/tcl.spec (1 LOC patch)
* tools/tcl.hpj.in (not patchlevel, for windows installer) * tools/tcl.hpj.in (not patchlevel, for windows installer)
*/ */
#define TCL_MAJOR_VERSION 8 #define TCL_MAJOR_VERSION 8
#define TCL_MINOR_VERSION 6 #define TCL_MINOR_VERSION 6
#define TCL_RELEASE_LEVEL TCL_FINAL_RELEASE #define TCL_RELEASE_LEVEL TCL_FINAL_RELEASE
#define TCL_RELEASE_SERIAL 0 #define TCL_RELEASE_SERIAL 1
#define TCL_VERSION "8.6" #define TCL_VERSION "8.6"
#define TCL_PATCH_LEVEL "8.6.0" #define TCL_PATCH_LEVEL "8.6.1"
/* /*
*------------------------------------------------------------------------- --- *------------------------------------------------------------------------- ---
* The following definitions set up the proper options for Windows compiler s. * The following definitions set up the proper options for Windows compiler s.
* We use this method because there is no autoconf equivalent. * We use this method because there is no autoconf equivalent.
*/ */
#ifndef __WIN32__ #ifndef __WIN32__
# if defined(_WIN32) || defined(WIN32) || defined(__MINGW32__) || defined (__BORLANDC__) || (defined(__WATCOMC__) && defined(__WINDOWS_386__)) # if defined(_WIN32) || defined(WIN32) || defined(__MINGW32__) || defined (__BORLANDC__) || (defined(__WATCOMC__) && defined(__WINDOWS_386__))
# define __WIN32__ # define __WIN32__
# ifndef WIN32 # ifndef WIN32
skipping to change at line 331 skipping to change at line 331
typedef short SHORT; typedef short SHORT;
typedef long LONG; typedef long LONG;
#endif #endif
#endif /* __WIN32__ && !HAVE_WINNT_IGNORE_VOID */ #endif /* __WIN32__ && !HAVE_WINNT_IGNORE_VOID */
/* /*
* Macro to use instead of "void" for arguments that must have type "void * " * Macro to use instead of "void" for arguments that must have type "void * "
* in ANSI C; maps them to type "char *" in non-ANSI systems. * in ANSI C; maps them to type "char *" in non-ANSI systems.
*/ */
#ifndef NO_VOID #ifndef __VXWORKS__
# define VOID void # ifndef NO_VOID
#else # define VOID void
# define VOID char # else
# define VOID char
# endif
#endif #endif
/* /*
* Miscellaneous declarations. * Miscellaneous declarations.
*/ */
#ifndef _CLIENTDATA #ifndef _CLIENTDATA
# ifndef NO_VOID # ifndef NO_VOID
typedef void *ClientData; typedef void *ClientData;
# else # else
skipping to change at line 474 skipping to change at line 476
short st_gid; short st_gid;
/* Here is a 2-byte gap */ /* Here is a 2-byte gap */
dev_t st_rdev; dev_t st_rdev;
/* Here is a 4-byte gap */ /* Here is a 4-byte gap */
long long st_size; long long st_size;
struct {long tv_sec;} st_atim; struct {long tv_sec;} st_atim;
struct {long tv_sec;} st_mtim; struct {long tv_sec;} st_mtim;
struct {long tv_sec;} st_ctim; struct {long tv_sec;} st_ctim;
/* Here is a 4-byte gap */ /* Here is a 4-byte gap */
} Tcl_StatBuf; } Tcl_StatBuf;
#elif defined(HAVE_STRUCT_STAT64) #elif defined(HAVE_STRUCT_STAT64) && !defined(__APPLE__)
typedef struct stat64 Tcl_StatBuf; typedef struct stat64 Tcl_StatBuf;
#else #else
typedef struct stat Tcl_StatBuf; typedef struct stat Tcl_StatBuf;
#endif #endif
/* /*
*------------------------------------------------------------------------- --- *------------------------------------------------------------------------- ---
* Data structures defined opaquely in this module. The definitions below j ust * Data structures defined opaquely in this module. The definitions below j ust
* provide dummy types. A few fields are made visible in Tcl_Interp * provide dummy types. A few fields are made visible in Tcl_Interp
* structures, namely those used for returning a string result from command s. * structures, namely those used for returning a string result from command s.
* Direct access to the result field is discouraged in Tcl 8.0. The * Direct access to the result field is discouraged in Tcl 8.0. The
skipping to change at line 505 skipping to change at line 507
* Instead, they set a Tcl_Obj member in the "real" structure that can be * Instead, they set a Tcl_Obj member in the "real" structure that can be
* accessed with Tcl_GetObjResult() and Tcl_SetObjResult(). * accessed with Tcl_GetObjResult() and Tcl_SetObjResult().
*/ */
typedef struct Tcl_Interp typedef struct Tcl_Interp
#ifndef TCL_NO_DEPRECATED #ifndef TCL_NO_DEPRECATED
{ {
/* TIP #330: Strongly discourage extensions from using the string /* TIP #330: Strongly discourage extensions from using the string
* result. */ * result. */
#ifdef USE_INTERP_RESULT #ifdef USE_INTERP_RESULT
char *result TCL_DEPRECATED_API("use Tcl_GetResult/Tcl_SetResult"); char *result TCL_DEPRECATED_API("use Tcl_GetStringResult/Tcl_SetResult" );
/* If the last command returned a string /* If the last command returned a string
* result, this points to it. */ * result, this points to it. */
void (*freeProc) (char *blockPtr) void (*freeProc) (char *blockPtr)
TCL_DEPRECATED_API("use Tcl_GetResult/Tcl_SetResult"); TCL_DEPRECATED_API("use Tcl_GetStringResult/Tcl_SetResult");
/* Zero means the string result is staticall y /* Zero means the string result is staticall y
* allocated. TCL_DYNAMIC means it was * allocated. TCL_DYNAMIC means it was
* allocated with ckalloc and should be free d * allocated with ckalloc and should be free d
* with ckfree. Other values give the addres s * with ckfree. Other values give the addres s
* of function to invoke to free the result. * of function to invoke to free the result.
* Tcl_Eval must free it before executing ne xt * Tcl_Eval must free it before executing ne xt
* command. */ * command. */
#else #else
char *resultDontUse; /* Don't use in extensions! */ char *resultDontUse; /* Don't use in extensions! */
void (*freeProcDontUse) (char *); /* Don't use in extensions! */ void (*freeProcDontUse) (char *); /* Don't use in extensions! */
skipping to change at line 2409 skipping to change at line 2411
/* /*
* TODO - tommath stubs export goes here! * TODO - tommath stubs export goes here!
*/ */
/* /*
* Public functions that are not accessible via the stubs table. * Public functions that are not accessible via the stubs table.
* Tcl_GetMemoryInfo is needed for AOLserver. [Bug 1868171] * Tcl_GetMemoryInfo is needed for AOLserver. [Bug 1868171]
*/ */
#define Tcl_Main(argc, argv, proc) Tcl_MainEx(argc, argv, proc, \ #define Tcl_Main(argc, argv, proc) Tcl_MainEx(argc, argv, proc, \
(Tcl_FindExecutable(argv[0]), (Tcl_CreateInterp)())) ((Tcl_CreateInterp)()))
EXTERN void Tcl_MainEx(int argc, char **argv, EXTERN void Tcl_MainEx(int argc, char **argv,
Tcl_AppInitProc *appInitProc, Tcl_Interp *interp ); Tcl_AppInitProc *appInitProc, Tcl_Interp *interp );
EXTERN const char * Tcl_PkgInitStubsCheck(Tcl_Interp *interp, EXTERN const char * Tcl_PkgInitStubsCheck(Tcl_Interp *interp,
const char *version, int exact); const char *version, int exact);
#if defined(TCL_THREADS) && defined(USE_THREAD_ALLOC) #if defined(TCL_THREADS) && defined(USE_THREAD_ALLOC)
EXTERN void Tcl_GetMemoryInfo(Tcl_DString *dsPtr); EXTERN void Tcl_GetMemoryInfo(Tcl_DString *dsPtr);
#endif #endif
/* /*
*------------------------------------------------------------------------- --- *------------------------------------------------------------------------- ---
* Include the public function declarations that are accessible via the stu bs * Include the public function declarations that are accessible via the stu bs
skipping to change at line 2442 skipping to change at line 2444
/* /*
*------------------------------------------------------------------------- --- *------------------------------------------------------------------------- ---
* The following declarations either map ckalloc and ckfree to malloc and * The following declarations either map ckalloc and ckfree to malloc and
* free, or they map them to functions with all sorts of debugging hooks * free, or they map them to functions with all sorts of debugging hooks
* defined in tclCkalloc.c. * defined in tclCkalloc.c.
*/ */
#ifdef TCL_MEM_DEBUG #ifdef TCL_MEM_DEBUG
# define ckalloc(x) \ # define ckalloc(x) \
((VOID *) Tcl_DbCkalloc((unsigned)(x), __FILE__, __LINE__)) ((void *) Tcl_DbCkalloc((unsigned)(x), __FILE__, __LINE__))
# define ckfree(x) \ # define ckfree(x) \
Tcl_DbCkfree((char *)(x), __FILE__, __LINE__) Tcl_DbCkfree((char *)(x), __FILE__, __LINE__)
# define ckrealloc(x,y) \ # define ckrealloc(x,y) \
((VOID *) Tcl_DbCkrealloc((char *)(x), (unsigned)(y), __FILE__, __LINE_ _)) ((void *) Tcl_DbCkrealloc((char *)(x), (unsigned)(y), __FILE__, __LINE_ _))
# define attemptckalloc(x) \ # define attemptckalloc(x) \
((VOID *) Tcl_AttemptDbCkalloc((unsigned)(x), __FILE__, __LINE__)) ((void *) Tcl_AttemptDbCkalloc((unsigned)(x), __FILE__, __LINE__))
# define attemptckrealloc(x,y) \ # define attemptckrealloc(x,y) \
((VOID *) Tcl_AttemptDbCkrealloc((char *)(x), (unsigned)(y), __FILE__, __LINE__)) ((void *) Tcl_AttemptDbCkrealloc((char *)(x), (unsigned)(y), __FILE__, __LINE__))
#else /* !TCL_MEM_DEBUG */ #else /* !TCL_MEM_DEBUG */
/* /*
* If we are not using the debugging allocator, we should call the Tcl_Allo c, * If we are not using the debugging allocator, we should call the Tcl_Allo c,
* et al. routines in order to guarantee that every module is using the sam e * et al. routines in order to guarantee that every module is using the sam e
* memory allocator both inside and outside of the Tcl library. * memory allocator both inside and outside of the Tcl library.
*/ */
# define ckalloc(x) \ # define ckalloc(x) \
((VOID *) Tcl_Alloc((unsigned)(x))) ((void *) Tcl_Alloc((unsigned)(x)))
# define ckfree(x) \ # define ckfree(x) \
Tcl_Free((char *)(x)) Tcl_Free((char *)(x))
# define ckrealloc(x,y) \ # define ckrealloc(x,y) \
((VOID *) Tcl_Realloc((char *)(x), (unsigned)(y))) ((void *) Tcl_Realloc((char *)(x), (unsigned)(y)))
# define attemptckalloc(x) \ # define attemptckalloc(x) \
((VOID *) Tcl_AttemptAlloc((unsigned)(x))) ((void *) Tcl_AttemptAlloc((unsigned)(x)))
# define attemptckrealloc(x,y) \ # define attemptckrealloc(x,y) \
((VOID *) Tcl_AttemptRealloc((char *)(x), (unsigned)(y))) ((void *) Tcl_AttemptRealloc((char *)(x), (unsigned)(y)))
# undef Tcl_InitMemory # undef Tcl_InitMemory
# define Tcl_InitMemory(x) # define Tcl_InitMemory(x)
# undef Tcl_DumpActiveMemory # undef Tcl_DumpActiveMemory
# define Tcl_DumpActiveMemory(x) # define Tcl_DumpActiveMemory(x)
# undef Tcl_ValidateAllMemory # undef Tcl_ValidateAllMemory
# define Tcl_ValidateAllMemory(x,y) # define Tcl_ValidateAllMemory(x,y)
#endif /* !TCL_MEM_DEBUG */ #endif /* !TCL_MEM_DEBUG */
#ifdef TCL_MEM_DEBUG #ifdef TCL_MEM_DEBUG
skipping to change at line 2595 skipping to change at line 2597
#undef Tcl_ConditionFinalize #undef Tcl_ConditionFinalize
#define Tcl_ConditionFinalize(condPtr) #define Tcl_ConditionFinalize(condPtr)
#endif /* TCL_THREADS */ #endif /* TCL_THREADS */
/* /*
*------------------------------------------------------------------------- --- *------------------------------------------------------------------------- ---
* Deprecated Tcl functions: * Deprecated Tcl functions:
*/ */
#ifndef TCL_NO_DEPRECATED #ifndef TCL_NO_DEPRECATED
# undef Tcl_EvalObj
# define Tcl_EvalObj(interp,objPtr) \
Tcl_EvalObjEx((interp),(objPtr),0)
# undef Tcl_GlobalEvalObj
# define Tcl_GlobalEvalObj(interp,objPtr) \
Tcl_EvalObjEx((interp),(objPtr),TCL_EVAL_GLOBAL)
/* /*
* These function have been renamed. The old names are deprecated, but we * These function have been renamed. The old names are deprecated, but we
* define these macros for backwards compatibilty. * define these macros for backwards compatibilty.
*/ */
# define Tcl_Ckalloc Tcl_Alloc # define Tcl_Ckalloc Tcl_Alloc
# define Tcl_Ckfree Tcl_Free # define Tcl_Ckfree Tcl_Free
# define Tcl_Ckrealloc Tcl_Realloc # define Tcl_Ckrealloc Tcl_Realloc
# define Tcl_Return Tcl_SetResult # define Tcl_Return Tcl_SetResult
# define Tcl_TildeSubst Tcl_TranslateFileName # define Tcl_TildeSubst Tcl_TranslateFileName
 End of changes. 16 change blocks. 
25 lines changed or deleted 20 lines changed or added


 tclDecls.h   tclDecls.h 
skipping to change at line 3786 skipping to change at line 3786
/* !END!: Do not edit above this line. */ /* !END!: Do not edit above this line. */
#if defined(USE_TCL_STUBS) #if defined(USE_TCL_STUBS)
# undef Tcl_CreateInterp # undef Tcl_CreateInterp
# undef Tcl_FindExecutable # undef Tcl_FindExecutable
# undef Tcl_GetStringResult # undef Tcl_GetStringResult
# undef Tcl_Init # undef Tcl_Init
# undef Tcl_SetPanicProc # undef Tcl_SetPanicProc
# undef Tcl_SetVar # undef Tcl_SetVar
# undef Tcl_ObjSetVar2
# undef Tcl_StaticPackage # undef Tcl_StaticPackage
# undef TclFSGetNativePath # undef TclFSGetNativePath
# define Tcl_CreateInterp() (tclStubsPtr->tcl_CreateInterp()) # define Tcl_CreateInterp() (tclStubsPtr->tcl_CreateInterp())
# define Tcl_GetStringResult(interp) (tclStubsPtr->tcl_GetStringResult(in terp)) # define Tcl_GetStringResult(interp) (tclStubsPtr->tcl_GetStringResult(in terp))
# define Tcl_Init(interp) (tclStubsPtr->tcl_Init(interp)) # define Tcl_Init(interp) (tclStubsPtr->tcl_Init(interp))
# define Tcl_SetPanicProc(proc) (tclStubsPtr->tcl_SetPanicProc(proc)) # define Tcl_SetPanicProc(proc) (tclStubsPtr->tcl_SetPanicProc(proc))
# define Tcl_SetVar(interp, varName, newValue, flags) \ # define Tcl_SetVar(interp, varName, newValue, flags) \
(tclStubsPtr->tcl_SetVar(interp, varName, newValue, flags)) (tclStubsPtr->tcl_SetVar(interp, varName, newValue, flags))
# define Tcl_ObjSetVar2(interp, part1, part2, newValue, flags) \
(tclStubsPtr->tcl_ObjSetVar2(interp, part1, part2, newValue, fla
gs))
#endif #endif
#if defined(_WIN32) && defined(UNICODE) #if defined(_WIN32) && defined(UNICODE)
# define Tcl_FindExecutable(arg) ((Tcl_FindExecutable)((const char *)(arg ))) # define Tcl_FindExecutable(arg) ((Tcl_FindExecutable)((const char *)(arg )))
# define Tcl_MainEx Tcl_MainExW # define Tcl_MainEx Tcl_MainExW
EXTERN void Tcl_MainExW(int argc, wchar_t **argv, EXTERN void Tcl_MainExW(int argc, wchar_t **argv,
Tcl_AppInitProc *appInitProc, Tcl_Interp *interp); Tcl_AppInitProc *appInitProc, Tcl_Interp *interp);
#endif #endif
#undef TCL_STORAGE_CLASS #undef TCL_STORAGE_CLASS
#define TCL_STORAGE_CLASS DLLIMPORT #define TCL_STORAGE_CLASS DLLIMPORT
#undef Tcl_SeekOld
#undef Tcl_TellOld
#undef Tcl_PkgPresent
#define Tcl_PkgPresent(interp, name, version, exact) \
Tcl_PkgPresentEx(interp, name, version, exact, NULL)
#undef Tcl_PkgProvide
#define Tcl_PkgProvide(interp, name, version) \
Tcl_PkgProvideEx(interp, name, version, NULL)
#undef Tcl_PkgRequire
#define Tcl_PkgRequire(interp, name, version, exact) \
Tcl_PkgRequireEx(interp, name, version, exact, NULL)
#undef Tcl_GetIndexFromObj
#define Tcl_GetIndexFromObj(interp, objPtr, tablePtr, msg, flags, indexPtr)
\
Tcl_GetIndexFromObjStruct(interp, objPtr, tablePtr, \
sizeof(char *), msg, flags, indexPtr)
#undef Tcl_NewBooleanObj
#define Tcl_NewBooleanObj(boolValue) \
Tcl_NewIntObj((boolValue)!=0)
#undef Tcl_DbNewBooleanObj
#define Tcl_DbNewBooleanObj(boolValue, file, line) \
Tcl_DbNewLongObj((boolValue)!=0, file, line)
#undef Tcl_SetBooleanObj
#define Tcl_SetBooleanObj(objPtr, boolValue) \
Tcl_SetIntObj((objPtr), (boolValue)!=0)
#undef Tcl_SetVar
#define Tcl_SetVar(interp, varName, newValue, flags) \
Tcl_SetVar2(interp, varName, NULL, newValue, flags)
#undef Tcl_UnsetVar
#define Tcl_UnsetVar(interp, varName, flags) \
Tcl_UnsetVar2(interp, varName, NULL, flags)
#undef Tcl_GetVar
#define Tcl_GetVar(interp, varName, flags) \
Tcl_GetVar2(interp, varName, NULL, flags)
#undef Tcl_TraceVar
#define Tcl_TraceVar(interp, varName, flags, proc, clientData) \
Tcl_TraceVar2(interp, varName, NULL, flags, proc, clientData)
#undef Tcl_UntraceVar
#define Tcl_UntraceVar(interp, varName, flags, proc, clientData) \
Tcl_UntraceVar2(interp, varName, NULL, flags, proc, clientData)
#undef Tcl_VarTraceInfo
#define Tcl_VarTraceInfo(interp, varName, flags, proc, prevClientData) \
Tcl_VarTraceInfo2(interp, varName, NULL, flags, proc, prevClientData
)
#undef Tcl_UpVar
#define Tcl_UpVar(interp, frameName, varName, localName, flags) \
Tcl_UpVar2(interp, frameName, varName, NULL, localName, flags)
#if defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS)
# if defined(__CYGWIN__) && defined(TCL_WIDE_INT_IS_LONG)
/* On Cygwin64, long is 64-bit while on Win64 long is 32-bit. Therefore
* we have to make sure that all stub entries on Cygwin64 follow the
* Win64 signature. Cygwin64 stubbed extensions cannot use those stub
* entries any more, they should use the 64-bit alternatives where
* possible. Tcl 9 must find a better solution, but that cannot be done
* without introducing a binary incompatibility.
*/
# undef Tcl_DbNewLongObj
# undef Tcl_GetLongFromObj
# undef Tcl_NewLongObj
# undef Tcl_SetLongObj
# undef Tcl_ExprLong
# undef Tcl_ExprLongObj
# undef Tcl_UniCharNcmp
# undef Tcl_UtfNcmp
# undef Tcl_UtfNcasecmp
# undef Tcl_UniCharNcasecmp
# define Tcl_DbNewLongObj ((Tcl_Obj*(*)(long,const char*,int))Tcl_DbNe
wWideIntObj)
# define Tcl_GetLongFromObj ((int(*)(Tcl_Interp*,Tcl_Obj*,long*))Tcl_G
etWideIntFromObj)
# define Tcl_NewLongObj ((Tcl_Obj*(*)(long))Tcl_NewWideIntObj)
# define Tcl_SetLongObj ((void(*)(Tcl_Obj*,long))Tcl_SetWideIntObj)
# define Tcl_ExprLong TclExprLong
static inline int TclExprLong(Tcl_Interp *interp, const char *string
, long *ptr){
int intValue;
int result = tclStubsPtr->tcl_ExprLong(interp, string, (long *)&
intValue);
if (result == TCL_OK) *ptr = (long)intValue;
return result;
}
# define Tcl_ExprLongObj TclExprLongObj
static inline int TclExprLongObj(Tcl_Interp *interp, Tcl_Obj *obj, l
ong *ptr){
int intValue;
int result = tclStubsPtr->tcl_ExprLongObj(interp, obj, (long *)&
intValue);
if (result == TCL_OK) *ptr = (long)intValue;
return result;
}
# define Tcl_UniCharNcmp(ucs,uct,n) \
((int(*)(const Tcl_UniChar*,const Tcl_UniChar*,unsigned int)
)tclStubsPtr->tcl_UniCharNcmp)(ucs,uct,(unsigned int)(n))
# define Tcl_UtfNcmp(s1,s2,n) \
((int(*)(const char*,const char*,unsigned int))tclStubsPtr->
tcl_UtfNcmp)(s1,s2,(unsigned int)(n))
# define Tcl_UtfNcasecmp(s1,s2,n) \
((int(*)(const char*,const char*,unsigned int))tclStubsPtr->
tcl_UtfNcasecmp)(s1,s2,(unsigned int)(n))
# define Tcl_UniCharNcasecmp(ucs,uct,n) \
((int(*)(const Tcl_UniChar*,const Tcl_UniChar*,unsigned int)
)tclStubsPtr->tcl_UniCharNcasecmp)(ucs,uct,(unsigned int)(n))
# endif
#endif
/*
* Deprecated Tcl procedures:
*/
#undef Tcl_EvalObj
#define Tcl_EvalObj(interp,objPtr) \
Tcl_EvalObjEx((interp),(objPtr),0)
#undef Tcl_GlobalEvalObj
#define Tcl_GlobalEvalObj(interp,objPtr) \
Tcl_EvalObjEx((interp),(objPtr),TCL_EVAL_GLOBAL)
#endif /* _TCLDECLS */ #endif /* _TCLDECLS */
 End of changes. 3 change blocks. 
0 lines changed or deleted 122 lines changed or added


 tclOO.h   tclOO.h 
skipping to change at line 42 skipping to change at line 42
* Be careful when it comes to versioning; need to make sure that the * Be careful when it comes to versioning; need to make sure that the
* standalone TclOO version matches. Also make sure that this matches the * standalone TclOO version matches. Also make sure that this matches the
* version in the files: * version in the files:
* *
* tests/oo.test * tests/oo.test
* tests/ooNext2.test * tests/ooNext2.test
* unix/tclooConfig.sh * unix/tclooConfig.sh
* win/tclooConfig.sh * win/tclooConfig.sh
*/ */
#define TCLOO_VERSION "1.0" #define TCLOO_VERSION "1.0.1"
#define TCLOO_PATCHLEVEL TCLOO_VERSION #define TCLOO_PATCHLEVEL TCLOO_VERSION
/* /*
* These are opaque types. * These are opaque types.
*/ */
typedef struct Tcl_Class_ *Tcl_Class; typedef struct Tcl_Class_ *Tcl_Class;
typedef struct Tcl_Method_ *Tcl_Method; typedef struct Tcl_Method_ *Tcl_Method;
typedef struct Tcl_Object_ *Tcl_Object; typedef struct Tcl_Object_ *Tcl_Object;
typedef struct Tcl_ObjectContext_ *Tcl_ObjectContext; typedef struct Tcl_ObjectContext_ *Tcl_ObjectContext;
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/