Skip to content

Commit 6a28885

Browse files
committed
Fix clang build error for empty entry list placeholder
1 parent d833254 commit 6a28885

File tree

2 files changed

+7
-6
lines changed

2 files changed

+7
-6
lines changed

ext/collections/collections_deque.c

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@
3838

3939
#include <stdbool.h>
4040

41+
static const zval collections_empty_entry_list[1];
42+
4143
/* Common functionality */
4244
#define CONVERT_OFFSET_TO_LONG_OR_THROW(index, zv) do { \
4345
if (Z_TYPE_P(offset_zv) != IS_LONG) { \
@@ -108,7 +110,7 @@ static void DEBUG_ASSERT_CONSISTENT_DEQUE(const collections_deque_entries *array
108110
const uint32_t capacity = collections_deque_entries_get_capacity(array);
109111
ZEND_ASSERT(array->size <= capacity);
110112
ZEND_ASSERT(array->offset < capacity || capacity == 0);
111-
ZEND_ASSERT(array->mask == 0 || (array->circular_buffer != NULL && array->circular_buffer != empty_entry_list));
113+
ZEND_ASSERT(array->mask == 0 || (array->circular_buffer != NULL && array->circular_buffer != collections_empty_entry_list));
112114
ZEND_ASSERT(collections_is_valid_uint32_capacity(capacity));
113115
ZEND_ASSERT(array->circular_buffer != NULL || ((array->size == 0 && array->offset == 0) || capacity == 0));
114116
}
@@ -193,7 +195,7 @@ static void collections_deque_entries_init_from_array(collections_deque_entries
193195
i++;
194196
} ZEND_HASH_FOREACH_END();
195197
} else {
196-
array->circular_buffer = (zval *)empty_entry_list;
198+
array->circular_buffer = (zval *)collections_empty_entry_list;
197199
}
198200
}
199201

@@ -269,7 +271,7 @@ static void collections_deque_entries_copy_ctor(collections_deque_entries *to, c
269271
to->mask = 0;
270272
to->offset = 0;
271273
if (!size) {
272-
to->circular_buffer = (zval *)empty_entry_list;
274+
to->circular_buffer = (zval *)collections_empty_entry_list;
273275
return;
274276
}
275277

@@ -501,7 +503,7 @@ PHP_METHOD(Collections_Deque, __construct)
501503
intern->array.offset = 0;
502504
intern->array.size = 0;
503505
intern->array.mask = 0;
504-
intern->array.circular_buffer = (zval *)empty_entry_list;
506+
intern->array.circular_buffer = (zval *)collections_empty_entry_list;
505507
return;
506508
}
507509

@@ -629,7 +631,7 @@ PHP_METHOD(Collections_Deque, __unserialize)
629631
array->offset = 0;
630632
array->size = 0;
631633
array->mask = 0;
632-
array->circular_buffer = (zval *)empty_entry_list;
634+
array->circular_buffer = (zval *)collections_empty_entry_list;
633635
return;
634636
}
635637

ext/collections/collections_util.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
#include "Zend/zend.h"
2020

2121
#define COLLECTIONS_MAX_ZVAL_COLLECTION_SIZE HT_MAX_SIZE
22-
#define empty_entry_list ((const void*) (((uint8_t*)NULL) + 16))
2322
static zend_always_inline uint32_t collections_next_pow2_capacity_uint32(uint32_t nSize, uint32_t min) {
2423
if (nSize < min) {
2524
return min;

0 commit comments

Comments
 (0)