Follow-up Comment #5, bug #22014 (project freeciv):

Indeed it does.  Using the construction:

      int road_idx = road_index(oroad);
      bv_roads integrates = proad->integrates;
      bool integrator = FALSE;

      /* BV_CLR_ALL(integrates); */
      /* integrator = BV_ISSET(integrates, road_idx); */
      if (integrates.vec[road_idx] == TRUE) {
        integrator = TRUE;

results in the same warning on the integrates.vec[] check.  If the BV_CLR_ALL
statement is uncommented, there are no warnings.  Looking at the caller (in
ruleset.c), the bitvector is cleared prior to a for loop.  The for loop
conditionally sets some values with BV_SET().  I'm unsure how this could be
uninitialised, unless there is something odd about the pointer mapping between
extras and roads.


Reply to this item at:


  Message sent via/by Gna!

Freeciv-dev mailing list

Reply via email to