Suppress "may be used uninitialized" warnings from older compilers.
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 17 Apr 2025 20:47:04 +0000 (16:47 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 17 Apr 2025 20:47:04 +0000 (16:47 -0400)
The "children" list won't be used until "got_children" has been set
true, but older compilers don't get that; about half a dozen
buildfarm animals are warning about this.  Issue added by 11ff192b5.

While here, improve slightly-shaky grammar in comment.

Discussion: https://postgr.es/m/2057835.1744833309@sss.pgh.pa.us

src/backend/commands/tablecmds.c

index f971f6019ca7c84c34ca224ef6b4c16bddcb475f..80f689bbbc5d640154334e6b271b648c322c0fb1 100644 (file)
@@ -9444,9 +9444,9 @@ ATExecDropColumn(List **wqueue, Relation rel, const char *colName,
  *
  * The not-null constraints for a primary key must cover the whole inheritance
  * hierarchy (failing to ensure that leads to funny corner cases).  For the
- * normal case where we're asked to recurse, this routine ensures that the
- * not-null constraints either exist already, or queues a requirement for them
- * to be created by phase 2.
+ * normal case where we're asked to recurse, this routine checks if the
+ * not-null constraints exist already, and if not queues a requirement for
+ * them to be created by phase 2.
  *
  * For the case where we're asked not to recurse, we verify that a not-null
  * constraint exists on each column of each (direct) child table, throwing an
@@ -9466,7 +9466,7 @@ ATPrepAddPrimaryKey(List **wqueue, Relation rel, AlterTableCmd *cmd,
                    AlterTableUtilityContext *context)
 {
    Constraint *pkconstr;
-   List       *children;
+   List       *children = NIL;
    bool        got_children = false;
 
    pkconstr = castNode(Constraint, cmd->def);