Bonjour,
Je suis sur le tout nouveau XE5 et j'ai des soucis de compatibilité de type.
Une classe surcharge le TDataset en définissant la procédure GetFieldData mais en utilisant un type "renommé".
Dans les anciennes versions de Delphi, ça passait sans problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 TLeType = TValueBuffer; function GetFieldData(Field: TField; Buffer: TLeType): Boolean; override;
Aujourd'hui, XE5 râle :
Comme j'ai pas trop envie de toucher le source des composants tiers, est-ce qu'il y a une solution pour lui dire de réagir comme avant et de ne pas me casser les pieds avec ça vu que le type est le même ?[dcc32 Erreur] kbmMemTable.pas(3246): E2037 La déclaration de 'GetFieldData' diffère de la déclaration précédente
Papy !
arf ... Faut que je change de lunettes .... C'est pas un problème de type mais un problème de var.
function GetFieldData(Field: TField; Buffer: TLeType): Boolean; override;
était compatible avec
function GetFieldData(Field: TField; var Buffer: TValueBuffer): Boolean; overload; virtual;
Mais aujourd'hui, si je ne précise pas le var, ça ne passe plus.
Partager