aboutsummaryrefslogtreecommitdiff
path: root/src/backend/parser/parse_expr.c
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1998-01-19 05:48:55 +0000
committerBruce Momjian <bruce@momjian.us>1998-01-19 05:48:55 +0000
commit3d24e75176cf93a109392e9a9449b47c9dc58330 (patch)
treeb9cfb05e150b93ec1a74301a20efb310a0d5f427 /src/backend/parser/parse_expr.c
parent588867bd7b5f7cf9d3a7f373064a5a9474b992fe (diff)
downloadpostgresql-3d24e75176cf93a109392e9a9449b47c9dc58330.tar.gz
postgresql-3d24e75176cf93a109392e9a9449b47c9dc58330.zip
Added code so SubLinks make it to optimizer.
Diffstat (limited to 'src/backend/parser/parse_expr.c')
-rw-r--r--src/backend/parser/parse_expr.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/backend/parser/parse_expr.c b/src/backend/parser/parse_expr.c
index b1bf7d3a95f..6dab88c12cd 100644
--- a/src/backend/parser/parse_expr.c
+++ b/src/backend/parser/parse_expr.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.8 1998/01/19 05:06:18 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.9 1998/01/19 05:48:36 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -277,12 +277,14 @@ transformExpr(ParseState *pstate, Node *expr, int precedence)
{
Node *lexpr = transformExpr(pstate, lfirst(elist), precedence);
Node *rexpr = lfirst(right_expr);
+ TargetEntry *tent = (TargetEntry *)rexpr;
Expr *op_expr;
- op_expr = make_op(op, lexpr, rexpr);
+ op_expr = make_op(op, lexpr, tent->expr);
sublink->oper = lappend(sublink->oper, op_expr->oper);
right_expr = lnext(right_expr);
}
+ result = (Node *) expr;
}
break;
}
@@ -382,6 +384,9 @@ exprType(Node *expr)
case T_Param:
type = ((Param *) expr)->paramtype;
break;
+ case T_SubLink:
+ type = BOOLOID;
+ break;
case T_Ident:
/* is this right? */
type = UNKNOWNOID;