aboutsummaryrefslogtreecommitdiff
path: root/src/backend/parser/parse_expr.c
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2003-06-25 21:30:34 +0000
committerBruce Momjian <bruce@momjian.us>2003-06-25 21:30:34 +0000
commit111d8e522b61169393e2698924db07586fdd847f (patch)
treea62b7f9640246a64003131f472793a295417051f /src/backend/parser/parse_expr.c
parent621691d816c45396ab9f8f9486ee9eb2a037795c (diff)
downloadpostgresql-111d8e522b61169393e2698924db07586fdd847f.tar.gz
postgresql-111d8e522b61169393e2698924db07586fdd847f.zip
Back out array mega-patch.
Joe Conway
Diffstat (limited to 'src/backend/parser/parse_expr.c')
-rw-r--r--src/backend/parser/parse_expr.c34
1 files changed, 6 insertions, 28 deletions
diff --git a/src/backend/parser/parse_expr.c b/src/backend/parser/parse_expr.c
index 5234c22e4fb..1e655217103 100644
--- a/src/backend/parser/parse_expr.c
+++ b/src/backend/parser/parse_expr.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.149 2003/06/24 23:14:45 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.150 2003/06/25 21:30:31 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -436,7 +436,6 @@ transformExpr(ParseState *pstate, Node *expr)
sublink->operName = NIL;
sublink->operOids = NIL;
sublink->useOr = FALSE;
- sublink->isExpr = FALSE;
}
else if (sublink->subLinkType == EXPR_SUBLINK ||
sublink->subLinkType == ARRAY_SUBLINK)
@@ -464,7 +463,6 @@ transformExpr(ParseState *pstate, Node *expr)
sublink->operName = NIL;
sublink->operOids = NIL;
sublink->useOr = FALSE;
- sublink->isExpr = FALSE;
}
else
{
@@ -540,30 +538,10 @@ transformExpr(ParseState *pstate, Node *expr)
* here, because make_subplan() will insert type
* coercion calls if needed.
*/
- if (!sublink->isExpr)
- {
- optup = oper(op,
- exprType(lexpr),
- exprType((Node *) tent->expr),
- false);
- }
- else
- {
- Oid exprtype = exprType((Node *) tent->expr);
- Oid elemtype = get_element_type(exprtype);
-
- if (elemtype != InvalidOid)
- optup = oper(op,
- exprType(lexpr),
- elemtype,
- false);
- else
- optup = oper(op,
- exprType(lexpr),
- exprtype,
- false);
- }
-
+ optup = oper(op,
+ exprType(lexpr),
+ exprType((Node *) tent->expr),
+ false);
opform = (Form_pg_operator) GETSTRUCT(optup);
if (opform->oprresult != BOOLOID)
@@ -765,7 +743,7 @@ transformExpr(ParseState *pstate, Node *expr)
ArrayExpr *e = (ArrayExpr *) lfirst(element);
if (!IsA(e, ArrayExpr))
- elog(ERROR, "Multidimensional ARRAY[] must be built from nested array expressions");
+ elog(ERROR, "Multi-dimensional ARRAY[] must be built from nested array expressions");
if (ndims == 0)
ndims = e->ndims;
else if (e->ndims != ndims)