[D3D9] Remove const qualifier on state_test data.

Ivan Gyurdiev ivg231 at gmail.com
Fri Sep 29 21:42:02 CDT 2006


Michael Stefaniuc wrote:
> Ivan Gyurdiev wrote:
>   
>> Type: Cleanup
>>
>> Why:
>> The const qualifier is unnecessarily restrictive.
>> I intend to allocate and free such data on the heap in a future patch.
>> Instead, const should be primarily used on function parameters.
>>     
> Question: do you realy have to use void pointers?
Yes.

>  Void pointers are
> compatible with every pointer type and thus will disable the type
> checking of the compiler.
This is intentional - it's a form of polymorphism.
The data stored can be of many different types.
Each test knows what type of data it is using.

>  Also you do not need to to cast a rvalue to
> void * if the type of the lvalue is void *.
>   
Yes, you do...the type of the lvalue is void*, while the type of the 
rvalue is const void*. Not casting produces a warning (correctly). 
Casting replaces the compile-time guarantee that the value will be kept 
constant by runtime contract [ because both const and non-const rvalue 
will be used in the future ].






More information about the wine-devel mailing list