Global vars in pou

This test case it part of the test suite proposed for new devices.

Test case ID: R0003
Language: ST

Code:
tests2/t0003.st
PROGRAM T0003
    VAR_GLOBAL    
        GL1T0003 : INT := 13;    
    END_VAR
    VAR   
        X : INT := 17;    
        f : FB1_T0003; 
    END_VAR
    f(IN1 := X);
    X := f.Z;
    _GEB_ASSERT_(GL1T0003 = 14);
    _GEB_ASSERT_(X = 31);
END_PROGRAM

(* increments global var and returns that value plus the input *)
FUNCTION_BLOCK FB1_T0003
    VAR_EXTERNAL 
    GL1T0003 : INT; 
    END_VAR
    VAR_INPUT 
    IN1 : INT; 
    END_VAR
    VAR_OUTPUT 
    Z : INT; 
    END_VAR
    
    GL1T0003 := GL1T0003 + 1;
    Z := GL1T0003 + IN1;
    
END_FUNCTION_BLOCK