Merlin Moncure <mmoncure@gmail.com> writes:
> There have been multiple complaints about this in the archives. In
> the old days, you would have to rewrite your query to use the 'select
> * from func()' form (which isn't always so easy) or use a subquery and
> the 'offset 0' hack. Running in to this problem has actually become
> more common as our type system has gotten fancier and plpgsql got the
> ability to be called with the column list, aka select func(), syntax.
> The community has had to endure multiple sanctimonious rants about
> this by yours truly. Unfortunately complaints are cheap relative to
> the hard work and consensus building it would require to fix this
> problem.
FWIW, the SQL-standard LATERAL construct would fix the problem
reasonably well, and that is on the roadmap already.
regards, tom lane