Update of bug #45728 (project make):

                  Status:                    None => Fixed                  
             Assigned to:                    None => psmith                 
             Open/Closed:                    Open => Closed                 
           Fixed Release:                    None => SCM                    
           Triage Status:                    None => Small Effort           

    _______________________________________________________

Follow-up Comment #2:

This was tricky.  GNU make tries to avoid the overhead of computing .VARIABLES
unless you need it, and also unless it changed from the last time it was
computed.  It used the number of variables in the hash table to determine
whether the value needed to be recomputed.  This was find when we weren't
removing entries on undefine, but when we started to do that now the value is
not reliable: if you remove one variable and add one variable (or any equal
number of adds and removes) in between expanding .VARIABLES then it doesn't
detect that there was a change and doesn't re-compute the .VARIABLES value.

I fixed this in Git by introducing a "change number" for variables which is
monotonically increasing, during both adds and removes.

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?45728>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/


_______________________________________________
Bug-make mailing list
Bug-make@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-make

Reply via email to