Tem um mês mais ou menos comecei a usar para ver diferenças menos óbvias de sintaxe entre diferentes compiladores de uma mesma linguagem (sou velho, programo em Delphi) e algumas coisas no Lazarus são diferentes. Acaba ajudando um bocado.

Por exemplo, tenho um conjunto de componentes TEdit (para entrada de texto) e quero que no evento onExit deles seja executada uma função que muda a cor de fundo do componente se ele estiver vazio. Escreveria a rotina em Delphi dessa forma:

procedure TForm1.varreEdits(Sender: TForm);
var
  C: Smallint;
begin
  with Sender do
  begin
    for C := 0 to ComponentCount - 1 do
    begin
      if (Components[C].ClassType = TEdit) then
      begin
        TEdit(Components[C]).OnExit := pintaFundo;
      end
    end;
  end;
end;

No envento ou Show do Formulário eu exacutaria essa rotina:

procedure TForm1.FormShow(Sender: TObject);
begin
  varreEdits(Self);
end;

E a rotina de "pintaFundo" ficaria:

procedure TForm1.pintaFundo(Sender: TObject);
begin
  if (TEdit(Sender).Text = '') then
    TEdit(Sender).Color := clRed
  else
    TEdit(Sender).Color := clBtnFace;
end;

No Lazarus eu teria que fazer a rotina "varreEdits" ligeiramente diferente:

procedure TForm1.varreEdits(Sender: TForm);
var
  C: Smallint;
begin
  with Sender do
  begin
    for C := 0 to ComponentCount - 1 do
    begin
      if (Components[C] is TEdit) then
      begin
        TEdit(Components[C]).OnExit := @pintaFundo;
      end
    end;
  end;
end;

E a rotina "pintaFundo" também ficaria ligeiramente diferente:

procedure TForm1.pintaFundo(Sender: TObject);
begin
  if (Sender is TEdit) and (TEdit(Sender).Text = '') then
    TEdit(Sender).Color := clRed
  else
    TEdit(Sender).Color := clDefault;
end;

A única coisa que não mudaria seria a rotina do "onShow" do formulário, que chama a "varreEdits". Quebra um galhão quando você tenta rodar um código, no caso ObjectPascal do Lazarus para o Delphi (ObjectPascal renomeado), e está tudo como deve mas não funciona por conta dessas diferenças "arcanas" entre os dois dialetos.