Skip to main content

Avertissement du compilateur C0269

Message: L'instance vers laquelle <pointer déréferencement> pointe sera réinitialisée pour les appels de fonctions virtuels. Assurez-vous que <pointer déréferencement> de <base FB>.

Cause d'erreur possible: L'adresse d'un bloc fonctionnel dérivé est utilisée comme adresse du bloc fonctionnel de base.

Exemple 463. Exemple d'avertissement
FUNCTION_BLOCK FBBase
...

FUNCTION_BLOCK FBDerived EXTENDS FBBase
...

FUNCTION_BLOCK FB EXTENDS Base_FB
...
PROGRAM PLC_PRG
VAR
      pinst : POINTER TO FBBase;
      inst2_2 : FBDerived;
END_VAR
pinst := ADR(inst2_2);
pinst^ := inst2_2;

Le déréférencement du pointeur génère l'avertissement suivant.

Message :

C0269: L'instance vers laquelle pointe pinst^ sera réinitialisée pour les appels de fonctions virtuels. Assurez-vous que pinst^ ne pointe pas vers un type dérivé



: