Argument passing in HPM/CL

Proprietary details are deliberately omitted in this post to keep me (hopefully) clear of corporate code-of-conduct issues. Anyone who

In a PM/CL sequence, I'm calling a subroutine as per the following snippet:
CALL WAIT_CHK (LIFT123.PV) -- A level PV
SUBROUTINE WAIT_CHK (level : IN NUMBER ) WAIT level < 20.0 SET LoLFlag = ON END WAIT_CHK
What is happening is the subroutine holds at the wait, but the value of level *continues to update*, despite the fact that it is passed in as an argument, and declared as type NUMBER. This behaviour was totally unexpected, and there is nothing in the standard platform documentation about it.
The program is considerably larger than shown, and displays other irregularities, so we'd like to know for sure whether the behaviour is to specification, and whether the situation is 'safe'. Don't suppose anyone can clarify..?
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.