Skip to main content

Avertissement du compilateur C0542

Message: L'héritage n'est pas prévu pour le type de données "UNION" <nom du type de données>.

Cause possible de l'erreur: Un type de données structuré (DUT) est dérivé d'un UNION en prolongeant avec EXTENDS, ou un UNION est dérivé d'un DUT. Ce type de dérivation n'est pas autorisé. Cependant, pour des raisons de compatibilité, seul un avertissement est émis.

Exemple 490. Exemple d'erreur :
TYPE U_StringExt EXTENDS U_StringBase :
UNION
    str10 : STRING(10);
END_UNION
END_TYPE
TYPE U_StringBase :
UNION
    str20 : STRING(20);
END_UNION
END_TYPE
PROGRAM PLC_PRG
VAR
    uStringExt : U_StringExt;
END_VAR

uStringExt.str20 := 'a234567890b234567890'; -> C0542