> > with 'size_t' or 'uintptr_t' as appropriate, but other > type replacements are dubious and should generally be omitted. > I don't think so. Windows and Linux does not follow the same 64 bits rules (LLP64 vs LP64). > For example: > > - int i = 0, aligned = (intptr_t) ABLOCKS_BUSY (abase); > + int i = 0; > + intptr_t aligned = (intptr_t) ABLOCKS_BUSY (abase); > Here, the value of 'aligned' is either 0 or 1, so there's > no need to change its type. > It is kinf of strange to cast to intptr_t to store the result in a variable of different type ? > The changes to src/m/amdx86-64.h would break GNU/Linux and > need to be backed out and redone. > This mishandles Emacs integers outside the signed 32-bit range: > > -#define XFASTINT(a) ((a) + 0) > +#define XFASTINT(a) ((int)((a) + 0)) > I'll look into these ones. -- Fabrice