Compilerfehler C0380
Meldung: Die Operatoren LOWER_BOUND und UPPER_BOUND werden nur für Arrays mit variabler Länge unterstützt
Mögliche Fehlerursache: Einer der beiden Operatoren LOWER_BOUND oder UPPER_BOUND wird nicht für ein Array mit variabler Länge verwendet.
Fehlerbehebung: Verwenden Sie die Operatoren LOWER_BOUND oder UPPER_BOUND nur für ein Array mit variabler Länge.
Tipp
Ab Compilerversion 3.5.14.0 können die Operatoren auch für statische Arrays verwendet werden. Somit tritt der Fehler C0380 nur bei früheren Compilerversionen auf.
Beispiel 473. Beispiel für den Fehler:
FUNCTION_BLOCK POU VAR_IN_OUT arrin : ARRAY [*] OF INT; END_VAR VAR arrtest : ARRAY [0..5] OF INT; test1: DINT; test2: DINT; END_VAR test1 := UPPER_BOUND(arrin, 1); test2 := UPPER_BOUND(arrtest, 1);
Meldung:
C0380: Die Operatoren LOWER_BOUND und UPPER_BOUND werden nur für Arrays mit variabler Länge unterstützt