> x...@thebuild.com wrote: > >> b...@yugabyte.com wrote: >> >> Is this expected? > > 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: >> change "v_message" in "z := v_message; return next;" to "q_message" (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?