C++ traps that D2 doesn't avoid yet?

Walter Bright newshound1 at digitalmars.com
Thu Nov 6 14:37:29 PST 2008


Jarrett Billingsley wrote:
> On Thu, Nov 6, 2008 at 5:07 PM, Walter Bright
> <newshound1 at digitalmars.com> wrote:
>> BCS wrote:
>>> Reply to Walter,
>>>
>>>> Steven Schveighoffer wrote:
>>>>
>>>>> Even experienced developers fall into some of these traps.  I know I
>>>>> occasionally fell into this trap:
>>>>>
>>>>> if(x);
>>>>> x->doSomething();
>>>>> But no more with D, because it's not allowed.  Those kinds of things
>>>>> can be easily prevented, and are common mistakes by all programmers.
>>>>>
>>>> Here's another fun one:
>>>>
>>>> printf("%d\n", 8l);
>>>>
>>>> What does that print?
>>>>
>>> 8
>> If I hadn't said it was a trap, I bet you'd have said "81".
> 
> I wouldn't've, because I use a font that actually distinguishes things
> 1, I, l, and | properly.  <_<

0 and O is another fun one. In any case, 8l is legal C, but illegal D.



More information about the Digitalmars-d mailing list