2011/4/22 Martin Preuss <[email protected]>:
> Hi,
>
> On Freitag 22 April 2011, Ludovic Rousseau wrote:
> [...]
>> I guess you are not using the correct definition for DWORD. Mac OS X
>> does not use "unsigned long" but "uint32_t"
> [...]
>
> Even though I understand your rationale I wouldn't say "uint32_t" is an
> incorrect translation for DWORD, since they are both supposed to be 32 bit
> wide...

I know.

> I would rather state that using "unsigned long" (as pcsclite does) is not
> quite the correct translation for DWORD, at least on other-than-32-bit
> machines...

Windows always defines DWORD as "unsigned long" for 32 and 64-bits
CPU. It does work because Windows uses the LLP data model [1] and a
long is always 32 bits.
Unix uses the LP data model. So a long is 64 bits on a 64-bits CPU.

For historical reasons DWORD was defined as "unsigned long" in pcsc-lite.

Changing the DWORD definition in pcsc-lite would break all the 64-bits
systems before all components are rebuilt. It is a very high cost for
nearly no gain. I will not do it.

Bye,

[1] http://en.wikipedia.org/wiki/64-bit#Specific_C-language_data_models

-- 
 Dr. Ludovic Rousseau

_______________________________________________
Muscle mailing list
[email protected]
http://lists.drizzle.com/mailman/listinfo/muscle

Reply via email to