Version 3 of Resize of the mp_digit type

Updated 2009-11-16 19:01:18 by dgp

In Tcl releases 8.5.0 through 8.5.7, the public header file tcl.h contains the typedef:

typedef unsigned long mp_digit;

Starting in Tcl 8.5.8, this is changed to:

typedef unsigned int mp_digit;

The purpose of this page is to discuss what incompatibilities this may introduce for C code that uses the Tcl public interface, and how to manage them.


First, note that on many (32-bit) systems, long and int are just two names for the same thing. If your C code is only ever compiled on such systems, the change is not really a change at all, and you have no compatibility issues to worry about.

For C code that does get compiled for L64 systems, read on...