Skip to main content

SA0034:割り当てが正しくない列挙型変数

列挙型変数に割り当てられた値を取得します。定義された列挙定数のみを列挙変数に割り当てることができます。

理由: 列挙型の変数には、意図した値のみが含まれている必要があります。そうでないと、この変数を使用するコードが正しく動作しない可能性があります。プラグマでは常に列挙型を使用することをお勧めします。 {attribute 'strict'}。その後、コンパイラは列挙コンポーネントが正しく使用されているかどうかをすでにチェックしています。

重要性:高い

46.
TYPE COLOR :
(
        Red := 0,
        Green,
        Yellow
);
END_TYPE
PROGRAM PLC_PRG
VAR
    eColor1: COLOR;
END_VAR
eColor1 := COLOR.Red;
eColor1 := 1;    // SA0034

での出力 メッセージ ビュー:

  • sa_icon_message.png SA0034: 'INT#1' の代わりに列挙値を使用します



詳細については、以下を参照してください。