Dies ist korrekt !
Der Variablen wird intern ein Systemzeiger auf das Programmobjekt zugewiesen. Erst wenn tatsächlich ein CALL auf die Variable durchgeführt wird, prüft RPG ob sich der Inhalt zum letzten CALL geändert hat. Ist dies der Fall wird der Systemzeiger erneuert.
Nur durch das Init der Variablen wird der interne Zeiger nicht zerstört.

Dein Weg eines Dummy-Calls kann durchaus so bleiben. Das Programm braucht nichts zu tun ausser einem RETRN.

Der Zeiger wird auch zurückgesetzt per "FREE MYVAR" (CANCEL gilt für COBOL).