diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/stc/cdeq.h | 6 | ||||
| -rw-r--r-- | include/stc/csmap.h | 2 | ||||
| -rw-r--r-- | include/stc/cvec.h | 6 |
3 files changed, 7 insertions, 7 deletions
diff --git a/include/stc/cdeq.h b/include/stc/cdeq.h index 41f8cea8..deff8965 100644 --- a/include/stc/cdeq.h +++ b/include/stc/cdeq.h @@ -74,7 +74,7 @@ STC_INLINE void cx_memb(_copy)(Self *self, Self other) { STC_INLINE cx_value_t* cx_memb(_emplace_back)(Self* self, i_valraw raw)
{ return cx_memb(_push_back)(self, i_valfrom(raw)); }
STC_INLINE void cx_memb(_pop_front)(Self* self)
- { i_valdel(self->data++); --cdeq_rep_(self)->size; }
+ { i_valdel(self->data); ++self->data; --cdeq_rep_(self)->size; }
STC_INLINE cx_value_t* cx_memb(_back)(const Self* self)
{ return self->data + cdeq_rep_(self)->size - 1; }
STC_INLINE cx_value_t* cx_memb(_front)(const Self* self) { return self->data; }
@@ -106,7 +106,7 @@ STC_INLINE cx_value_t* cx_memb(_emplace_front)(Self* self, i_valraw raw) { }
STC_INLINE void cx_memb(_pop_back)(Self* self) {
- i_valdel(&self->data[--cdeq_rep_(self)->size]);
+ size_t i = --cdeq_rep_(self)->size; i_valdel(&self->data[i]);
}
STC_INLINE cx_value_t* cx_memb(_at)(const Self* self, size_t idx) {
@@ -337,7 +337,7 @@ cx_memb(_erase_range_p)(Self* self, cx_value_t* p1, cx_value_t* p2) { size_t n = p2 - p1;
if (n > 0) {
cx_value_t* p = p1, *end = self->data + cdeq_rep_(self)->size;
- while (p != p2) i_valdel(p++);
+ while (p != p2) i_valdel(p), ++p;
if (p1 == self->data) self->data += n;
else memmove(p1, p2, (end - p2) * sizeof(i_val));
cdeq_rep_(self)->size -= n;
diff --git a/include/stc/csmap.h b/include/stc/csmap.h index e6838e22..3d9a935a 100644 --- a/include/stc/csmap.h +++ b/include/stc/csmap.h @@ -269,7 +269,7 @@ cx_MAP_ONLY( cx_memb(_insert_or_assign)(Self* self, i_key key, i_val mapped) {
cx_result_t res = cx_memb(_insert_entry_)(self, i_keyto(&key));
if (res.inserted) res.ref->first = key;
- else {i_keydel(&key); i_valdel(&res.ref->second); }
+ else { i_keydel(&key); i_valdel(&res.ref->second); }
res.ref->second = mapped; return res;
}
diff --git a/include/stc/cvec.h b/include/stc/cvec.h index 27aae8c3..06577cde 100644 --- a/include/stc/cvec.h +++ b/include/stc/cvec.h @@ -108,7 +108,7 @@ STC_INLINE cx_value_t* cx_memb(_back)(const Self* self) STC_INLINE cx_value_t* cx_memb(_emplace_back)(Self* self, i_valraw raw)
{ return cx_memb(_push_back)(self, i_valfrom(raw)); }
STC_INLINE void cx_memb(_pop_back)(Self* self)
- { i_valdel(&self->data[--cvec_rep_(self)->size]); }
+ { size_t i = --cvec_rep_(self)->size; i_valdel(&self->data[i]); }
STC_INLINE cx_iter_t cx_memb(_begin)(const Self* self)
{ return c_make(cx_iter_t){self->data}; }
STC_INLINE cx_iter_t cx_memb(_end)(const Self* self)
@@ -270,7 +270,7 @@ cx_memb(_resize)(Self* self, size_t len, i_val null_val) { cx_memb(_reserve)(self, len);
struct cvec_rep* rep = cvec_rep_(self);
size_t i, n = rep->size;
- for (i = len; i < n; ++i) i_valdel(self->data + i);
+ for (i = len; i < n; ++i) i_valdel(&self->data[i]);
for (i = n; i < len; ++i) self->data[i] = null_val;
if (rep->cap) rep->size = len;
}
@@ -328,7 +328,7 @@ cx_memb(_erase_range_p)(Self* self, cx_value_t* p1, cx_value_t* p2) { intptr_t len = p2 - p1;
if (len > 0) {
cx_value_t* p = p1, *end = self->data + cvec_rep_(self)->size;
- while (p != p2) i_valdel(p++);
+ while (p != p2) i_valdel(p), ++p;
memmove(p1, p2, (end - p2) * sizeof(i_val));
cvec_rep_(self)->size -= len;
}
|
