Detect the bug in the following code

w0rp via Digitalmars-d digitalmars-d at puremagic.com
Wed Apr 15 11:25:32 PDT 2015


On Wednesday, 15 April 2015 at 15:17:32 UTC, Steven Schveighoffer 
wrote:
> On 4/15/15 10:44 AM, Idan Arye wrote:
>> import std.stdio;
>>
>> struct Foo {
>>     bool registered = false;
>>
>>     void register(int x) {
>>         writeln("Registering ", x);
>>         register = true;
>>     }
>> }
>>
>> void main() {
>>     Foo foo;
>>     foo.register(10);
>> }
>
> Easy, the bug is in DMD improperly accepting property 
> assignment without @property annotation :P
>
> -Steve

Yep. Push patches for DIP23. Get it in the compiler already. Make 
only x.foo legal without @property.


More information about the Digitalmars-d mailing list