I am seeing a new gcc 12.2.0 compiler warning from
src/backend/commands/sequence.c:

        sequence.c: In function ‘DefineSequence’:
        sequence.c:196:35: warning: ‘coldef’ may be used uninitialized 
[-Wmaybe-uninitialized]
          196 |                 stmt->tableElts = lappend(stmt->tableElts, 
coldef);
              |                                   
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        sequence.c:175:29: note: ‘coldef’ was declared here
          175 |                 ColumnDef  *coldef;
              |                             ^~~~~~

The code is:

        for (i = SEQ_COL_FIRSTCOL; i <= SEQ_COL_LASTCOL; i++)
        {
-->         ColumnDef  *coldef;

            switch (i)
            {
                case SEQ_COL_LASTVAL:
                    coldef = makeColumnDef("last_value", INT8OID, -1, 
InvalidOid);
                    value[i - 1] = Int64GetDatumFast(seqdataform.last_value);
                    break;
                case SEQ_COL_LOG:
                    coldef = makeColumnDef("log_cnt", INT8OID, -1, InvalidOid);
                    value[i - 1] = Int64GetDatum((int64) 0);
                    break;
                case SEQ_COL_CALLED:
                    coldef = makeColumnDef("is_called", BOOLOID, -1, 
InvalidOid);
                    value[i - 1] = BoolGetDatum(false);
                    break;
            }

            coldef->is_not_null = true;
            null[i - 1] = false;

-->         stmt->tableElts = lappend(stmt->tableElts, coldef);
        }

and I think it is caused by this commit:

        commit 1fa9241bdd
        Author: Peter Eisentraut <pe...@eisentraut.org>
        Date:   Tue Aug 29 08:41:04 2023 +0200
        
            Make more use of makeColumnDef()
        
            Since we already have it, we might as well make full use of it,
            instead of assembling ColumnDef by hand in several places.
        
            Reviewed-by: Alvaro Herrera <alvhe...@alvh.no-ip.org>
            Discussion: 
https://www.postgresql.org/message-id/flat/52a125e4-ff9a-95f5-9f61-b87cf447e...@eisentraut.org

-- 
  Bruce Momjian  <br...@momjian.us>        https://momjian.us
  EDB                                      https://enterprisedb.com

  Only you can decide what is important to you.


Reply via email to