Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.027 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

AW: ICH habe den ältesten OOP-Bug entdeckt :firejump: , leider.

  Alt 6. Nov 2017, 16:16
Der Bug ist, dass die Property Deklaration mit index aber ohne explizite Angabe von Getter und/oder Setter möglich ist - der Compiler müsste das verhindern, und/oder nicht einfach einen Getter/Setter mit falscher Signatur aufrufen.

Denn das knallt nicht nur beim Lesen aus der dfm sondern auch beim manuellen Setzen:

Delphi-Quellcode:
var
  s: TSecondComp;
begin
  s := TSecondComp.Create;
  s.TestProp := ''; // peng!
Delphi-Quellcode:
Project1.dpr.44: s.TestProp := '';
0041D567 33C9 xor ecx,ecx
0041D569 BA01000000 mov edx,$00000001 // <- index
0041D56E A1A4584200 mov eax,[$004258a4]
0041D573 E86CD2FFFF call TFirstComp.SetTest
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat