tcl.h | tcl.h | |||
---|---|---|---|---|
skipping to change at line 16 | skipping to change at line 16 | |||
* | * | |||
* Copyright (c) 1987-1994 The Regents of the University of California. | * Copyright (c) 1987-1994 The Regents of the University of California. | |||
* Copyright (c) 1993-1996 Lucent Technologies. | * Copyright (c) 1993-1996 Lucent Technologies. | |||
* Copyright (c) 1994-1998 Sun Microsystems, Inc. | * Copyright (c) 1994-1998 Sun Microsystems, Inc. | |||
* Copyright (c) 1998-2000 by Scriptics Corporation. | * Copyright (c) 1998-2000 by Scriptics Corporation. | |||
* Copyright (c) 2002 by Kevin B. Kenny. All rights reserved. | * Copyright (c) 2002 by Kevin B. Kenny. All rights reserved. | |||
* | * | |||
* See the file "license.terms" for information on usage and redistribution | * See the file "license.terms" for information on usage and redistribution | |||
* of this file, and for a DISCLAIMER OF ALL WARRANTIES. | * of this file, and for a DISCLAIMER OF ALL WARRANTIES. | |||
* | * | |||
* RCS: @(#) $Id: tcl.h,v 1.153.2.31 2007/05/30 14:05:18 dgp Exp $ | * RCS: @(#) $Id: tcl.h,v 1.153.2.33 2007/10/02 21:53:45 hobbs Exp $ | |||
*/ | */ | |||
#ifndef _TCL | #ifndef _TCL | |||
#define _TCL | #define _TCL | |||
/* | /* | |||
* For C++ compilers, use extern "C" | * For C++ compilers, use extern "C" | |||
*/ | */ | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
skipping to change at line 62 | skipping to change at line 62 | |||
* win/README (not patchlevel) (sections 0 and 2) | * win/README (not patchlevel) (sections 0 and 2) | |||
* unix/tcl.spec (2 LOC Major/Minor, 1 LOC patch) | * unix/tcl.spec (2 LOC Major/Minor, 1 LOC patch) | |||
* tests/basic.test (1 LOC M/M, not patchlevel) | * tests/basic.test (1 LOC M/M, not patchlevel) | |||
* tools/tcl.hpj.in (not patchlevel, for windows installer) | * tools/tcl.hpj.in (not patchlevel, for windows installer) | |||
* tools/tcl.wse.in (for windows installer) | * tools/tcl.wse.in (for windows installer) | |||
* tools/tclSplash.bmp (not patchlevel) | * tools/tclSplash.bmp (not patchlevel) | |||
*/ | */ | |||
#define TCL_MAJOR_VERSION 8 | #define TCL_MAJOR_VERSION 8 | |||
#define TCL_MINOR_VERSION 4 | #define TCL_MINOR_VERSION 4 | |||
#define TCL_RELEASE_LEVEL TCL_FINAL_RELEASE | #define TCL_RELEASE_LEVEL TCL_FINAL_RELEASE | |||
#define TCL_RELEASE_SERIAL 16 | #define TCL_RELEASE_SERIAL 17 | |||
#define TCL_VERSION "8.4" | #define TCL_VERSION "8.4" | |||
#define TCL_PATCH_LEVEL "8.4.16" | #define TCL_PATCH_LEVEL "8.4.17" | |||
/* | /* | |||
* The following definitions set up the proper options for Windows | * The following definitions set up the proper options for Windows | |||
* compilers. We use this method because there is no autoconf equivalent. | * compilers. We use this method because there is no autoconf equivalent. | |||
*/ | */ | |||
#ifndef __WIN32__ | #ifndef __WIN32__ | |||
# if defined(_WIN32) || defined(WIN32) || defined(__MINGW32__) || defined (__BORLANDC__) | # if defined(_WIN32) || defined(WIN32) || defined(__MINGW32__) || defined (__BORLANDC__) | |||
# define __WIN32__ | # define __WIN32__ | |||
# ifndef WIN32 | # ifndef WIN32 | |||
skipping to change at line 815 | skipping to change at line 815 | |||
# define Tcl_IncrRefCount(objPtr) \ | # define Tcl_IncrRefCount(objPtr) \ | |||
Tcl_DbIncrRefCount(objPtr, __FILE__, __LINE__) | Tcl_DbIncrRefCount(objPtr, __FILE__, __LINE__) | |||
# define Tcl_DecrRefCount(objPtr) \ | # define Tcl_DecrRefCount(objPtr) \ | |||
Tcl_DbDecrRefCount(objPtr, __FILE__, __LINE__) | Tcl_DbDecrRefCount(objPtr, __FILE__, __LINE__) | |||
# define Tcl_IsShared(objPtr) \ | # define Tcl_IsShared(objPtr) \ | |||
Tcl_DbIsShared(objPtr, __FILE__, __LINE__) | Tcl_DbIsShared(objPtr, __FILE__, __LINE__) | |||
#else | #else | |||
# define Tcl_IncrRefCount(objPtr) \ | # define Tcl_IncrRefCount(objPtr) \ | |||
++(objPtr)->refCount | ++(objPtr)->refCount | |||
/* | /* | |||
* Use empty if ; else to handle use in unbraced outer if/else conditio | * Use do/while0 idiom for optimum correctness without compiler warning | |||
ns | s | |||
* http://c2.com/cgi/wiki?TrivialDoWhileLoop | ||||
*/ | */ | |||
# define Tcl_DecrRefCount(objPtr) \ | # define Tcl_DecrRefCount(objPtr) \ | |||
if (--(objPtr)->refCount > 0) ; else TclFreeObj(objPtr) | do { if (--(objPtr)->refCount <= 0) TclFreeObj(objPtr); } while(0) | |||
# define Tcl_IsShared(objPtr) \ | # define Tcl_IsShared(objPtr) \ | |||
((objPtr)->refCount > 1) | ((objPtr)->refCount > 1) | |||
#endif | #endif | |||
/* | /* | |||
* Macros and definitions that help to debug the use of Tcl objects. | * Macros and definitions that help to debug the use of Tcl objects. | |||
* When TCL_MEM_DEBUG is defined, the Tcl_New declarations are | * When TCL_MEM_DEBUG is defined, the Tcl_New declarations are | |||
* overridden to call debugging versions of the object creation procedures. | * overridden to call debugging versions of the object creation procedures. | |||
*/ | */ | |||
End of changes. 5 change blocks. | ||||
6 lines changed or deleted | 7 lines changed or added | |||