[fpc-devel] A more fundamental problem Re: i36507

J. Gareth Moreton gareth at moreton-family.com
Fri Jan 3 10:54:24 CET 2020


P.S. The issue can be found here: 
https://bugs.freepascal.org/view.php?id=36507

On 03/01/2020 09:45, J. Gareth Moreton wrote:
> Hi everyone,
>
> So I reported this morning that Lazarus no longer builds as of 
> r43826.  Ondrej was quick to update the Lazarus sources to allow it to 
> build again and marking the issue as fixed, but the underlying 
> regression in the Free Pascal Compiler still exists.
>
> Basically, the compiler failed on constructs like this
>
>   with 
> InputHistories.HistoryLists.GetList('BuildExecBefore',true,rltCaseSensitive) 
> do begin
>     Assign(ExecuteBeforeCommandComboBox.Items);
>     Push(Options.ExecuteBefore.Command);
>   end;
>
> The fix was to replace it with the following 
> (ide/frames/compiler_compilation_options.pas - line 394):
>
>   HL := 
> InputHistories.HistoryLists.GetList('BuildExecBefore',true,rltCaseSensitive);
>   HL.Assign(ExecuteBeforeCommandComboBox.Items);
>   HL.Push(Options.ExecuteBefore.Command);
>
> Given the "illegal qualifier" errors that appeared, I'm guessing the 
> issue is that "Options" is also a property of the THistoryList class 
> as well as a local variable.  Technically speaking though, this is a 
> regression unless it's to be documented (and hence break backward 
> compatibility) that if you have a property and a local variable of the 
> same name, the property takes precedence.
>
> Gareth aka. Kit
>
> _______________________________________________
> fpc-devel maillist  -  fpc-devel at lists.freepascal.org
> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
>


More information about the fpc-devel mailing list