aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor/nodeRecursiveunion.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2020-08-03 09:46:12 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2020-08-03 09:46:12 -0400
commit44cd434ec4a70d2dfbc460492fc0574d08440250 (patch)
tree180986e2085b5692bee288bd59378e205b2900aa /src/backend/executor/nodeRecursiveunion.c
parentf5293fb09e7346bb663f2f5c63081e8aabe61a8e (diff)
downloadpostgresql-44cd434ec4a70d2dfbc460492fc0574d08440250.tar.gz
postgresql-44cd434ec4a70d2dfbc460492fc0574d08440250.zip
Fix behavior of ecpg's "EXEC SQL elif name".
This ought to work much like C's "#elif defined(name)"; but the code implemented it in a way equivalent to endif followed by ifdef, so that it didn't matter whether any previous branch of the IF construct had succeeded. Fix that; add some test cases covering elif and nested IFs; and improve the documentation, which also seemed a bit confused. AFAICS the code has been like this since the feature was added in 1999 (commit b57b0e044). So while it's surely wrong, there might be code out there relying on the current behavior. Hence, don't back-patch into stable branches. It seems all right to fix it in v13 though. Per report from Ashutosh Sharma. Reviewed by Ashutosh Sharma and Michael Meskes. Discussion: https://postgr.es/m/CAE9k0P=dQk9X0cU2tN49S7a9tv733-e1pVdpB1P-pWJ5PdTktg@mail.gmail.com
Diffstat (limited to 'src/backend/executor/nodeRecursiveunion.c')
0 files changed, 0 insertions, 0 deletions