Commit Graph

3619 Commits

Author SHA1 Message Date
7dec7b63f3 alloc/chunked: add default copy and move operators
This addresses some deprecation warnings under clang.
2024-08-21 09:44:36 +10:00
8128632f1a iterator/zip: allow ranges with differing begin/end types 2024-08-10 14:19:25 +10:00
f141cb3e95 concepts: don't check end -> legacy_iterator in iterable
This doesn't work for sentinel ranges. Rather we mainly care that the
begin/end results can be compared.
2024-08-10 14:18:15 +10:00
e151d5c8c3 concepts/named: style 2024-08-10 14:18:08 +10:00
07dfd4ef3e fixed_string: manually copy string data to avoid <algorithm> 2024-08-10 14:17:23 +10:00
428e5c683d kmeans: work around an ICE in clang-19 tests 2024-08-06 14:49:36 +10:00
379837bbc7 registrar: use the correct member name during move construction
This fixes a build error under clang-19
2024-08-06 14:49:23 +10:00
4ffe636c30 ranges/chunk: remove the clang range_adaptor_closure workaround
clang-19 exposes range_adaptor_closure so this isn't necessary.
2024-08-06 14:47:55 +10:00
a856edeb2c kmeans: don't include the point header as it's unneeded 2024-08-06 14:47:21 +10:00
71d9a71b20 par/stack: use our own aligned_storage_t alternative
aligned_storage_t is deprecated and will generate warnings. Use a very
similar construct within the stack itself instead.
2024-08-06 14:46:18 +10:00
a73db2a75c build: convert aligned_storage_t to memcpy for small types
aligend_storage_t is deprecated in clang-19 and no longer compiles
cleanly (generates a warning). These locations don't benefit from any
fancy schemes, so just memcpy to a local var and return.
2024-08-06 14:44:47 +10:00
e43535c2a7 build: remove use of template member qualifiers
They aren't allowed by clang-19, and don't appear to be necessary for
currently supported compilers.
2024-08-06 14:43:22 +10:00
02e2262d0a fixed_string: add value_type and begin/end 2024-07-25 10:18:07 +10:00
0a7cd59eb9 ranges: add a (simplistic) implementation of chunk
Taken from the illustrative text at https://en.cppreference.com/w/cpp/ranges/chunk_view
2024-07-19 16:41:10 +10:00
738ba64101 build: add a conanfile for dependencies 2024-07-18 15:06:52 +10:00
6b1cbc4d73 Move source out of root and into the cruft directory 2024-07-18 12:27:05 +10:00
edf10a77c8 cpuid: don't build this tool for Windows
There is a lot of topology, scheduling, and affinity code in here that
doesn't currently translate to Windows. Just don't build it right now.
2024-05-14 14:57:52 +10:00
ed4ad99851 fixed_string: add string_view operator 2024-03-04 11:45:59 +10:00
eef192ab3c string: remove deprecated wstring to_uft8 convertors
The `codecvt` routines are deprecated, and this code is entirely
untested.
2024-02-21 14:56:05 +10:00
1672020ebb posix/flock: disable this class if under Windows 2024-02-21 14:55:29 +10:00
cd84d863c2 fs/tmp: make temp queries and path generator more robust 2024-02-21 14:54:53 +10:00
48e71ce0dd tools/cpuid: add cache topology detection 2024-02-21 14:54:15 +10:00
14c9a103ef cpuid/x86: minor type formatting 2024-02-21 14:53:24 +10:00
db4d75bb1c backtrace: use fmtlib formatters for output 2024-02-21 14:52:50 +10:00
9804306f13 log: use format_string to pass format specifiers 2023-11-19 09:39:15 +10:00
6f17da5e59 format/quoted: avoid vformat for tests 2023-11-19 09:39:15 +10:00
2f2dfd1423 tools/log: accept only a single string
This tool is only meant for testing purposes and it's far simpler to
only support a single string commandline argument.
2023-11-19 09:37:05 +10:00
3feca52a87 endian: add fmt::formatter for value 2023-11-19 09:36:30 +10:00
da8df2297d uri: add fmt::formatter for uri and component 2023-11-19 09:36:13 +10:00
b0adff1c87 endian: force alignment with underlying type in value 2023-11-19 09:34:27 +10:00
0ce69083e6 cast: disable warnings for function casts in ffs
Vulkan presents a few function pointers as (void*)(*)(void*) or
something like that, and we have to cast these to the extension
signatures.

This fixes some errors under clang-17
2023-11-19 09:27:12 +10:00
19095934b2 build: don't use a space in user string literals
This fixes errors in clang-17
2023-11-19 09:26:37 +10:00
ff1fcfa977 build: move from PythonInterp to Python3
CMake has removed PythonInterp; see CMP0148
2023-10-11 10:55:05 +10:00
712eb837b1 debug/system: include missing header
<exception> is required for std::current_exception
2023-10-11 10:54:33 +10:00
a436504d27 fixed_string: add a size query 2023-08-10 12:15:34 +10:00
de40f961e3 hash/tuple: add is_transparent 2023-07-25 10:00:45 +10:00
e02a4e2594 hash/{std,tuple}: operators should be const 2023-07-25 10:00:30 +10:00
ef309fd4de hash/std: add a trivial adapter for std::hash 2023-07-24 13:09:06 +10:00
c011b2177c hash/tuple: add a std compatible tuple hashing object 2023-07-24 12:56:19 +10:00
cb06fb9b29 hash/mix: add a simple std compatible wrapper for hash::mix 2023-07-24 12:55:48 +10:00
db95fd532b halfsipmix: remove unused variable warning 2023-07-21 14:22:14 +10:00
5b64b207da string: correct spelling of pragma ignored 2023-07-21 14:21:42 +10:00
5ca101acf3 maths: add sum helper for containers 2023-07-21 14:21:18 +10:00
1fa4eba5d3 Add fmt::formatter specialisations for fmtlib-10 2023-07-21 14:20:49 +10:00
343b3d36ce alloc/malloc: remember to check memalign return value 2023-07-21 14:19:39 +10:00
aaa00bc989 format: add 'quoted' helper function that emulates std::quoted 2023-07-21 14:19:18 +10:00
fffd584c93 iterator/counting: allow copying of iterator 2023-07-13 06:45:47 +10:00
e7a2c18481 string: use static operator() for simple transform equality functors 2023-07-04 11:21:07 +10:00
d0cc65db50 string: correct spelling of "deprecated-declarations" 2023-05-15 11:32:34 +10:00
3efa7c2251 cpuid/x86: prefer string_view to view for output 2023-05-15 11:04:37 +10:00