Neil Conway <neilc@samurai.com> writes:
> ... Looking for two periods is pretty ugly. I was thinking we
> might be able to look at the for loop variable: if it was previously
> undeclared, it must be an integer for loop. If it was declared but is
> not of a row or record type, it must also be an integer for loop.
Congratulations, you just reinvented the scheme we used before 8.0.
It's *not* an improvement. The dot-dot business is better. At least,
I'm not going to hold still for reverting this logic when there have
so far been zero field complaints about it, and there were plenty of
complaints about the test based on variable datatype.
> Yes, that's a good point. I'll change the patch to just elide the
> previous entry from the stack of callbacks, which is going to be
> plpgsql_compile_error_callback (unfortunately we can't actually verify
> that, AFAICS, since that callback is private to pl_comp.c)
IMHO verifying that is well worth an extern.
regards, tom lane