Arthur O'Dwyer
Arthur O'Dwyer
Microsoft STL added [[nodiscard]] on 2024-12-13; see https://github.com/microsoft/STL/pull/5174 martinmoene/expected-lite added [[nodiscard]] on 2024-12-10; see https://github.com/martinmoene/expected-lite/pull/74 See https://quuxplusone.github.io/blog/2024/12/08/should-expected-be-nodiscard/ for further rationale, if needed.
https://github.com/chromium/subspace/blob/f9c481a241961a7be827d31fadb01badac6ee86a/sus/mem/relocate.h#L60C7-L60C45 ``` template concept TriviallyRelocatable_impl = ~~~~ #if __has_extension(trivially_relocatable) || __is_trivially_relocatable(std::remove_all_extents_t) #endif ``` I was recently re-reminded that `__has_extension` isn't the best/right way to test for this (per @zygoloid's Dec...
This line uses CTAD on `pair`, when every other place in the codebase uses a function call to `make_pair` (and no other place uses CTAD on any class template at...
Consider fixing the few places that `-Wshadow` warns about. I see at least this one, before I added `-Wno-shadow` and stopped worrying about it. It would be nice not to...
- SetProxy is used as a proxy-reference type, so it should be const-assignable. This fixes -Wassign-to-class-rvalue by hinting to the compiler that it's okay to assign into a prvalue SetProxy:...
This requires the C++11 `override` keyword; but all major C++ compilers have defaulted to C++11 or later for quite a while now. (GCC since 2016; Visual Studio I think since...
No functional change, but this avoids relying on C++'s implicit conversion from `char*` to `bool`, preferring explicit comparison against NULL. This is the only place in ctemplate that currently relies...
I modified `tsl_hat_trie_tests` to count all its memory allocations (not footprint, just sum the size of every call to `operator new`), and observed a 1.5% reduction in memory allocations. That's...
This simplifies the codepaths after a4950fba. We can't use Clang's current `__builtin_is_cpp_trivially_relocatable(T)` for the same reason we continue to be unable to use Clang's current `__is_trivially_relocatable(T)`: it returns true for...