From 450d7e276e512345d7df626dd0bd3423210668a7 Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Fri, 23 May 2003 04:08:34 +0000
Subject: [PATCH] Seems pl_funcs didn't have support for plpgsql PERFORM
 statement.

---
 src/pl/plpgsql/src/pl_funcs.c | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/src/pl/plpgsql/src/pl_funcs.c b/src/pl/plpgsql/src/pl_funcs.c
index c19399e336d..b18f584f665 100644
--- a/src/pl/plpgsql/src/pl_funcs.c
+++ b/src/pl/plpgsql/src/pl_funcs.c
@@ -3,7 +3,7 @@
  *			  procedural language
  *
  * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/pl/plpgsql/src/pl_funcs.c,v 1.25 2003/03/25 03:16:41 tgl Exp $
+ *	  $Header: /cvsroot/pgsql/src/pl/plpgsql/src/pl_funcs.c,v 1.26 2003/05/23 04:08:34 tgl Exp $
  *
  *	  This software is copyrighted by Jan Wieck - Hamburg.
  *
@@ -472,6 +472,8 @@ plpgsql_stmt_typename(PLpgSQL_stmt * stmt)
 			return "fetch";
 		case PLPGSQL_STMT_CLOSE:
 			return "close";
+		case PLPGSQL_STMT_PERFORM:
+			return "perform";
 	}
 
 	return "unknown";
@@ -504,6 +506,7 @@ static void dump_getdiag(PLpgSQL_stmt_getdiag * stmt);
 static void dump_open(PLpgSQL_stmt_open * stmt);
 static void dump_fetch(PLpgSQL_stmt_fetch * stmt);
 static void dump_close(PLpgSQL_stmt_close * stmt);
+static void dump_perform(PLpgSQL_stmt_perform * stmt);
 static void dump_expr(PLpgSQL_expr * expr);
 
 
@@ -579,6 +582,9 @@ dump_stmt(PLpgSQL_stmt * stmt)
 		case PLPGSQL_STMT_CLOSE:
 			dump_close((PLpgSQL_stmt_close *) stmt);
 			break;
+		case PLPGSQL_STMT_PERFORM:
+			dump_perform((PLpgSQL_stmt_perform *) stmt);
+			break;
 		default:
 			elog(ERROR, "plpgsql_dump: unknown cmd_type %d\n", stmt->cmd_type);
 			break;
@@ -808,6 +814,15 @@ dump_close(PLpgSQL_stmt_close * stmt)
 	printf("CLOSE curvar=%d\n", stmt->curvar);
 }
 
+static void
+dump_perform(PLpgSQL_stmt_perform * stmt)
+{
+	dump_ind();
+	printf("PERFORM expr = ");
+	dump_expr(stmt->expr);
+	printf("\n");
+}
+
 static void
 dump_exit(PLpgSQL_stmt_exit * stmt)
 {
-- 
GitLab