DMD can implicitly convert class pointer to the bool. Is it bug or terrible feature?

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Sun Nov 24 19:12:06 PST 2013


On 11/24/13 6:48 PM, ilya-stromberg wrote:
> On Sunday, 24 November 2013 at 23:31:38 UTC, Andrei Alexandrescu wrote:
>> On 11/24/13 11:17 AM, bearophile wrote:
>>> Walter Bright:
>>>
>>>> Shadowing globals is definitely a bad idea. Shadowing members, it's
>>>> debatable.
>>>
>>> So are you saying D here should give an error for the shadowing of the
>>> module-level x?
>>
>> I think he meant "shadowing locals". As I wrote in TDPL, it's a bad
>> idea to add a global somewhere and break a bunch of code that has
>> nothing to do with it.
>
> Yes, but D allows to use it. And in few cases global variable can be
> useful.
> For example, we can have thread-local variable for database connection
> that used almost everywhere.

I agree. What I'm saying is it's not good to make shadowing a global an 
error. It puts the onus in the wrong place.

Andrei



More information about the Digitalmars-d mailing list