Compilerfehler C0454

Meldung: Es ist nicht möglich, eine Zuweisung mit dem Operator __NEW in einem anderen Ausdruck zu verwenden. Verwenden Sie stattdessen die Pointer-Variable.

Mögliche Fehlerursache: Eine Zuweisung mit dem Operator __NEW wird direkt in einer Prüfung gegen 0 verwendet.

Fehlerbehebung: Verwenden Sie die Zuweisung als eigenständige Anweisung. Verwenden Sie in der Bedingung der IF-Anweisung die POINTER-Variable.

Beispiel für den Fehler:

PROGRAM MAIN
VAR
      pSt: POINTER TO ST_Data;
END_VAR

IF (pSt := __NEW(ST_Data)) = 0 THEN
      RETURN;
END_IF

Meldung:

C0454: Es ist nicht möglich, eine Zuweisung mit dem Operator __NEW in einem anderen Ausdruck zu verwenden. Verwenden Sie stattdessen die Pointer-Variable.

Beispiel für eine Fehlerbehebung

PROGRAM MAINVAR
      pSt: POINTER TO ST_Data;
END_VAR

pSt := __NEW(ST_Data);
IF pSt = 0 THEN
      RETURN;
END_IF