Minor clean up

This commit is contained in:
gingerBill
2024-04-26 13:25:08 +01:00
parent 7305478261
commit a3e77dcc3b
3 changed files with 17 additions and 10 deletions
+10 -6
View File
@@ -4309,17 +4309,21 @@ gb_internal bool correct_single_type_alias(CheckerContext *c, Entity *e) {
gb_internal bool correct_type_alias_in_scope_backwards(CheckerContext *c, Scope *s) { gb_internal bool correct_type_alias_in_scope_backwards(CheckerContext *c, Scope *s) {
bool correction = false; bool correction = false;
u32 n = s->elements.count; for (u32 n = s->elements.count, i = n-1; i < n; i--) {
for (u32 i = n-1; i < n; i--) { Entity *e = s->elements.entries[i].value;
correction |= correct_single_type_alias(c, s->elements.entries[i].value); if (e != nullptr) {
correction |= correct_single_type_alias(c, e);
}
} }
return correction; return correction;
} }
gb_internal bool correct_type_alias_in_scope_forwards(CheckerContext *c, Scope *s) { gb_internal bool correct_type_alias_in_scope_forwards(CheckerContext *c, Scope *s) {
bool correction = false; bool correction = false;
u32 n = s->elements.count; for (auto const &entry : s->elements) {
for (isize i = 0; i < n; i++) { Entity *e = entry.value;
correction |= correct_single_type_alias(c, s->elements.entries[i].value); if (e != nullptr) {
correction |= correct_single_type_alias(c, entry.value);
}
} }
return correction; return correction;
} }
+4 -3
View File
@@ -2,8 +2,8 @@ GB_STATIC_ASSERT(sizeof(MapIndex) == sizeof(u32));
struct StringHashKey { struct StringHashKey {
u32 hash;
String string; String string;
u32 hash;
operator String() const noexcept { operator String() const noexcept {
return this->string; return this->string;
@@ -329,11 +329,12 @@ gb_internal StringMapEntry<T> const *begin(StringMap<T> const &m) noexcept {
template <typename T> template <typename T>
gb_internal StringMapEntry<T> *end(StringMap<T> &m) { gb_internal StringMapEntry<T> *end(StringMap<T> &m) noexcept {
return m.entries + m.count; return m.entries + m.count;
} }
template <typename T> template <typename T>
gb_internal StringMapEntry<T> const *end(StringMap<T> const &m) noexcept { gb_internal StringMapEntry<T> const *end(StringMap<T> const &m) noexcept {
return m.entries + m.count; return m.entries + m.count;
} }
+3 -1
View File
@@ -208,7 +208,9 @@ gb_internal void string_set__erase(StringSet *s, MapFindResult fr) {
} }
auto *entry = &s->entries[fr.entry_index]; auto *entry = &s->entries[fr.entry_index];
*entry = s->entries[s->entries.count-1]; *entry = s->entries[s->entries.count-1];
StringHashKey key = {entry->hash, entry->value}; StringHashKey key;
key.hash = entry->hash;
key.string = entry->value;
last = string_set__find(s, key); last = string_set__find(s, key);
if (last.entry_prev != MAP_SENTINEL) { if (last.entry_prev != MAP_SENTINEL) {
s->entries[last.entry_prev].next = fr.entry_index; s->entries[last.entry_prev].next = fr.entry_index;