aboutsummaryrefslogtreecommitdiff
path: root/src/backend/parser/parse_target.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/parser/parse_target.c')
-rw-r--r--src/backend/parser/parse_target.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/backend/parser/parse_target.c b/src/backend/parser/parse_target.c
index bb4b065eebb..906d96e45c6 100644
--- a/src/backend/parser/parse_target.c
+++ b/src/backend/parser/parse_target.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/parser/parse_target.c,v 1.149 2006/10/04 00:29:56 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/parser/parse_target.c,v 1.150 2006/12/21 16:05:14 petere Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1315,6 +1315,21 @@ FigureColnameInternal(Node *node, char **name)
return 2;
}
break;
+ case T_XmlExpr:
+ /* make SQL/XML functions act like a regular function */
+ switch (((XmlExpr*) node)->op)
+ {
+ case IS_XMLCONCAT:
+ *name = "xmlconcat";
+ return 2;
+ case IS_XMLELEMENT:
+ *name = "xmlelement";
+ return 2;
+ case IS_XMLFOREST:
+ *name = "xmlforest";
+ return 2;
+ }
+ break;
default:
break;
}