[fpc-pascal] Re: Duplicate Identifier

Sven Barth pascaldragon at googlemail.com
Thu Mar 1 21:14:34 CET 2012


On 01.03.2012 16:34, Marcos Douglas wrote:
> On Thu, Mar 1, 2012 at 4:29 AM, leledumbo<leledumbo_cool at yahoo.co.id>  wrote:
>> That's different case IMHO (In My Humble Observation), I guess it's something
>> like this:
>>
>> {$mode objfpc}
>> type
>>   TTestClass = class
>>     FTile: Integer;
>>     property Tile: Integer read FTile write FTile;
>>     procedure Test;
>>   end;
>>
>> procedure TTestClass.Test;
>> var
>>   Tile: Integer;
>> begin
>> end;
>>
>> begin
>> end.
>>
>> In this case, the local variable has the same name as one of the class
>> properties. This does trigger the "duplicate identifier" error because both
>> have the same scope.
>
> Well, for me the local Tile variable should have "preference" because
> the scope is local, not "global for class".
> Would be equal the use of arguments, IMHO, where we can use an
> identifier that already exists in the class.

In mode Delphi this is true, but in non-Delphi modes it was decided that 
the above code is not allowed at all to avoid any disambiguities that 
might arise.

Regards,
Sven




More information about the fpc-pascal mailing list