Bzgl. STATIC muss man allerdings den Kontext sehen.

Wenn ein Prozedur mit Return verlassen wird, bleibt eine STATIC-Variable mit ihrem Inhalt bestehen.
Wenn das Programm mit Return (oder automatisch am Ende) mit LR *on verlassen wird, wird das Programm aus der ACTGRP deaktiviert und entfernt.
Beim nächsten CALL wird das Programm neu initialisiert und somit auch alle Static's in allen Modulen die vorkommen.
Auch die *INZSR-Subroutine (falls vorhanden) wird erneut aufgerufen.
An diesem Verhalten hat sich nichts geändert.

Die Doku geht da etwas schwammig damit um, da sie sich nur auf Module bezieht.
Aber ein Modul muss die Startprozedur enthalten, die für das LR zum Beenden entscheidend ist.

LR = *ON initialisiert keine Variablen sondern entscheidet beim Return, ob Dateien geschlossen und Locks aufgehoben werden.