summary refs log tree commit diff
diff options
context:
space:
mode:
authorWormHeamer2025-02-10 02:35:33 -0500
committerWormHeamer2025-02-10 02:35:33 -0500
commit1055461bcf7f0d20f8e6823094624138145d23ac (patch)
tree1da528b18aaec09edf2efd17153e44edf099646f
parent299e2d107eaebc45117c8ac6072bd860e2e4f9be (diff)
apply stdwrm__ prefix to vars; only evaluate DA_FIT count once
-rw-r--r--dynarr.h19
1 files changed, 10 insertions, 9 deletions
diff --git a/dynarr.h b/dynarr.h
index 46a77f9..6feea5a 100644
--- a/dynarr.h
+++ b/dynarr.h
@@ -16,9 +16,9 @@ typedef struct { size_t count, capacity; } DynArrHeader;
 #define DA_DEFAULT_INIT_SIZE 16
 
 #define DA_INIT_SIZE(da, sz) do {\
-	char *da_init_ptr = ((char*)malloc(sizeof(DynArrHeader) + sz * sizeof(*da)));\
-	if (!da_init_ptr) err(1, "dynamic array allocation failed");\
-	da = (void *)(da_init_ptr + sizeof(DynArrHeader));\
+	char *stdwrm__da_init_ptr = ((char*)malloc(sizeof(DynArrHeader) + sz * sizeof(*da)));\
+	if (!stdwrm__da_init_ptr) err(1, "dynamic array allocation failed");\
+	da = (void *)(stdwrm__da_init_ptr + sizeof(DynArrHeader));\
 	*DA_HEADER(da) = (DynArrHeader) { 0, sz };\
 } while(0)
 
@@ -29,11 +29,12 @@ typedef struct { size_t count, capacity; } DynArrHeader;
 
 #define DA_LEN(da) (DA_HEADER(da)->count)
 #define DA_FIT(da, count) do {\
-	if (count >= DA_HEADER(da)->capacity) {\
-		while (count >= DA_HEADER(da)->capacity) DA_HEADER(da)->capacity <<= 1;\
-		char *da_fit_ptr = realloc(DA_HEADER(da), sizeof(DynArrHeader) + DA_HEADER(da)->capacity * sizeof(*da));\
-		if (!da_fit_ptr) err(1, "dynamic array reallocation failed");\
-		(da) = (void *)(da_fit_ptr + sizeof(DynArrHeader));\
+	size_t stdwrm__da_fit_count = count;\
+	if (stdwrm__da_fit_count >= DA_HEADER(da)->capacity) {\
+		while (stdwrm__da_fit_count >= DA_HEADER(da)->capacity) DA_HEADER(da)->capacity <<= 1;\
+		char *stdwrm__da_fit_ptr = realloc(DA_HEADER(da), sizeof(DynArrHeader) + DA_HEADER(da)->capacity * sizeof(*da));\
+		if (!stdwrm__da_fit_ptr) err(1, "dynamic array reallocation failed");\
+		(da) = (void *)(stdwrm__da_fit_ptr + sizeof(DynArrHeader));\
 	}\
 } while(0)
 
@@ -52,6 +53,6 @@ typedef struct { size_t count, capacity; } DynArrHeader;
 	for (typeof(da) name = (da); name < &(da)[DA_LEN(da)]; name++)
 
 #define DA_FORVAL(da, name)\
-	for (volatile typeof(*(da)) *da_iter = (da), name; da_iter < &(da)[DA_LEN(da)] && (name = *da_iter, 1); da_iter++)
+	for (volatile typeof(*(da)) *stdwrm__da_iter = (da), name; stdwrm__da_iter < &(da)[DA_LEN(da)] && (name = *stdwrm__da_iter, 1); stdwrm__da_iter++)
 
 #endif