summaryrefslogtreecommitdiff
path: root/src/backend/parser/parse_agg.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>1999-04-29 01:13:13 +0000
committerTom Lane <tgl@sss.pgh.pa.us>1999-04-29 01:13:13 +0000
commitfd31563777e98882a0869223f67ff33cb61b7108 (patch)
treed7de74c9590a896246c35a624d8ea7c4d7177660 /src/backend/parser/parse_agg.c
parent970583ab4f9818bc79ef7042eaaa791db8e92057 (diff)
Aggregate functions didn't work on subscripted array references.
Things are better now.
Diffstat (limited to 'src/backend/parser/parse_agg.c')
-rw-r--r--src/backend/parser/parse_agg.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/backend/parser/parse_agg.c b/src/backend/parser/parse_agg.c
index a27c00c56f0..1b2eb21c7cd 100644
--- a/src/backend/parser/parse_agg.c
+++ b/src/backend/parser/parse_agg.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/parse_agg.c,v 1.17 1999/02/13 23:17:06 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/parse_agg.c,v 1.18 1999/04/29 01:13:13 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -305,11 +305,7 @@ ParseAgg(ParseState *pstate, char *aggname, Oid basetype,
if (OidIsValid(xfn1))
{
basetype = aggform->aggbasetype;
- if (nodeTag(lfirst(target)) == T_Var)
- vartype = ((Var *) lfirst(target))->vartype;
- else
- vartype = ((Expr *) lfirst(target))->typeOid;
-
+ vartype = exprType(lfirst(target));
if ((basetype != vartype)
&& (! IS_BINARY_COMPATIBLE(basetype, vartype)))
{