Skip to content

Commit

Permalink
[libc] fix -Wmissing-braces (llvm#77345)
Browse files Browse the repository at this point in the history
Fixes the following errors observed on the aarch64 fullbuild:


/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/libc/src/__support/HashTable/generic/bitmask_impl.inc:116:13:
    error: suggest braces around initialization of subobject
    [-Werror,-Wmissing-braces]
return {static_cast<bitmask_t>(mask_available().word ^
repeat_byte(0x80))};
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{ }
    In file included from

/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/libc/src/search/hdestroy.cpp:10:

/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/libc/src/__support/HashTable/table.h:336:41:
    error: suggest braces around initialization of subobject
    [-Werror,-Wmissing-braces]
      iterator end() const { return {0, 0, {0}, *this}; }
                                            ^
                                            {}

Link:
https://lab.llvm.org/buildbot/#/builders/223/builds/33868/steps/6/logs/stdio
Link: llvm#74506
  • Loading branch information
nickdesaulniers authored Jan 8, 2024
1 parent 4c66180 commit c1023c5
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 2 deletions.
3 changes: 2 additions & 1 deletion libc/src/__support/HashTable/generic/bitmask_impl.inc
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,8 @@ struct Group {
}

LIBC_INLINE IteratableBitMask occupied() const {
return {static_cast<bitmask_t>(mask_available().word ^ repeat_byte(0x80))};
return {
{static_cast<bitmask_t>(mask_available().word ^ repeat_byte(0x80))}};
}
};
} // namespace internal
Expand Down
2 changes: 1 addition & 1 deletion libc/src/__support/HashTable/table.h
Original file line number Diff line number Diff line change
Expand Up @@ -333,7 +333,7 @@ struct HashTable {
return {0, full_capacity() - available_slots,
Group::load_aligned(&control(0)).occupied(), *this};
}
iterator end() const { return {0, 0, {0}, *this}; }
iterator end() const { return {0, 0, {BitMask{0}}, *this}; }

LIBC_INLINE ENTRY *find(const char *key) {
uint64_t primary = oneshot_hash(key);
Expand Down

0 comments on commit c1023c5

Please sign in to comment.