xof@xxxxxxxxxxxx wrote:bryn@xxxxxxxxxxxx wrote: Yes. This isn't a bug… Database objects (such as tables and columns) are left as identifiers until they are executed, because that is the point at which a plan for those statements is created. The other components of PL/pgSQL are translated to internal form (and thus checked for existence) at compile time. My example was carefully contrived to test what you said—which is what I had earlier understood. My deliberate typo thus:
(surely) has nothing to do with possible database objects. The context is a straight PL/pgSQL assignment statement (with no scalar subquery in sight). It's this that surprises me. And it's this, and only this, that I'm asking about: might _just_ this be a fixable bug? |