SA0044: Dichiarazioni con riferimento all'interfacciaPermalink

Rileva le dichiarazioni con interfacce di ‎REFERENCE TO‎ e le dichiarazioni di variabili di ‎VAR_IN_OUT‎ con interfacce (implementate implicitamente tramite ‎REFERENCE TO‎).

Giustificazione: Un tipo di interfaccia è sempre implicitamente un riferimento a un'istanza di un blocco funzione che implementa tale interfaccia. Un riferimento a un'interfaccia è quindi un riferimento a un riferimento e può dare luogo a comportamenti indesiderati.

Importanza: Alto

Esempio

‎ITF‎ è un'interfaccia definita nel progetto.

PROGRAM PLC_PRG
VAR
	inst:POU;
	itf_inst1 : ITF;
	itf_ref : REFERENCE TO ITF; // SA0044 
END_VAR FUNCTION_BLOCK POU
VAR_INPUT
	inst_itf2 : ITF;
END_VAR
VAR_OUTPUT
	inst_itf3 : ITF;
END_VAR
VAR_IN_OUT
	inst_itf4 : ITF;  	 	// SA0044
END_VAR

--> SA0044: Reference to interface 'itf_ref'
--> SA0044: Reference to interface 'itf4_ref'