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:

  <http://gna.org/bugs/?22014>

_______________________________________________
  Message sent via/by Gna!
  http://gna.org/


_______________________________________________
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev

Reply via email to