Rileva l'accesso di un blocco funzione alle variabili globali mediante il metodo FB_Init. Il valore di questa variabile dipende dall'ordine delle inizializzazioni.
Giustificazione: A seconda della posizione della dichiarazione dell'istanza POU, si potrebbe accedere a una variabile non inizializzata se la regola viene violata.
Importanza: Alto
Esempio
VAR_GLOBAL g_xTest1 : BOOL; g_iTest3 : INT; END_VAR METHOD PUBLIC fb_init : BOOL VAR_INPUT bInitRetains : BOOL; // If TRUE, the retain variables are initialized (warm start / cold start) bInCopyCode : BOOL; // If TRUE, the instance afterwards gets moved into the copy code (online change) END_VAR g_xTest1 := NOT g_xTest1; // SA0015 g_iTest3 := g_iTest3 + INT#1; // SA0015 --> SA0015: FB_Init method of function block 'POU' accesses global data