When I run the code below in a 800 line long script I get the following results
- First MDL displays TRUE, displaying the before while expression
- 2nd MDL displays TRUE, displaying the same while expression directly
Yet the while is skipped. so 3-rd MDL not executed
- 4-th, 5-th MDL display True, displaying the before and after while expressions
While debugging, the var list gives:
0: WHILEAFTERVAL=TRUE
0: WHILEBEFOREVAL=TRUE
0: I=0
0: NFILES=10
0: WAITBREAK=0
Yet while loop skipped. Also tried a simple expression equivalent while loop using the beforevalue, since the MS reference does not mention complex expressions in whiles, same result.
Code: Select all
let>whileBeforeVal={(%i%<%nFiles%) AND (%waitBreak%=0)}
mdl>whileBeforeVal
mdl>{(%i%<%nFiles%) AND (%waitBreak%=0)}
while>{(%i%<%nFiles%) AND (%waitBreak%=0)}
MDL>OK am within while
// long code deleted
EndWhile
let>whileAfterVal={(%i%<%nFiles%) AND (%waitBreak%=0)}
mdl>whileBeforeVal
mdl>whileBeforeVal