После смены математической внутрянки в версии 4.13.14, логические операторы больше не синонимы. 'or' не тождественно '|' и т.д.
Думаю and, or, xor стали сугубо битовыми операциями. И использовать их нужно если нужны именно операции с битами.
Логическое И and; &
Логическое ИЛИ or; |
Логическое исключающее ИЛИ xor; ^
С символом | всё работает нормально
$i="c"
IF($i="a" | $i="b" | $i="c" | $i="d")
print("Pass")
ELSE
print ("Error")
END_IF
18:08:19 Pass