Re: [Firebird-devel] Unsigned integer TraNumber problem

2014-08-27 Thread Dmitry Yemanov
26.08.2014 00:29, Nikolay Samofatov wrote: > > When you converted transaction number from SLONG to TraNumber (ULONG) you > didn't take into account > that LCK_query_data returns SLONG and uses signed integers internally. While there might be different solutions to this particular problem, I'm wo

Re: [Firebird-devel] Unsigned integer TraNumber problem

2014-08-27 Thread Dmitry Yemanov
26.08.2014 21:52, Jim Starkey wrote: > As the original author of SLONG, ULONG, et al, might I suggest that you ditch > them all in favor of the standard and size explicit int64_t, int32_t, etc.? When it was discussed the last time, some compilers (was it some ancient MSVC version?) didn't suppo

Re: [Firebird-devel] Unsigned integer TraNumber problem

2014-08-27 Thread Nikolay Samofatov
Dmitry, AFAIK, since the only user of LCK_query_data with ordering clause is our transactions management code, the easiest way to fix this problem is to change lck_data to ULONG everywhere (and use static_assert to ensure that sizeof(TraNumber) == sizeof(ULONG) for the moment). IMO, 64-bitness