Refactor exec_cast_value() and exec_simple_cast_value(): since they do
authorNeil Conway <neilc@samurai.com>
Thu, 28 Jul 2005 07:51:13 +0000 (07:51 +0000)
committerNeil Conway <neilc@samurai.com>
Thu, 28 Jul 2005 07:51:13 +0000 (07:51 +0000)
not ever write through the `isnull' parameter, it does not need to be
an out parameter. Therefore it can be declared a "bool" rather than a
"bool *".

src/pl/plpgsql/src/pl_exec.c

index 837146c8bd5a53e2550d4e4b08309283e7227f31..ff89989451f2bfeb8a472a43529eafcd0d26b9b6 100644 (file)
@@ -3,7 +3,7 @@
  *                       procedural language
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/pl/plpgsql/src/pl_exec.c,v 1.150 2005/07/28 00:26:30 tgl Exp $
+ *       $PostgreSQL: pgsql/src/pl/plpgsql/src/pl_exec.c,v 1.151 2005/07/28 07:51:13 neilc Exp $
  *
  *       This software is copyrighted by Jan Wieck - Hamburg.
  *
@@ -173,10 +173,10 @@ static Datum exec_cast_value(Datum value, Oid valtype,
                                FmgrInfo *reqinput,
                                Oid reqtypioparam,
                                int32 reqtypmod,
-                               bool *isnull);
+                               bool isnull);
 static Datum exec_simple_cast_value(Datum value, Oid valtype,
                                           Oid reqtype, int32 reqtypmod,
-                                          bool *isnull);
+                                          bool isnull);
 static void exec_init_tuple_store(PLpgSQL_execstate *estate);
 static bool compatible_tupdesc(TupleDesc td1, TupleDesc td2);
 static void exec_set_found(PLpgSQL_execstate *estate, bool state);
@@ -356,7 +356,7 @@ plpgsql_exec_function(PLpgSQL_function *func, FunctionCallInfo fcinfo)
                                                                                        &(func->fn_retinput),
                                                                                        func->fn_rettypioparam,
                                                                                        -1,
-                                                                                       &fcinfo->isnull);
+                                                                                       fcinfo->isnull);
 
                        /*
                         * If the function's return type isn't by value, copy the value
@@ -1348,7 +1348,7 @@ exec_stmt_fori(PLpgSQL_execstate *estate, PLpgSQL_stmt_fori *stmt)
        value = exec_cast_value(value, valtype, var->datatype->typoid,
                                                        &(var->datatype->typinput),
                                                        var->datatype->typioparam,
-                                                       var->datatype->atttypmod, &isnull);
+                                                       var->datatype->atttypmod, isnull);
        if (isnull)
                ereport(ERROR,
                                (errcode(ERRCODE_NULL_VALUE_NOT_ALLOWED),
@@ -1364,7 +1364,7 @@ exec_stmt_fori(PLpgSQL_execstate *estate, PLpgSQL_stmt_fori *stmt)
        value = exec_cast_value(value, valtype, var->datatype->typoid,
                                                        &(var->datatype->typinput),
                                                        var->datatype->typioparam,
-                                                       var->datatype->atttypmod, &isnull);
+                                                       var->datatype->atttypmod, isnull);
        if (isnull)
                ereport(ERROR,
                                (errcode(ERRCODE_NULL_VALUE_NOT_ALLOWED),
@@ -1868,7 +1868,7 @@ exec_stmt_return_next(PLpgSQL_execstate *estate,
                                                                                                var->datatype->typoid,
                                                                                                tupdesc->attrs[0]->atttypid,
                                                                                                tupdesc->attrs[0]->atttypmod,
-                                                                                               &isNull);
+                                                                                               isNull);
 
                                tuple = heap_form_tuple(tupdesc, &retval, &isNull);
 
@@ -1934,7 +1934,7 @@ exec_stmt_return_next(PLpgSQL_execstate *estate,
                                                                                rettype,
                                                                                tupdesc->attrs[0]->atttypid,
                                                                                tupdesc->attrs[0]->atttypmod,
-                                                                               &isNull);
+                                                                               isNull);
 
                tuple = heap_form_tuple(tupdesc, &retval, &isNull);
 
@@ -2995,7 +2995,7 @@ exec_assign_value(PLpgSQL_execstate *estate,
                                                                                   &(var->datatype->typinput),
                                                                                   var->datatype->typioparam,
                                                                                   var->datatype->atttypmod,
-                                                                                  isNull);
+                                                                                  *isNull);
 
                                if (*isNull && var->notnull)
                                        ereport(ERROR,
@@ -3194,7 +3194,7 @@ exec_assign_value(PLpgSQL_execstate *estate,
                                                                                                         valtype,
                                                                                                         atttype,
                                                                                                         atttypmod,
-                                                                                                        &attisnull);
+                                                                                                        attisnull);
                                if (attisnull)
                                        nulls[fno] = 'n';
                                else
@@ -3340,7 +3340,7 @@ exec_assign_value(PLpgSQL_execstate *estate,
                                                                                                           valtype,
                                                                                                           arrayelemtypeid,
                                                                                                           -1,
-                                                                                                          isNull);
+                                                                                                          *isNull);
 
                                /*
                                 * Build the modified array value.
@@ -3564,7 +3564,7 @@ exec_eval_integer(PLpgSQL_execstate *estate,
        exprdatum = exec_eval_expr(estate, expr, isNull, &exprtypeid);
        exprdatum = exec_simple_cast_value(exprdatum, exprtypeid,
                                                                           INT4OID, -1,
-                                                                          isNull);
+                                                                          *isNull);
        return DatumGetInt32(exprdatum);
 }
 
@@ -3586,7 +3586,7 @@ exec_eval_boolean(PLpgSQL_execstate *estate,
        exprdatum = exec_eval_expr(estate, expr, isNull, &exprtypeid);
        exprdatum = exec_simple_cast_value(exprdatum, exprtypeid,
                                                                           BOOLOID, -1,
-                                                                          isNull);
+                                                                          *isNull);
        return DatumGetBool(exprdatum);
 }
 
@@ -4060,9 +4060,9 @@ exec_cast_value(Datum value, Oid valtype,
                                FmgrInfo *reqinput,
                                Oid reqtypioparam,
                                int32 reqtypmod,
-                               bool *isnull)
+                               bool isnull)
 {
-       if (!*isnull)
+       if (!isnull)
        {
                /*
                 * If the type of the queries return value isn't that of the
@@ -4095,9 +4095,9 @@ exec_cast_value(Datum value, Oid valtype,
 static Datum
 exec_simple_cast_value(Datum value, Oid valtype,
                                           Oid reqtype, int32 reqtypmod,
-                                          bool *isnull)
+                                          bool isnull)
 {
-       if (!*isnull)
+       if (!isnull)
        {
                if (valtype != reqtype || reqtypmod != -1)
                {