wine/dlls wininet/wininet.spec uxtheme/uxtheme ...
Francois Gouget
fgouget at free.fr
Mon Sep 12 12:53:27 CDT 2005
On Mon, 12 Sep 2005, Alexandre Julliard wrote:
> Francois Gouget <fgouget at free.fr> writes:
>
>> That's from memory so it should be checked, but I believe winapi_check
>> had a hack to check consistency between the spec file and the function
>> prototypes in the C files. This patch likely breaks that hack, but more
>> importantly winapi_check is going to think that the argument should be a
>> double now :-(
>>
>> A longlong would be nice.
>
> winapi_check can be taught that a long long is specified as 'double'
> too. It doesn't really make sense to add a new type for the sole
> purpose of checking that the new type is used properly...
Before a 64bit integer was declared as 'long long'. This means both of
these prototypes would be considered to match reset_int64(long long):
WINAPI void reset_int64(INT v1, INT v2);
WINAPI void reset_int64(LONGLONG v);
And indeed there were some errors. Now it means winapi_check will think
the following is a correct prototype:
WINAPI void reset_int64(DOUBLE v);
Might be unlikely but since the previous type of error actually happened
I think it is still in the realm of the possible. That's why a longlong
type would be nice. Then we'd have the following types:
* word any 16 bit integer (for 16 bit APIs)
* long any 32 bit integer (or less in 32bit APIs because of padding)
* longlong any 64 bit integer (signed, unsigned, etc)
* double floating point value
* segptr segmented pointers (for 16 bit APIs)
* ptr 32bit pointer
* str 32bit pointer to an Ansi string
* wstr 32bit pointer to a Unicode string
Actually I guess this little review raises some questions:
* Do we need an integer type which is 32bit on a 32bit platform and
64bit on a 64bit platform?
* Do we need to worry about 64bit pointers? I guess ptr, str and wstr
will automatically be interpreted as 64bit pointers on a 64bit platform?
* Can we have 32bit floating point values, i.e. floats? Are these
declared as 'long'?
--
Francois Gouget fgouget at free.fr http://fgouget.free.fr/
$live{free} || die "";
More information about the wine-devel
mailing list