Looking closer at this one: just reinserting the old code for
ScalarArrayOpExpr isn't great. Assuming the SAOP is okay,
we'll fall through and call check_functions_in_node, which will
check the operator's strictness a second time. That doesn't
result in any wrong answer, but it wastes a syscache lookup.
I fixed that by converting the if-test series into an else-if
chain, which arguably it should have been from the beginning.
(Maybe the compiler can see that the if-conditions are mutually
exclusive, but why make it deduce that?)
Pushed with that correction.
regards, tom lane