I wrote:
> Martijn van Oosterhout <kleptog@svana.org> writes:
>> In this particular case the syntax makes it unclear that the substring
>> is the problem. Perhaps here the solution would be to put a cast in the
>> grammer, like so:
> ...
> But I think we could do this in substr_list in the case where we have
> just "a_expr substr_for", because there are no variants of that where
> the FOR expression is supposed to be string.
I've applied this patch as far back as 8.0. Not sure whether there's
a need to back-patch further.
regards, tom lane