diff options
| author | sebres <sebres@users.sourceforge.net> | 2018-12-13 07:32:55 (GMT) |
|---|---|---|
| committer | sebres <sebres@users.sourceforge.net> | 2018-12-13 07:32:55 (GMT) |
| commit | fe20a80acbe90619202eb293872df7047b3f74b4 (patch) | |
| tree | 6e00aea31ff2856a904e98d6c27b2368f4c4f06f | |
| parent | 535e528fce583c18b3b45c2daa0b2f11008ee81d (diff) | |
| download | tcl-fe20a80acbe90619202eb293872df7047b3f74b4.zip tcl-fe20a80acbe90619202eb293872df7047b3f74b4.tar.gz tcl-fe20a80acbe90619202eb293872df7047b3f74b4.tar.bz2 | |
restored inline of TclNewWideIntObjFromSize for 32-bit (avoids double invocation of TclStringFirst/TclStringLast in case of macro function).
| -rw-r--r-- | generic/tclInt.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/generic/tclInt.h b/generic/tclInt.h index 338ca3d..a9ede63 100644 --- a/generic/tclInt.h +++ b/generic/tclInt.h @@ -4909,7 +4909,9 @@ MODULE_SCOPE Tcl_PackageInitProc Procbodytest_SafeInit; #endif /* TCL_MEM_DEBUG */ #if (!defined(TCL_WIDE_INT_IS_LONG) || (LONG_MAX > UINT_MAX)) && (SIZE_MAX <= UINT_MAX) -# define TclNewWideIntObjFromSize(value) Tcl_NewWideIntObj(((Tcl_WideInt)((value)+1))-1) + static inline Tcl_Obj * TclNewWideIntObjFromSize(size_t value) { + return Tcl_NewWideIntObj(value != ((size_t)-1) ? (Tcl_WideInt)value : -1); + } #else # define TclNewWideIntObjFromSize Tcl_NewWideIntObj #endif |
