Does dmd have SSE intrinsics?

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Tue Sep 22 17:01:03 PDT 2009


Christopher Wright wrote:
> Jeremie Pelletier wrote:
>> Why would you declare void variables? The point of declaring typed 
>> variables is to know what kind of storage to use, void means no 
>> storage at all. The only time I use void in variable types is for 
>> void* and void[] (which really is just a void* with a length).
>>
>> In fact, every single scope has an infinity of void variables, you 
>> just don't need to explicitly declare them :)
>>
>> 'void foo;' is the same semantically as ''.
> 
> It simplifies generic code a fair bit. Let's say you want to intercept a 
> method call transparently -- maybe wrap it in a database transaction, 
> for instance. I do similar things in dmocks.
> 
> Anyway, you need to store the return value. You could write:
> 
> ReturnType!(func) func(ParameterTupleOf!(func) params)
> {
>     auto result = innerObj.func(params);
>     // do something interesting
>     return result;
> }
> 
> Except then you get the error: voids have no value
> 
> So instead you need to do some amount of special casing, perhaps quite a 
> lot if you have to do something with the function result.

Yah, but inside "do something interesting" you need to do special casing 
anyway.

Andrei



More information about the Digitalmars-d mailing list