]> Kevux Git Server - fll/commitdiff
Update: Greatly reduce memory consumption by implementing simple low allocation step.
authorKevin Day <Kevin@kevux.org>
Sun, 4 Aug 2024 06:09:07 +0000 (01:09 -0500)
committerKevin Day <Kevin@kevux.org>
Sun, 4 Aug 2024 20:27:37 +0000 (15:27 -0500)
This is the back port of the improvement from the 0.7 development branch.
Adding the macro neither breaks API nor ABI.

Historically the step was always 3.
I found, over time, that increasing the step greatly to something like 128 could greatly reduce memory consumption and performance in many cases.
In the situation where a large number of small objects are allocated then this number like 128 becomes highly abusive.

The simple low allocation step will only allocate a single unit on the very first allocation.
If the next allocation is on an array that has a size greater than one and less than four (via the tiny define), then the step size is set to four during allocation.
If the next allocation is on an array that has a size greater than four and less than eight (via the small define), then the step size is set to eight during allocation.
If the next allocation is on an array that has a size greater than eight and less than sixty-four (via the large define), then the step size is set to sixty-four during allocation.
In all cases, if the request step is less than the calculated step, then the requested step is used.
For example, if the requested step is twelve, then after eight is allocation, then the next generated step size is twelve rather than sixty-four.

Using some test files, shows the following reduction:
- Old: ~8GB of RAM -> New: ~200MB of RAM.
- Old: ~500MB of RAM -> New: ~20MB of RAM.

64 files changed:
build/stand_alone/byte_dump.config.h
build/stand_alone/controller.config.h
build/stand_alone/fake.config.h
build/stand_alone/firewall.config.h
build/stand_alone/fss_basic_list_read.config.h
build/stand_alone/fss_basic_list_write.config.h
build/stand_alone/fss_basic_read.config.h
build/stand_alone/fss_basic_write.config.h
build/stand_alone/fss_extended_list_read.config.h
build/stand_alone/fss_extended_list_write.config.h
build/stand_alone/fss_extended_read.config.h
build/stand_alone/fss_extended_write.config.h
build/stand_alone/fss_identify.config.h
build/stand_alone/fss_payload_read.config.h
build/stand_alone/fss_payload_write.config.h
build/stand_alone/fss_status_code.config.h
build/stand_alone/iki_read.config.h
build/stand_alone/iki_write.config.h
build/stand_alone/status_code.config.h
build/stand_alone/utf8.config.h
level_0/f_fss/c/fss/named.c
level_0/f_fss/c/fss/nest.c
level_0/f_fss/c/fss/set.c
level_0/f_memory/c/memory/common.h
level_0/f_string/c/string/dynamic.c
level_0/f_string/c/string/map.c
level_0/f_string/c/string/map_multi.c
level_0/f_string/c/string/quantity.c
level_0/f_string/c/string/range.c
level_0/f_string/c/string/triple.c
level_0/f_thread/c/thread/attribute.c
level_0/f_thread/c/thread/barrier.c
level_0/f_thread/c/thread/barrier_attribute.c
level_0/f_thread/c/thread/condition.c
level_0/f_thread/c/thread/condition_attribute.c
level_0/f_thread/c/thread/id.c
level_0/f_thread/c/thread/key.c
level_0/f_thread/c/thread/lock.c
level_0/f_thread/c/thread/lock_attribute.c
level_0/f_thread/c/thread/mutex.c
level_0/f_thread/c/thread/mutex_attribute.c
level_0/f_thread/c/thread/once.c
level_0/f_thread/c/thread/semaphore.c
level_0/f_thread/c/thread/set.c
level_0/f_thread/c/thread/spin.c
level_0/f_type_array/c/type_array/array_length.c
level_0/f_type_array/c/type_array/cell.c
level_0/f_type_array/c/type_array/fll_id.c
level_0/f_type_array/c/type_array/int128.c
level_0/f_type_array/c/type_array/int16.c
level_0/f_type_array/c/type_array/int32.c
level_0/f_type_array/c/type_array/int64.c
level_0/f_type_array/c/type_array/int8.c
level_0/f_type_array/c/type_array/state.c
level_0/f_type_array/c/type_array/status.c
level_0/f_type_array/c/type_array/uint128.c
level_0/f_type_array/c/type_array/uint16.c
level_0/f_type_array/c/type_array/uint32.c
level_0/f_type_array/c/type_array/uint64.c
level_0/f_type_array/c/type_array/uint8.c
level_0/f_utf/c/utf/dynamic.c
level_0/f_utf/c/utf/map.c
level_0/f_utf/c/utf/map_multi.c
level_0/f_utf/c/utf/triple.c

index ce8eef9d89e0e46b808942a10bdd8c396f2349ad..24ed9fc50d1616b2595f43f4a9cf98d632881642 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 #define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index 23cf3b26f2ec20ec1989552cc4c2aa22c1a5175d..4dea305ef696c0a8a42fcb2e1401ae05c4a39ee7 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 //#define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index 89745b50026a3c5052f9b13ad452fb9bd014f8b2..18c133a1233dbba4d1041e47ec2a14d06fd79fe3 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index 89302adc9bff811e550c3cbff0dabf7c5a652d9d..f9cb670ab2f16003ea7a59db37227511ec84df04 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index b0d7879076cd00da1d9734107d904e024c0918d5..ca9697592fadf6b5f0be520b1dd8f964fd44baa2 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index d53665bd64ea73a3cc8343f53a7ae9749e4b7fa9..53b6a692cf2519ff5b147eefdc6b023331fe961c 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index fb73ae31143644e927ea7083dfae8d13725cbd6e..839fc9b4f121cee68b4dec8e12e122a72316bf23 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index ac922b5e98e152f4af5aa32110ca6e3de15065e7..4a13ea17e7b31e3aa1d30f2ab7f723b505822c69 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index 9d352a69b125f4da658bcb962b6a2b2e2cc544e7..66e95c2e03e612e23b0ed988946d9d3776215d16 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index 2eabb39259ba82daa058465538d95d39b6694e27..8313dbed96c424644aefebd5e2217db863a5d969 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index ff90065c0d03d543b3c7b8a3a198d83f03f4b027..c6ae15b6c73e277fa3e1a8dbb13bd79c7e5bddb5 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index de610b093c1c21587115d2b7878bd854816c4147..c45c4802635546c55106bb10660545f95d8bf3b0 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index 6466dc4e89fb7c2de6579743563d4c516af4e0f1..9bc6bec6b4fb58dfe6e33f65ff4e1a821d907c6c 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 #define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index 8c3b64f4658f02ff1577946258f3ca5990ccc94f..eb570f4a44be6cc8a9cd0e5e1218f00a851de3ab 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index ffbbe669d0fa4b251c96e2e9fd9a95fefcd02896..11b365b0b757992ade9e366a3737891d862c77a0 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 //#define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index e3999e97259cfcb55cc7f27bdaa005297fc69083..f386683a47b898af5b60eeedb02396cf3cc70a6d 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 #define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index 9b294d5be0d8f4a4e356d17f30ad072d081df543..d868dd5b75e69e582f3409cfd4ab235c2e94bd98 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 #define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index b84507fd4fdbac97a76a676fd0ff2fd152ece849..79dd4a1842fa61f634d6497c925d64b8cc29b147 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 #define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index 74ec36a9238e8133b34ac1befd81512c76365115..bd97ba3eae5f508d75fcdfb5175f95abc4641fd9 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 #define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index 3a3332a35afca668ecbe7b2efb8ee239cec5171d..d59592a0e5e87ee96811052f9638fb55f2ea8d7c 100644 (file)
 //#define _di_f_memory_default_allocation_step_
 #define _di_f_memory_delete_
 #define _di_f_memory_destroy_
+//#define _di_f_memory_increase_step_d_
 #define _di_f_memory_new_
 #define _di_f_memory_new_aligned_
 //#define _di_f_memory_resize_
index 27dd66dfd14d22020694b2b8924e065c0ca1913f..d8ae7b79e081217f34a9ef295afbe02bfff27bb3 100644 (file)
@@ -54,7 +54,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && named->objects.used + 1 > named->objects.size) {
-      f_array_length_t size = named->objects.used + step;
+      f_array_length_t size = named->objects.used + macro_f_memory_increase_step_4(step, named->objects.size);
 
       if (size > F_array_length_t_size_d) {
         if (named->objects.used + 1 > F_array_length_t_size_d) {
@@ -150,7 +150,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && nameds->used + 1 > nameds->size) {
-      f_array_length_t size = nameds->used + step;
+      f_array_length_t size = nameds->used + macro_f_memory_increase_step_4(step, nameds->size);
 
       if (size > F_array_length_t_size_d) {
         if (nameds->used + 1 > F_array_length_t_size_d) {
index 887f3b3a563ca217a2833dfd4288326b598f722d..3b55fef8d67650d3d9f3ea1cdcc1f22339419321 100644 (file)
@@ -54,7 +54,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && items->used + 1 > items->size) {
-      f_array_length_t size = items->used + step;
+      f_array_length_t size = items->used + macro_f_memory_increase_step_4(step, items->size);
 
       if (size > F_array_length_t_size_d) {
         if (items->used + 1 > F_array_length_t_size_d) {
@@ -150,7 +150,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && nest->used + 1 > nest->size) {
-      f_array_length_t size = nest->used + step;
+      f_array_length_t size = nest->used + macro_f_memory_increase_step_4(step, nest->size);
 
       if (size > F_array_length_t_size_d) {
         if (nest->used + 1 > F_array_length_t_size_d) {
@@ -246,7 +246,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && nests->used + 1 > nests->size) {
-      f_array_length_t size = nests->used + step;
+      f_array_length_t size = nests->used + macro_f_memory_increase_step_4(step, nests->size);
 
       if (size > F_array_length_t_size_d) {
         if (nests->used + 1 > F_array_length_t_size_d) {
index e783cfee5a87ad230fc464e634b7d9ea49e5bd16..bdef37ff9932e81bd2152da8b95a7ce9542cfdc7 100644 (file)
@@ -54,7 +54,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && set->objects.used + 1 > set->objects.size) {
-      f_array_length_t size = set->objects.used + step;
+      f_array_length_t size = set->objects.used + macro_f_memory_increase_step_4(step, set->objects.size);
 
       if (size > F_array_length_t_size_d) {
         if (set->objects.used + 1 > F_array_length_t_size_d) {
@@ -150,7 +150,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && set_quote->objects.used + 1 > set_quote->objects.size) {
-      f_array_length_t size = set_quote->objects.used + step;
+      f_array_length_t size = set_quote->objects.used + macro_f_memory_increase_step_4(step, set_quote->objects.size);
 
       if (size > F_array_length_t_size_d) {
         if (set_quote->objects.used + 1 > F_array_length_t_size_d) {
@@ -246,7 +246,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && set_quotes->used + 1 > set_quotes->size) {
-      f_array_length_t size = set_quotes->used + step;
+      f_array_length_t size = set_quotes->used + macro_f_memory_increase_step_4(step, set_quotes->size);
 
       if (size > F_array_length_t_size_d) {
         if (set_quotes->used + 1 > F_array_length_t_size_d) {
@@ -342,7 +342,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && sets->used + 1 > sets->size) {
-      f_array_length_t size = sets->used + step;
+      f_array_length_t size = sets->used + macro_f_memory_increase_step_4(step, sets->size);
 
       if (size > F_array_length_t_size_d) {
         if (sets->used + 1 > F_array_length_t_size_d) {
index d0757a3f7801540984c077cefc91b80dd01c5458..ba8e8d591e370d772f15e1da79a1b5795f1aeff6 100644 (file)
@@ -40,9 +40,57 @@ extern "C" {
 #ifndef _di_f_memory_default_allocation_step_
   #define F_memory_default_allocation_large_d 64
   #define F_memory_default_allocation_small_d 8
+  #define F_memory_default_allocation_tiny_d  4
 #endif // _di_f_memory_default_allocation_step_
 
 /**
+ * Helper macros for conditionally determining how much memory to allocate for a given step.
+ *
+ * For each macro:
+ *   - step: Represents the amount to increase past the helper amount.
+ *   - size: Represents the amount already allocated.
+ *
+ * macro_f_memory_increase_*:
+ *   - 1: If size is 0, then allocate 1, otherwise allocate step.
+ *   - 2: As step 1, plus if size is 1, then allocate tiny, otherwise allocate step.
+ *   - 3: As step 2, plus if size is less than small, then allocate small, otherwise allocate step.
+ *   - 4: As step 3, plus if size is less than large, then allocate large, otherwise allocate step.
+ */
+#ifndef _di_f_memory_increase_step_d_
+  #define macro_f_memory_increase_step_1(step, size) (size \
+    ? step \
+    : 1 \
+  )
+
+  #define macro_f_memory_increase_step_2(step, size) (size \
+    ? size == 1 \
+      ? step < F_memory_default_allocation_tiny_d ? step : F_memory_default_allocation_tiny_d \
+      : step \
+    : 1 \
+  )
+
+  #define macro_f_memory_increase_step_3(step, size) (size \
+    ? size == 1 \
+      ? step < F_memory_default_allocation_tiny_d ? step : F_memory_default_allocation_tiny_d \
+      : size < F_memory_default_allocation_small_d \
+        ? step < F_memory_default_allocation_small_d ? step : F_memory_default_allocation_small_d \
+        : step \
+    : 1 \
+  )
+
+  #define macro_f_memory_increase_step_4(step, size) (size \
+    ? size == 1 \
+      ? step < F_memory_default_allocation_tiny_d ? step : F_memory_default_allocation_tiny_d \
+      : size < F_memory_default_allocation_small_d \
+        ? step < F_memory_default_allocation_small_d ? step : F_memory_default_allocation_small_d \
+        : size < F_memory_default_allocation_large_d \
+          ? step < F_memory_default_allocation_large_d ? step : F_memory_default_allocation_large_d \
+          : step \
+    : 1 \
+  )
+#endif // _di_f_memory_increase_step_d_
+
+/**
  * Reset a generic memory stucture to 0 (clear all values).
  *
  * This does not deallocate memory, be certain that memory is not allocated before calling this to avoid potential memory leaks.
index 6418933a81a788f4a71a2a56f5af0bcbbc029528..1d498851c8c77881660ad94d0904bba859534af8 100644 (file)
@@ -149,7 +149,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && dynamic->used + 1 > dynamic->size) {
-      f_array_length_t size = dynamic->used + step;
+      f_array_length_t size = dynamic->used + macro_f_memory_increase_step_4(step, dynamic->size);
 
       if (size > F_string_t_size_d) {
         if (dynamic->used + 1 > F_string_t_size_d) {
@@ -860,7 +860,7 @@ extern "C" {
     if (!step) return F_data_not;
 
     if (dynamics->used + 1 > dynamics->size) {
-      f_array_length_t size = dynamics->used + step;
+      f_array_length_t size = dynamics->used + macro_f_memory_increase_step_4(step, dynamics->size);
 
       if (size > F_array_length_t_size_d) {
         if (dynamics->used + 1 > F_array_length_t_size_d) {
@@ -1013,7 +1013,7 @@ extern "C" {
     if (!step) return F_data_not;
 
     if (dynamicss->used + 1 > dynamicss->size) {
-      f_array_length_t size = dynamicss->used + step;
+      f_array_length_t size = dynamicss->used + macro_f_memory_increase_step_4(step, dynamicss->size);
 
       if (size > F_array_length_t_size_d) {
         if (dynamicss->used + 1 > F_array_length_t_size_d) {
index 13c89f090b1cde6371870b2b32e1aa24bf35607f..8941f147eb3b3ad0d40974b4f06abc31be477878 100644 (file)
@@ -99,7 +99,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && maps->used + 1 > maps->size) {
-      f_array_length_t size = maps->used + step;
+      f_array_length_t size = maps->used + macro_f_memory_increase_step_4(step, maps->size);
 
       if (size > F_array_length_t_size_d) {
         if (maps->used + 1 > F_array_length_t_size_d) {
@@ -252,7 +252,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && mapss->used + 1 > mapss->size) {
-      f_array_length_t size = mapss->used + step;
+      f_array_length_t size = mapss->used + macro_f_memory_increase_step_4(step, mapss->size);
 
       if (size > F_array_length_t_size_d) {
         if (mapss->used + 1 > F_array_length_t_size_d) {
index 67d7de5cb49d08a13051448002ab29baae046b41..2b8791abdff1145b6258e47def9858a00910121d 100644 (file)
@@ -100,7 +100,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && map_multis->used + 1 > map_multis->size) {
-      f_array_length_t size = map_multis->used + step;
+      f_array_length_t size = map_multis->used + macro_f_memory_increase_step_4(step, map_multis->size);
 
       if (size > F_array_length_t_size_d) {
         if (map_multis->used + 1 > F_array_length_t_size_d) {
@@ -253,7 +253,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && map_multiss->used + 1 > map_multiss->size) {
-      f_array_length_t size = map_multiss->used + step;
+      f_array_length_t size = map_multiss->used + macro_f_memory_increase_step_4(step, map_multiss->size);
 
       if (size > F_array_length_t_size_d) {
         if (map_multiss->used + 1 > F_array_length_t_size_d) {
index 1a53234e7a9d8ff3283ad03ec695b8e1b41b2ac0..6b1135fe73a7cf3ba81755404a7a52af40b8e73a 100644 (file)
@@ -85,7 +85,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && quantitys->used + 1 > quantitys->size) {
-      f_array_length_t size = quantitys->used + step;
+      f_array_length_t size = quantitys->used + macro_f_memory_increase_step_4(step, quantitys->size);
 
       if (size > F_array_length_t_size_d) {
         if (quantitys->used + 1 > F_array_length_t_size_d) {
@@ -238,7 +238,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && quantityss->used + 1 > quantityss->size) {
-      f_array_length_t size = quantityss->used + step;
+      f_array_length_t size = quantityss->used + macro_f_memory_increase_step_4(step, quantityss->size);
 
       if (size > F_array_length_t_size_d) {
         if (quantityss->used + 1 > F_array_length_t_size_d) {
index fc9fa2876893ce3c4966a548ee19b3d30347e7d1..50903f3e5cd3f953a34dc59ab0c0634adcab8969 100644 (file)
@@ -96,7 +96,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && ranges->used + 1 > ranges->size) {
-      f_array_length_t size = ranges->used + step;
+      f_array_length_t size = ranges->used + macro_f_memory_increase_step_4(step, ranges->size);
 
       if (size > F_array_length_t_size_d) {
         if (ranges->used + 1 > F_array_length_t_size_d) {
@@ -249,7 +249,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && rangess->used + 1 > rangess->size) {
-      f_array_length_t size = rangess->used + step;
+      f_array_length_t size = rangess->used + macro_f_memory_increase_step_4(step, rangess->size);
 
       if (size > F_array_length_t_size_d) {
         if (rangess->used + 1 > F_array_length_t_size_d) {
index 68bb6f337f883e13fc92eee7a6f4fb4989479669..94e4b64b63eb608ec5631849b0b2a191a4f0ae7a 100644 (file)
@@ -285,7 +285,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && tripless->used + 1 > tripless->size) {
-      f_array_length_t size = tripless->used + step;
+      f_array_length_t size = tripless->used + macro_f_memory_increase_step_4(step, tripless->size);
 
       if (size > F_array_length_t_size_d) {
         if (tripless->used + 1 > F_array_length_t_size_d) {
index f248e048ebada242d46e397c6439f884af3903ec..a0d369fbcd3a55b6400bf0240a5aebb2db183194 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && attributes->used + 1 > attributes->size) {
-      f_array_length_t size = attributes->used + step;
+      f_array_length_t size = attributes->used + macro_f_memory_increase_step_4(step, attributes->size);
 
       if (size > F_array_length_t_size_d) {
         if (attributes->used + 1 > F_array_length_t_size_d) {
index c31fe1a4f8da14be7ff336ee4e88f3ad6f3a2bbb..6e682e6d989285c1c94ee8e4403f4203f695291c 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && barriers->used + 1 > barriers->size) {
-      f_array_length_t size = barriers->used + step;
+      f_array_length_t size = barriers->used + macro_f_memory_increase_step_4(step, barriers->size);
 
       if (size > F_array_length_t_size_d) {
         if (barriers->used + 1 > F_array_length_t_size_d) {
index afa4c702e53928f98ee731bd18ef14279bea44b9..8ca71fe6be24a00f9de32bb930ce71552ebd41ac 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && attributes->used + 1 > attributes->size) {
-      f_array_length_t size = attributes->used + step;
+      f_array_length_t size = attributes->used + macro_f_memory_increase_step_4(step, attributes->size);
 
       if (size > F_array_length_t_size_d) {
         if (attributes->used + 1 > F_array_length_t_size_d) {
index a7363ae980147f6e04096b02266e85ee4763687d..74c4e98316903740a20de0ffd5f39bc9030f23f4 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && conditions->used + 1 > conditions->size) {
-      f_array_length_t size = conditions->used + step;
+      f_array_length_t size = conditions->used + macro_f_memory_increase_step_4(step, conditions->size);
 
       if (size > F_array_length_t_size_d) {
         if (conditions->used + 1 > F_array_length_t_size_d) {
index 3b2c412659d82d666a78e9a985d67264d7157b69..a4f322bf0d6031b2dfd81391de9372d4312a02e8 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && attributes->used + 1 > attributes->size) {
-      f_array_length_t size = attributes->used + step;
+      f_array_length_t size = attributes->used + macro_f_memory_increase_step_4(step, attributes->size);
 
       if (size > F_array_length_t_size_d) {
         if (attributes->used + 1 > F_array_length_t_size_d) {
index 126734293381e0b9a132b553fb34854a7b7ccbc0..12e479c5f182d4cf79550b6e95cd63704e320333 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && ids->used + 1 > ids->size) {
-      f_array_length_t size = ids->used + step;
+      f_array_length_t size = ids->used + macro_f_memory_increase_step_4(step, ids->size);
 
       if (size > F_array_length_t_size_d) {
         if (ids->used + 1 > F_array_length_t_size_d) {
index 45d27b807c8a806a03e03d5cf44d6a09008180e6..293d8c3c3ef5e951b5abd05789017f8081f1a151 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && keys->used + 1 > keys->size) {
-      f_array_length_t size = keys->used + step;
+      f_array_length_t size = keys->used + macro_f_memory_increase_step_4(step, keys->size);
 
       if (size > F_array_length_t_size_d) {
         if (keys->used + 1 > F_array_length_t_size_d) {
index ecc28bc0d196afbe9cee471f24292f1e9637ad4a..4743901a56a8f1d763322d7a6663a6ccb82edef8 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && locks->used + 1 > locks->size) {
-      f_array_length_t size = locks->used + step;
+      f_array_length_t size = locks->used + macro_f_memory_increase_step_4(step, locks->size);
 
       if (size > F_array_length_t_size_d) {
         if (locks->used + 1 > F_array_length_t_size_d) {
index 3794481a0293a24a52733bf264779fb07c1730c7..f14c48ac2a045e1c84842934267287c2bbe32bfe 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && attributes->used + 1 > attributes->size) {
-      f_array_length_t size = attributes->used + step;
+      f_array_length_t size = attributes->used + macro_f_memory_increase_step_4(step, attributes->size);
 
       if (size > F_array_length_t_size_d) {
         if (attributes->used + 1 > F_array_length_t_size_d) {
index e2478cbb1dc2f3cabaab54a26147389bf0ac6861..54f8ad494d3f93e6f2fdb87e14b1a32d367049c2 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && mutexs->used + 1 > mutexs->size) {
-      f_array_length_t size = mutexs->used + step;
+      f_array_length_t size = mutexs->used + macro_f_memory_increase_step_4(step, mutexs->size);
 
       if (size > F_array_length_t_size_d) {
         if (mutexs->used + 1 > F_array_length_t_size_d) {
index fa7b609c689f14bc9c3088df9cb9b87aba9644d4..4d42d44b82d4efa94f76e80eb12bb882802442d4 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && attributes->used + 1 > attributes->size) {
-      f_array_length_t size = attributes->used + step;
+      f_array_length_t size = attributes->used + macro_f_memory_increase_step_4(step, attributes->size);
 
       if (size > F_array_length_t_size_d) {
         if (attributes->used + 1 > F_array_length_t_size_d) {
index 28a5a452d16f19092c57dd2dd2fe0a07fe8756b3..f0df66d13720f7d73670183b40298435518d4c2e 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && onces->used + 1 > onces->size) {
-      f_array_length_t size = onces->used + step;
+      f_array_length_t size = onces->used + macro_f_memory_increase_step_4(step, onces->size);
 
       if (size > F_array_length_t_size_d) {
         if (onces->used + 1 > F_array_length_t_size_d) {
index 9aa95694a6b40e208b3494d8e5a58f7392163307..9442ec0d637f16fbe291113dc4ae349ebf01b673 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && semaphores->used + 1 > semaphores->size) {
-      f_array_length_t size = semaphores->used + step;
+      f_array_length_t size = semaphores->used + macro_f_memory_increase_step_4(step, semaphores->size);
 
       if (size > F_array_length_t_size_d) {
         if (semaphores->used + 1 > F_array_length_t_size_d) {
index b0228c25098fb3545b1ef1a34a3363d8ab6f532e..17f924b99be53db83de2344e03d494a274ab7a1d 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && sets->used + 1 > sets->size) {
-      f_array_length_t size = sets->used + step;
+      f_array_length_t size = sets->used + macro_f_memory_increase_step_4(step, sets->size);
 
       if (size > F_array_length_t_size_d) {
         if (sets->used + 1 > F_array_length_t_size_d) {
index da7a2b232f0d3623a7e96067db89fa7d59e749b0..e376b0f3df671da89949dcb4b8063c2acdfaa586 100644 (file)
@@ -55,7 +55,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && spins->used + 1 > spins->size) {
-      f_array_length_t size = spins->used + step;
+      f_array_length_t size = spins->used + macro_f_memory_increase_step_4(step, spins->size);
 
       if (size > F_array_length_t_size_d) {
         if (spins->used + 1 > F_array_length_t_size_d) {
index 455029b2c26e287299f11b439f82fb17d3fecb10..7f0a022e5cf5c46e45352a0b56b0a5050ac12d4b 100644 (file)
@@ -84,7 +84,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && lengths->used + 1 > lengths->size) {
-      f_array_length_t size = lengths->used + step;
+      f_array_length_t size = lengths->used + macro_f_memory_increase_step_4(step, lengths->size);
 
       if (size > F_array_length_t_size_d) {
         if (lengths->used + 1 > F_array_length_t_size_d) {
@@ -233,7 +233,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && lengthss->used + 1 > lengthss->size) {
-      f_array_length_t size = lengthss->used + step;
+      f_array_length_t size = lengthss->used + macro_f_memory_increase_step_4(step, lengthss->size);
 
       if (size > F_array_length_t_size_d) {
         if (lengthss->used + 1 > F_array_length_t_size_d) {
index 4eb3503cc11dd4506a209cc76a45dc698bba0816..3159922161406a04b39d548006a65f3d47126f86 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && cells->used + 1 > cells->size) {
-      f_array_length_t size = cells->used + step;
+      f_array_length_t size = cells->used + macro_f_memory_increase_step_4(step, cells->size);
 
       if (size > F_array_length_t_size_d) {
         if (cells->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && cellss->used + 1 > cellss->size) {
-      f_array_length_t size = cellss->used + step;
+      f_array_length_t size = cellss->used + macro_f_memory_increase_step_4(step, cellss->size);
 
       if (size > F_array_length_t_size_d) {
         if (cellss->used + 1 > F_array_length_t_size_d) {
index f122a35b36459bff98e4f90d96f4f341bc9f45cf..0d8cd84d1eace413f2869e23903e4de307e263ef 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && ids->used + 1 > ids->size) {
-      f_array_length_t size = ids->used + step;
+      f_array_length_t size = ids->used + macro_f_memory_increase_step_4(step, ids->size);
 
       if (size > F_array_length_t_size_d) {
         if (ids->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && idss->used + 1 > idss->size) {
-      f_array_length_t size = idss->used + step;
+      f_array_length_t size = idss->used + macro_f_memory_increase_step_4(step, idss->size);
 
       if (size > F_array_length_t_size_d) {
         if (idss->used + 1 > F_array_length_t_size_d) {
index 5d6128db2577b91aa95d3ed75af3eff1ce90279b..6c293acd5373f82777f7f2a1622eae9c02d0f9c6 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && int128s->used + 1 > int128s->size) {
-      f_array_length_t size = int128s->used + step;
+      f_array_length_t size = int128s->used + macro_f_memory_increase_step_4(step, int128s->size);
 
       if (size > F_array_length_t_size_d) {
         if (int128s->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && int128ss->used + 1 > int128ss->size) {
-      f_array_length_t size = int128ss->used + step;
+      f_array_length_t size = int128ss->used + macro_f_memory_increase_step_4(step, int128ss->size);
 
       if (size > F_array_length_t_size_d) {
         if (int128ss->used + 1 > F_array_length_t_size_d) {
index f580fd34109e13355d6061e80c9a5c94acb86fc7..c227af0203e79d63e67a6e6931eb20ff645849c3 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && int16s->used + 1 > int16s->size) {
-      f_array_length_t size = int16s->used + step;
+      f_array_length_t size = int16s->used + macro_f_memory_increase_step_4(step, int16s->size);
 
       if (size > F_array_length_t_size_d) {
         if (int16s->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && int16ss->used + 1 > int16ss->size) {
-      f_array_length_t size = int16ss->used + step;
+      f_array_length_t size = int16ss->used + macro_f_memory_increase_step_4(step, int16ss->size);
 
       if (size > F_array_length_t_size_d) {
         if (int16ss->used + 1 > F_array_length_t_size_d) {
index aff3139d3a36dc13e92c8a1d78fbcdf5d54a5c43..7aef42d7eaeb942eaae1f472fa7f7ff5717101ff 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && int32s->used + 1 > int32s->size) {
-      f_array_length_t size = int32s->used + step;
+      f_array_length_t size = int32s->used + macro_f_memory_increase_step_4(step, int32s->size);
 
       if (size > F_array_length_t_size_d) {
         if (int32s->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && int32ss->used + 1 > int32ss->size) {
-      f_array_length_t size = int32ss->used + step;
+      f_array_length_t size = int32ss->used + macro_f_memory_increase_step_4(step, int32ss->size);
 
       if (size > F_array_length_t_size_d) {
         if (int32ss->used + 1 > F_array_length_t_size_d) {
index d661974ce0a722dc51aa8fc88b1e35687eb93dca..7a3a2c7d544be3b5051450ff69c9a07da443e708 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && int64s->used + 1 > int64s->size) {
-      f_array_length_t size = int64s->used + step;
+      f_array_length_t size = int64s->used + macro_f_memory_increase_step_4(step, int64s->size);
 
       if (size > F_array_length_t_size_d) {
         if (int64s->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && int64ss->used + 1 > int64ss->size) {
-      f_array_length_t size = int64ss->used + step;
+      f_array_length_t size = int64ss->used + macro_f_memory_increase_step_4(step, int64ss->size);
 
       if (size > F_array_length_t_size_d) {
         if (int64ss->used + 1 > F_array_length_t_size_d) {
index 0c3de4a1b09f410725092f8cb14e845c683531e6..5477242ce526af5a16f845af19889c94c0c51e12 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && int8s->used + 1 > int8s->size) {
-      f_array_length_t size = int8s->used + step;
+      f_array_length_t size = int8s->used + macro_f_memory_increase_step_4(step, int8s->size);
 
       if (size > F_array_length_t_size_d) {
         if (int8s->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && int8ss->used + 1 > int8ss->size) {
-      f_array_length_t size = int8ss->used + step;
+      f_array_length_t size = int8ss->used + macro_f_memory_increase_step_4(step, int8ss->size);
 
       if (size > F_array_length_t_size_d) {
         if (int8ss->used + 1 > F_array_length_t_size_d) {
index 179931480f6bbcbc3bd6a92fbbd325a93aa6d011..56d3d5ca0deb60b2211efa97ea993687bbfb92ec 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && states->used + 1 > states->size) {
-      f_array_length_t size = states->used + step;
+      f_array_length_t size = states->used + macro_f_memory_increase_step_4(step, states->size);
 
       if (size > F_array_length_t_size_d) {
         if (states->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && statess->used + 1 > statess->size) {
-      f_array_length_t size = statess->used + step;
+      f_array_length_t size = statess->used + macro_f_memory_increase_step_4(step, statess->size);
 
       if (size > F_array_length_t_size_d) {
         if (statess->used + 1 > F_array_length_t_size_d) {
index cf45bb4259df029d49703f0ef24369482f3516c5..2b0a4cb4152814652eb27322a5fa652c8adfdddf 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && statuss->used + 1 > statuss->size) {
-      f_array_length_t size = statuss->used + step;
+      f_array_length_t size = statuss->used + macro_f_memory_increase_step_4(step, statuss->size);
 
       if (size > F_array_length_t_size_d) {
         if (statuss->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && statusss->used + 1 > statusss->size) {
-      f_array_length_t size = statusss->used + step;
+      f_array_length_t size = statusss->used + macro_f_memory_increase_step_4(step, statusss->size);
 
       if (size > F_array_length_t_size_d) {
         if (statusss->used + 1 > F_array_length_t_size_d) {
index ed8bfe596a56095fdbd724721f0baa9ed24d1464..b2e04ed03efa0d2d896e6c29f3cd17b11d2b83d9 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && uint128s->used + 1 > uint128s->size) {
-      f_array_length_t size = uint128s->used + step;
+      f_array_length_t size = uint128s->used + macro_f_memory_increase_step_4(step, uint128s->size);
 
       if (size > F_array_length_t_size_d) {
         if (uint128s->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && uint128ss->used + 1 > uint128ss->size) {
-      f_array_length_t size = uint128ss->used + step;
+      f_array_length_t size = uint128ss->used + macro_f_memory_increase_step_4(step, uint128ss->size);
 
       if (size > F_array_length_t_size_d) {
         if (uint128ss->used + 1 > F_array_length_t_size_d) {
index aaf88c12f5412eaa2c48e9948387019e171f1d57..6d0dd613c810de208677e8edeb367391eb003f6d 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && uint16s->used + 1 > uint16s->size) {
-      f_array_length_t size = uint16s->used + step;
+      f_array_length_t size = uint16s->used + macro_f_memory_increase_step_4(step, uint16s->size);
 
       if (size > F_array_length_t_size_d) {
         if (uint16s->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && uint16ss->used + 1 > uint16ss->size) {
-      f_array_length_t size = uint16ss->used + step;
+      f_array_length_t size = uint16ss->used + macro_f_memory_increase_step_4(step, uint16ss->size);
 
       if (size > F_array_length_t_size_d) {
         if (uint16ss->used + 1 > F_array_length_t_size_d) {
index 43eec953d198c799fed6b9816b70041f0bde2e77..da0a80a38dcdedabb639f5e84580172f43f6995e 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && uint32s->used + 1 > uint32s->size) {
-      f_array_length_t size = uint32s->used + step;
+      f_array_length_t size = uint32s->used + macro_f_memory_increase_step_4(step, uint32s->size);
 
       if (size > F_array_length_t_size_d) {
         if (uint32s->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && uint32ss->used + 1 > uint32ss->size) {
-      f_array_length_t size = uint32ss->used + step;
+      f_array_length_t size = uint32ss->used + macro_f_memory_increase_step_4(step, uint32ss->size);
 
       if (size > F_array_length_t_size_d) {
         if (uint32ss->used + 1 > F_array_length_t_size_d) {
index fa08f97d4099ba230a46d25fbd3afaa468affdaa..1e0cc9e7fdfe8a4aec96197c9bb5f68aacf31458 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && uint64s->used + 1 > uint64s->size) {
-      f_array_length_t size = uint64s->used + step;
+      f_array_length_t size = uint64s->used + macro_f_memory_increase_step_4(step, uint64s->size);
 
       if (size > F_array_length_t_size_d) {
         if (uint64s->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && uint64ss->used + 1 > uint64ss->size) {
-      f_array_length_t size = uint64ss->used + step;
+      f_array_length_t size = uint64ss->used + macro_f_memory_increase_step_4(step, uint64ss->size);
 
       if (size > F_array_length_t_size_d) {
         if (uint64ss->used + 1 > F_array_length_t_size_d) {
index 0a62f8bc702d3aab0cfda80bbd36e79dd6f801d6..194c4020a195657d67f24d3a90f797760da6a407 100644 (file)
@@ -77,7 +77,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && uint8s->used + 1 > uint8s->size) {
-      f_array_length_t size = uint8s->used + step;
+      f_array_length_t size = uint8s->used + macro_f_memory_increase_step_4(step, uint8s->size);
 
       if (size > F_array_length_t_size_d) {
         if (uint8s->used + 1 > F_array_length_t_size_d) {
@@ -226,7 +226,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && uint8ss->used + 1 > uint8ss->size) {
-      f_array_length_t size = uint8ss->used + step;
+      f_array_length_t size = uint8ss->used + macro_f_memory_increase_step_4(step, uint8ss->size);
 
       if (size > F_array_length_t_size_d) {
         if (uint8ss->used + 1 > F_array_length_t_size_d) {
index a670937dc2af4ea078796d44fd6bbf8c71e31269..40fcb557037719dfb17e86904c36a9082ea5f0d1 100644 (file)
@@ -151,7 +151,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && dynamic->used + 1 > dynamic->size) {
-      f_array_length_t size = dynamic->used + step;
+      f_array_length_t size = dynamic->used + macro_f_memory_increase_step_4(step, dynamic->size);
 
       if (size > F_string_t_size_d) {
         if (dynamic->used + 1 > F_string_t_size_d) {
@@ -874,7 +874,7 @@ extern "C" {
     if (!step) return F_data_not;
 
     if (dynamics->used + 1 > dynamics->size) {
-      f_array_length_t size = dynamics->used + step;
+      f_array_length_t size = dynamics->used + macro_f_memory_increase_step_4(step, dynamics->size);
 
       if (size > F_array_length_t_size_d) {
         if (dynamics->used + 1 > F_array_length_t_size_d) {
@@ -1027,7 +1027,7 @@ extern "C" {
     if (!step) return F_data_not;
 
     if (dynamicss->used + 1 > dynamicss->size) {
-      f_array_length_t size = dynamicss->used + step;
+      f_array_length_t size = dynamicss->used + macro_f_memory_increase_step_4(step, dynamicss->size);
 
       if (size > F_array_length_t_size_d) {
         if (dynamicss->used + 1 > F_array_length_t_size_d) {
index 6a3133d33c2aec34ee325fbf9f6da9f8b672ca2a..210c216f64cd047aec9ab5150050489d5fe885d9 100644 (file)
@@ -100,7 +100,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && maps->used + 1 > maps->size) {
-      f_array_length_t size = maps->used + step;
+      f_array_length_t size = maps->used + macro_f_memory_increase_step_4(step, maps->size);
 
       if (size > F_array_length_t_size_d) {
         if (maps->used + 1 > F_array_length_t_size_d) {
@@ -253,7 +253,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && mapss->used + 1 > mapss->size) {
-      f_array_length_t size = mapss->used + step;
+      f_array_length_t size = mapss->used + macro_f_memory_increase_step_4(step, mapss->size);
 
       if (size > F_array_length_t_size_d) {
         if (mapss->used + 1 > F_array_length_t_size_d) {
index 9399f25e8839cd079c084833f75d27a5c11b326d..8da7cd46fcdbd3addbbd95ece4b61ccbcf48f9c0 100644 (file)
@@ -101,7 +101,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && map_multis->used + 1 > map_multis->size) {
-      f_array_length_t size = map_multis->used + step;
+      f_array_length_t size = map_multis->used + macro_f_memory_increase_step_4(step, map_multis->size);
 
       if (size > F_array_length_t_size_d) {
         if (map_multis->used + 1 > F_array_length_t_size_d) {
@@ -254,7 +254,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && map_multiss->used + 1 > map_multiss->size) {
-      f_array_length_t size = map_multiss->used + step;
+      f_array_length_t size = map_multiss->used + macro_f_memory_increase_step_4(step, map_multiss->size);
 
       if (size > F_array_length_t_size_d) {
         if (map_multiss->used + 1 > F_array_length_t_size_d) {
index bb79331db159e1a07c38d6ed9b30eba72bca3909..bbf8a03e8d96f6efaf95f6708fd06da722798a47 100644 (file)
@@ -286,7 +286,7 @@ extern "C" {
     #endif // _di_level_0_parameter_checking_
 
     if (step && tripless->used + 1 > tripless->size) {
-      f_array_length_t size = tripless->used + step;
+      f_array_length_t size = tripless->used + macro_f_memory_increase_step_4(step, tripless->size);
 
       if (size > F_array_length_t_size_d) {
         if (tripless->used + 1 > F_array_length_t_size_d) {