Compilerfehler C0186
Meldung: Eine Schnittstelle, die ein Rückgabewert eines Aufrufs ist, kann nicht verglichen werden. Weisen Sie diese zuerst einer Variablen zu.
Mögliche Fehlerursache: Eine Vergleichsoperation wird auf eine Schnittstelle angewendet, die von einer Funktion zurückgegeben wird.
Fehlerbehebung: Weisen Sie das Ergebnis des Funktionsaufrufes zuerst einer Variablen zu und vergleichen Sie dann den Wert der Variablen. Dadurch wird auch die Anzahl der nötigen Funktionsaufrufe reduziert.
Beispiel 425. Beispiel für den Fehler:
INTERFACE MyInterface
FUNCTION GetInterface : MyInterface
PROGRAM PLC_PRG
IF GetInterface() <> 0 THEN
// ...
END_IF
Meldung:
C0186: Eine Schnittstelle, die ein Rückgabewert eines Aufrufs ist, kann nicht verglichen werden. Weisen Sie diese zuerst einer Variablen zu.
Fehlerbehebung:
PROGRAM PLC_PRG
VAR_TEMP
tempInterface : MyInterface;
END_VAR
tempInterface := GetInterface();
IF tempInterface <> 0 THEN
// ...
END_IF