aboutsummaryrefslogtreecommitdiff
path: root/src/backend/nodes/copyfuncs.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2008-08-30 01:39:14 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2008-08-30 01:39:14 +0000
commit449a00fbbd49c00ba031432e8b6913a55e8ad1f6 (patch)
treec19cdeb09e444071accc7f4984d2067741988f86 /src/backend/nodes/copyfuncs.c
parent6253f9de6702fa73101997034b4fec038d547f6d (diff)
downloadpostgresql-449a00fbbd49c00ba031432e8b6913a55e8ad1f6.tar.gz
postgresql-449a00fbbd49c00ba031432e8b6913a55e8ad1f6.zip
Fix the raw-parsetree representation of star (as in SELECT * FROM or
SELECT foo.*) so that it cannot be confused with a quoted identifier "*". Instead create a separate node type A_Star to represent this notation. Per pgsql-hackers discussion of 2007-Sep-27.
Diffstat (limited to 'src/backend/nodes/copyfuncs.c')
-rw-r--r--src/backend/nodes/copyfuncs.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/backend/nodes/copyfuncs.c b/src/backend/nodes/copyfuncs.c
index 4e984719d3d..67a25500dac 100644
--- a/src/backend/nodes/copyfuncs.c
+++ b/src/backend/nodes/copyfuncs.c
@@ -15,7 +15,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/nodes/copyfuncs.c,v 1.402 2008/08/28 23:09:45 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/nodes/copyfuncs.c,v 1.403 2008/08/30 01:39:13 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1697,6 +1697,14 @@ _copyFuncCall(FuncCall *from)
return newnode;
}
+static A_Star *
+_copyAStar(A_Star *from)
+{
+ A_Star *newnode = makeNode(A_Star);
+
+ return newnode;
+}
+
static A_Indices *
_copyAIndices(A_Indices *from)
{
@@ -3589,6 +3597,9 @@ copyObject(void *from)
case T_FuncCall:
retval = _copyFuncCall(from);
break;
+ case T_A_Star:
+ retval = _copyAStar(from);
+ break;
case T_A_Indices:
retval = _copyAIndices(from);
break;