Thread

Commits

  1. Silence _bt_check_unique compiler warning.

  1. Uninitialized-variable warnings in nbtinsert.c

    Tom Lane <tgl@sss.pgh.pa.us> — 2020-06-13T16:17:40Z

    I scraped the buildfarm's compiler warnings today, as I do from
    time to time, and I noticed that half a dozen animals that normally
    don't report any uninitialized-variable warnings are complaining
    about "curitup" in _bt_doinsert.  We traditionally ignore such warnings
    from compilers that have demonstrated track records of being stupid
    about it, but when a reasonably modern compiler shows such a warning
    I think we ought to suppress it.  Right now the counts of
    uninitialized-variable warnings in HEAD builds are
    
          1 calliphoridae
          1 chipmunk
          1 coypu
          1 culicidae
          2 curculio
          1 frogfish
         25 locust
         24 prairiedog
    
    (curculio is additionally whining about "curitemid" in the same function.)
    So you can see that this one issue has greatly expanded the set of
    compilers that are unhappy.  I can see their point too -- it requires
    some study to be sure we are assigning curitup before dereferencing it.
    
    The simplest fix would be to just initialize curitup to NULL in its
    declaration.  But perhaps there's a better way.
    
    			regards, tom lane
    
    
    
    
  2. Re: Uninitialized-variable warnings in nbtinsert.c

    Peter Geoghegan <pg@bowt.ie> — 2020-06-13T16:29:18Z

    On Sat, Jun 13, 2020 at 9:17 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
    > I scraped the buildfarm's compiler warnings today, as I do from
    > time to time, and I noticed that half a dozen animals that normally
    > don't report any uninitialized-variable warnings are complaining
    > about "curitup" in _bt_doinsert.
    
    (Clearly you meant _bt_check_unique(), not _bt_doinsert().)
    
    > The simplest fix would be to just initialize curitup to NULL in its
    > declaration.  But perhaps there's a better way.
    
    Thanks for bringing this to my attention. I'll push a commit that
    initializes curitup shortly, targeting both the v13 branch and the
    master branch.
    
    -- 
    Peter Geoghegan
    
    
    
    
  3. Re: Uninitialized-variable warnings in nbtinsert.c

    Tom Lane <tgl@sss.pgh.pa.us> — 2020-06-13T16:56:01Z

    Peter Geoghegan <pg@bowt.ie> writes:
    > On Sat, Jun 13, 2020 at 9:17 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
    >> I scraped the buildfarm's compiler warnings today, as I do from
    >> time to time, and I noticed that half a dozen animals that normally
    >> don't report any uninitialized-variable warnings are complaining
    >> about "curitup" in _bt_doinsert.
    
    > (Clearly you meant _bt_check_unique(), not _bt_doinsert().)
    
    Ah, right.  I was looking at calliphoridae's complaint when I wrote that:
    
    In file included from /home/andres/build/buildfarm-calliphoridae/HEAD/pgsql.build/../pgsql/src/backend/access/nbtree/nbtinsert.c:18:
    /home/andres/build/buildfarm-calliphoridae/HEAD/pgsql.build/../pgsql/src/backend/access/nbtree/nbtinsert.c: In function \xe2\x80\x98_bt_doinsert\xe2\x80\x99:
    
    but it must have inlined some stuff first.  (A lot of the other
    complainers are fingering inline functions in nbtree.h, which
    is even less helpful.)
    
    > Thanks for bringing this to my attention. I'll push a commit that
    > initializes curitup shortly, targeting both the v13 branch and the
    > master branch.
    
    Thanks!
    
    			regards, tom lane