[Kde-bindings] 64bit integers in SMOKE

Arno Rehn arno at arnorehn.de
Sat May 1 09:13:04 UTC 2010


Hi,

Qt often makes use of qint64 types, which are guaranteed to be 64bit wide on 
every platform. Currently SMOKE doesn't provide a guaranteed 64bit field in 
the Smoke::StackItem union. This is especially a problem on Windows, because 
'long' is 32bit on Windows x86 and x86_64.

I'd like to change the s_long and s_ulong fields of Smoke::StackItem to be a 
guaranteed 64bit integer (using '__int64' with MSVC and 'long long' with every 
other compiler).

This shouldn't break BC: StackItem is at least 64 bit wide anyway because of 
the s_double field. However, it might break functionality, if a binding 
compiled against the 'old' smoke interprets only the first 32 bits of a 64bit 
number.

Alternatively, we could introduce a s_(u)longlong field, which would then hold 
64bit numbers.

Opinions?

-- 
Arno Rehn
arno at arnorehn.de



More information about the Kde-bindings mailing list