$title 'Tests for $IF empty' (IFSTAT8,SEQ=953) $ontext This tests $if EMPTY. Contributor: Lutz Westermann, March 2024 $offtext $eval test 0 * Simple empty $if empty $eval test %test%+1 $ifE %test%<>1 $abort %test%<>1 * Simple not empty $if not empty $eval test %test%+1 $ifE %test%<>1 $abort %test%<>1 * Simple non-empty $if empty anything $eval test %test%+1 $ifE %test%<>1 $abort %test%<>1 * Simple not non-empty $if not empty anything $eval test %test%+1 $ifE %test%<>2 $abort %test%<>2 * Empty with quotes -> not empty $if empty '' $eval test %test%+1 $ifE %test%<>2 $abort %test%<>2 * Empty with other quotes -> not empty $if empty "" $eval test %test%+1 $ifE %test%<>2 $abort %test%<>2 * Quoted quotes are not empty $if empty '""' $eval test %test%+1 $ifE %test%<>2 $abort %test%<>2 * Even %system.tab% is not empty $if empty %system.tab% $eval test %test%+1 $ifE %test%<>2 $abort %test%<>2 * After empty, there is just a string, nothing get evaluated $if empty $eval test %test%+1 $eval test %test%+1 $ifE %test%<>2 $abort %test%<>2 * Do some shift $onEchoV > inc.gms $eval locTest %test% $label start $eval locTest %locTest%+1 $shift $if not empty %1 $goTo start $setGlobal batchedTest %locTest% $offEcho $batInclude inc.gms 1 2 3 $ifE %batchedTest%<>5 $abort %batchedTest%<>5