From c54cfde860f3449d37d19255f399b216f00a871c Mon Sep 17 00:00:00 2001 From: Andrew Opalach Date: Sun, 30 Nov 2025 13:10:30 -0500 Subject: array: Try to avoid common shadowing case Signed-off-by: Andrew Opalach --- src/array.c | 60 ++++++++++++++++++++++++++++++------------------------------ 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/src/array.c b/src/array.c index 8c7f8d3..bde54a8 100644 --- a/src/array.c +++ b/src/array.c @@ -77,41 +77,41 @@ } while (0) #ifdef AL_HAVE_GNU_EXTENSIONS -#define al_array_contains(array, needle) \ - ({ \ - bool contains = false; \ - for (u32 i = 0; i < (array).count; i++) { \ - if (al_array_at(array, i) == needle) { \ - contains = true; \ - break; \ - } \ - } \ - contains; \ +#define al_array_contains(array, needle) \ + ({ \ + bool was_contained = false; \ + for (u32 ic = 0; ic < (array).count; ic++) { \ + if (al_array_at(array, ic) == needle) { \ + was_contained = true; \ + break; \ + } \ + } \ + was_contained; \ }) -#define al_array_remove(array, elem) \ +#define al_array_remove(array, elem) \ + ({ \ + bool did_remove = false; \ + for (u32 ir = 0; ir < (array).count; ir++) { \ + if (al_array_at(array, ir) == elem) { \ + al_array_remove_at(array, ir); \ + did_remove = true; \ + break; \ + } \ + } \ + did_remove; \ + }) + +#define al_array_remove_all(array, elem) \ ({ \ - bool removed = false; \ - for (u32 i = 0; i < (array).count; i++) { \ - if (al_array_at(array, i) == elem) { \ - al_array_remove_at(array, i); \ - removed = true; \ - break; \ + bool did_remove = false; \ + for (u32 ir = (array).count; ir-- > 0;) { \ + if (al_array_at(array, ir) == elem) { \ + al_array_remove_at(array, ir); \ + did_remove = true; \ } \ } \ - removed; \ - }) - -#define al_array_remove_all(array, elem) \ - ({ \ - bool removed = false; \ - for (u32 i = (array).count; i-- > 0;) { \ - if (al_array_at(array, i) == elem) { \ - al_array_remove_at(array, i); \ - removed = true; \ - } \ - } \ - removed; \ + did_remove; \ }) #endif -- cgit v1.2.3-101-g0448