From 59713cfe5e4c4c894317696e9cf2d71808df8371 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 20 Sep 2009 01:53:32 +0000 Subject: [PATCH] Allow plpgsql IN parameters to be assigned to. Since the parameters are just preinitialized local variables, this does not affect the function's semantics as seen by callers; allowing assignment simply avoids the need to create more local variables in some cases. In any case we were being rather inconsistent since only scalar parameters were getting marked constant. No documentation change, since parameters were never documented as being marked constant anyway. Steve Prentice --- src/pl/plpgsql/src/pl_comp.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/pl/plpgsql/src/pl_comp.c b/src/pl/plpgsql/src/pl_comp.c index 028013f860..1bec949b8f 100644 --- a/src/pl/plpgsql/src/pl_comp.c +++ b/src/pl/plpgsql/src/pl_comp.c @@ -424,10 +424,6 @@ do_compile(FunctionCallInfo fcinfo, if (argvariable->dtype == PLPGSQL_DTYPE_VAR) { argitemtype = PLPGSQL_NSTYPE_VAR; - /* input argument vars are forced to be CONSTANT */ - if (argmode == PROARGMODE_IN || - argmode == PROARGMODE_VARIADIC) - ((PLpgSQL_var *) argvariable)->isconst = true; } else { -- 2.39.5