Fix a thinko in my patch of a couple months ago for bug #3116: it did the
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 1 May 2007 18:54:24 +0000 (18:54 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 1 May 2007 18:54:24 +0000 (18:54 +0000)
commit740f2fc42d708d410ad1db5f78ec8555aa3f1bdd
treeb6b896ef97469d91509f8bef8f6b659e5c3a45a5
parent26d8da80a7e1b002b8bcb73ce4e698e54ad22d7b
Fix a thinko in my patch of a couple months ago for bug #3116: it did the
wrong thing when inlining polymorphic SQL functions, because it was using the
function's declared return type where it should have used the actual result
type of the current call.  In 8.1 and 8.2 this causes obvious failures even if
you don't have assertions turned on; in 8.0 and 7.4 it would only be a problem
if the inlined expression were used as an input to a function that did
run-time type determination on its inputs.  Add a regression test, since this
is evidently an under-tested area.
src/backend/optimizer/util/clauses.c
src/test/regress/expected/polymorphism.out
src/test/regress/sql/polymorphism.sql