D dropped in favour of C# for PSP emulator

SomeDude lovelydear at mailmetrash.com
Sat May 12 00:26:00 PDT 2012


On Saturday, 12 May 2012 at 00:12:07 UTC, Timon Gehr wrote:
> On 05/12/2012 01:47 AM, Ali Çehreli wrote:
>> On 05/11/2012 02:45 PM, Timon Gehr wrote:
>>> On 05/11/2012 10:10 PM, Nick Sabalausky wrote:
>>>> I use 'in' all the time, and I never even think about it 
>>>> returning a
>>>> pointer. I just do:
>>>>
>>>> if(foo in bar)
>>>>
>>>> And it just works. So I don't see a particularly big problem 
>>>> here.
>>>>
>>>>
>>>
>>> Try this:
>>>
>>> bool fun(){ return foo in bar; }
>>
>> Isn't that an inconsistency in the language then? Are pointer 
>> values
>> implicitly convertible to bool or not?
>>
>> Ali
>
> if(condition) { ... }
>
> is equivalent to
>
> if(cast(bool)condition) { ... }
>
> i.e. this conversion is 'explicit'.

I'm not sure what you're talking about, there is no implicit 
conversion to bool.
dmd returns:

  bug.d(6): Error: cannot implicitly convert expression (foo in 
bar) of type int* to bool

With the cast(bool), everything works fine.


More information about the Digitalmars-d mailing list