Skip to content

Commit 65fe3a0

Browse files
authored
Fix Clang compilation: make static functions inline (#92)
Add inline keyword to static functions in headers to comply with Clang's stricter ODR checks. This fixes compilation errors on macOS arm64 builds with Apple Clang.
1 parent 6c30dca commit 65fe3a0

1 file changed

Lines changed: 5 additions & 5 deletions

File tree

include/builders/util.hpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,8 @@ struct build_configuration {
6565
bool verbose;
6666
};
6767

68-
static uint64_t compute_avg_partition_size(const uint64_t num_keys,
69-
build_configuration const& config) //
68+
static inline uint64_t compute_avg_partition_size(const uint64_t num_keys,
69+
build_configuration const& config) //
7070
{
7171
uint64_t avg_partition_size = config.avg_partition_size;
7272
if (config.dense_partitioning) return avg_partition_size;
@@ -87,12 +87,12 @@ static uint64_t compute_avg_partition_size(const uint64_t num_keys,
8787
return avg_partition_size;
8888
}
8989

90-
static uint64_t compute_num_buckets(const uint64_t num_keys, const double avg_bucket_size) {
90+
static inline uint64_t compute_num_buckets(const uint64_t num_keys, const double avg_bucket_size) {
9191
assert(avg_bucket_size != 0.0);
9292
return std::ceil(static_cast<double>(num_keys) / avg_bucket_size);
9393
}
9494

95-
static uint64_t compute_num_partitions(const uint64_t num_keys, const double avg_partition_size) {
95+
static inline uint64_t compute_num_partitions(const uint64_t num_keys, const double avg_partition_size) {
9696
assert(avg_partition_size > 0);
9797
return std::ceil(static_cast<double>(num_keys) / avg_partition_size);
9898
}
@@ -397,4 +397,4 @@ double compute_empirical_entropy(std::vector<uint64_t> const& values) {
397397
return entropy;
398398
}
399399

400-
} // namespace pthash
400+
} // namespace pthash

0 commit comments

Comments
 (0)