Module Name: src Committed By: rillig Date: Thu Oct 22 21:27:24 UTC 2020
Modified Files: src/usr.bin/make: lst.c lst.h make.c suff.c Log Message: make(1): add Lst_ForEachUntilConcurrent Previously, Lst_ForEachUntil allowed the list to be modified while iterating. Almost none of the code needs this, and it's also confusing for human readers. None of the current unit tests makes use of this concurrent modification right now, but that's not evidence enough. Only 72% of the code are covered by unit tests right now, and there are lots of edge cases (whether intended or not) that are not covered by unit tests. Therefore, all calls to Lst_ForEachUntil were changed to Lst_ForEachUntilConcurrent and those that were obvious were changed back. The remaining calls probably don't need the concurrent modification code, but that's not obvious from looking at the code. To generate a diff of this commit: cvs rdiff -u -r1.81 -r1.82 src/usr.bin/make/lst.c cvs rdiff -u -r1.76 -r1.77 src/usr.bin/make/lst.h cvs rdiff -u -r1.171 -r1.172 src/usr.bin/make/make.c cvs rdiff -u -r1.216 -r1.217 src/usr.bin/make/suff.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.