in fatal/container/circular_queue.h [457:476]
void clear() noexcept {
for (auto chunk: chunks()) {
for(auto i = chunk.first; i < chunk.second; ++i) {
static_assert(
std::is_nothrow_destructible<value_type>::value,
"value_type must provide a noexcept destructor"
);
queue_[i].value.~value_type();
}
}
offset_ = 0;
size_ = 0;
static_assert(
noexcept(queue_.clear()),
"underlying container must provide a noexcept clear()"
);
queue_.clear();
}