summaryrefslogtreecommitdiffhomepage
path: root/include/stc/cvec.h
diff options
context:
space:
mode:
authortylov <[email protected]>2023-08-13 14:14:25 +0200
committertylov <[email protected]>2023-08-13 14:14:25 +0200
commit1802558d41112e99d965000c97c45ebf7984d70c (patch)
tree2cc9d1dd337ad8783de7b8ac579cf144f2f54031 /include/stc/cvec.h
parentea878349e94ef00643b2510045f6482385cff1a7 (diff)
downloadSTC-modified-1802558d41112e99d965000c97c45ebf7984d70c.tar.gz
STC-modified-1802558d41112e99d965000c97c45ebf7984d70c.zip
Fixed cqueue.h: cqueue_X_copy() was not defined inside a `c_no_clone` check.
Reverted to 2X expansion for cvec to compete with gcc speed.
Diffstat (limited to 'include/stc/cvec.h')
-rw-r--r--include/stc/cvec.h14
1 files changed, 7 insertions, 7 deletions
diff --git a/include/stc/cvec.h b/include/stc/cvec.h
index dc16e94a..12cd6875 100644
--- a/include/stc/cvec.h
+++ b/include/stc/cvec.h
@@ -94,13 +94,13 @@ STC_API _cx_iter _cx_MEMB(_binary_search_in)(_cx_iter it1, _cx_iter it2,
STC_INLINE void _cx_MEMB(_value_drop)(_cx_value* val) { i_keydrop(val); }
STC_INLINE _cx_value* _cx_MEMB(_push)(_cx_Self* self, i_key value) {
- if (self->_len == self->_cap)
- if (!_cx_MEMB(_reserve)(self, self->_len*3/2 + 4))
- return NULL;
- _cx_value *v = self->data + self->_len++;
- *v = value;
- return v;
-}
+ if (self->_len == self->_cap)
+ if (!_cx_MEMB(_reserve)(self, self->_len*2 + 4))
+ return NULL;
+ _cx_value *v = self->data + self->_len++;
+ *v = value;
+ return v;
+ }
#if !defined i_no_emplace
STC_API _cx_iter