Get rid of long-since-vestigial Iter node type, in favor of adding a

Tom Lane <tgl@sss.pgh.pa.us>

Commit: 3389a110d40a505951e7c7babdfb8681173bb2ca
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2002-05-12T23:43:04Z
Releases: 7.3.1
Get rid of long-since-vestigial Iter node type, in favor of adding a
returns-set boolean field in Func and Oper nodes.  This allows cleaner,
more reliable tests for expressions returning sets in the planner and
parser.  For example, a WHERE clause returning a set is now detected
and complained of in the parser, not only at runtime.

Files

PathChange+/−
src/backend/catalog/heap.c modified +9 −4
src/backend/commands/tablecmds.c modified +11 −4
src/backend/executor/execFlatten.c deleted +0 −243
src/backend/executor/execQual.c modified +1 −8
src/backend/executor/Makefile modified +2 −2
src/backend/nodes/copyfuncs.c modified +4 −16
src/backend/nodes/equalfuncs.c modified +8 −12
src/backend/nodes/makefuncs.c modified +4 −2
src/backend/nodes/outfuncs.c modified +8 −15
src/backend/nodes/readfuncs.c modified +11 −25
src/backend/optimizer/path/allpaths.c modified +4 −4
src/backend/optimizer/path/indxpath.c modified +8 −7
src/backend/optimizer/path/pathkeys.c modified +3 −2
src/backend/optimizer/plan/initsplan.c modified +4 −3
src/backend/optimizer/plan/planner.c modified +2 −2
src/backend/optimizer/prep/prepqual.c modified +3 −2
src/backend/optimizer/README modified +2 −1
src/backend/optimizer/util/clauses.c modified +53 −70
src/backend/parser/parse_clause.c modified +5 −23
src/backend/parser/parse_coerce.c modified +29 −17
src/backend/parser/parse_expr.c modified +43 −64
src/backend/parser/parse_func.c modified +3 −37
src/backend/parser/parse_node.c modified +3 −2
src/backend/utils/adt/ruleutils.c modified +1 −5
src/backend/utils/cache/lsyscache.c modified +22 −1
src/include/catalog/catversion.h modified +2 −2
src/include/executor/execFlatten.h deleted +0 −27
src/include/nodes/makefuncs.h modified +4 −3
src/include/nodes/nodes.h modified +1 −2
src/include/nodes/primnodes.h modified +41 −66
src/include/optimizer/clauses.h modified +2 −2
src/include/parser/parse_coerce.h modified +2 −2
src/include/utils/lsyscache.h modified +2 −1