Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#14

AW: unverständlicher DCC-Fehler E2506

  Alt 8. Jan 2011, 17:25
Ups, da hatte ich was falsch verstanden.

OK, so wie es aussieht, hat Emba mal wieder Mist gebaut, welcher sich auch schon in Delphi 2010 nachvollziehen läßt.

Irgendwie wird bei direkten Angaben von Werten immer nur das zuerst deklarierte Property erkannt.
Delphi-Quellcode:
var MyArr: TAssocArray<String>;

MyArr['123'] := ...;
Nimmt man Variablen, dann klappt es.
Delphi-Quellcode:
var MyArr: TAssocArray<String>;
  S: String;
S := '123';
MyArr[S] := ...;
Auch sowas wie MyArr[String('123')] hilft nix.


Meine einzig mögliche Antwort ist aktuell also:
Toll gemacht Emba ... wieder was, welches nicht mehr funktioniert.

Die einzige Lösung wäre, wenn man statt der überladenen Property nun nur noch ein Property nutzt, welches als Parameter einen Variant besitzt und man dann intern die entsprechenden Varianten Anhand des Variant-Inhalts ausführt.
Oder man mißhandelt wieder mal die Record-Operatoren und bastelt sich einen gemischten Parameter-Typen.
Allerdings sind beide Varianten zwar möglich, aber sie sind keine "optimale" Lösung.

Schön wäre es, wenn Embarcadero dieses reparieren würde.
(aber aus Erfahrung passiert sowas eher garnicht oder man muß sich die Bugfixes mit der nächsten Delphi-Version teuer erkaufen)
$2B or not $2B

Geändert von himitsu ( 8. Jan 2011 um 17:28 Uhr)
  Mit Zitat antworten Zitat