Einzelnen Beitrag anzeigen

BigAl

Registriert seit: 6. Sep 2008
Ort: Kehl
504 Beiträge
 
Delphi 12 Athens
 
#7

AW: Unverständliche Fehlermeldung E2010 in Verbindung mit Varianten

  Alt 13. Mär 2023, 11:00
Unabhängig von den Workarounds würde ich den Testcode in QP melden. Das sollen sich die Compiler-Freaks mal ansehen.
Werde ich tun. Du hast mich aber auf eine Idee für einen Workaround gebracht der funktioniert:
Delphi-Quellcode:
procedure TMyClass.DoSomething;

  procedure PerformRec(ARec: TRec);
  begin
  end;

  procedure Blub;
  begin
    for var Rec in FRecs do
      PerformRec(Rec);
  end;

var
  V: Variant;
begin
  V.A.B := 5;
  Blub;
end;
Ist mir lieber als den Parameter als Pointer zu übergeben...

Ich brauche das "PerformRec" genau an dieser Stelle. Es handelt sich dabei um eine rekursive Prozedur die eine Baumstruktur verarbeitet. Diese sieht etwa so aus:
Delphi-Quellcode:
  procedure ShowPages(APage: TPage; var Line: Integer);
  begin
    { ... }
    Inc(Line);
    for var Page in APage.SubPages do
      ShowPages(Page, Line);
  end;
Man sollte nie so viel zu tun haben, dass man zum Nachdenken keine Zeit mehr hat. (G.C. Lichtenberg)
  Mit Zitat antworten Zitat