Victor Zverovich
add164f6b3
Optimize the default FP formatting
2025-08-03 12:46:38 -07:00
Victor Zverovich
23059d558e
Fix exponent size computation
2025-08-03 10:00:24 -07:00
Victor Zverovich
505cc3d0c2
Simplify remove_trailing_zeros
2025-08-03 08:45:48 -07:00
Victor Zverovich
b8a502615d
Revert "Optimize the default FP formatting"
...
This reverts commit 93f03953af6b0268e1a29bb5b23d50f72b87a151.
2025-08-03 07:40:13 -07:00
Victor Zverovich
93f03953af
Optimize the default FP formatting
2025-07-27 08:56:07 -07:00
Dominic Pöschko
35dcc58263
fix buffer overflow on all emphasis flags set ( #4498 )
2025-07-20 10:43:33 -07:00
Catherine
553ec11ec0
Make compatible with WASI ( #4497 )
...
WASI is a POSIX subset that doesn't have `dup`, `dup2`, or `pipe` system calls.
Fixes #4496 .
2025-07-14 15:51:04 -07:00
Victor Zverovich
7d29ebe4af
Minor cleanup
2025-07-12 07:09:38 -07:00
anonymous
20c8fdad06
Fix import std in clang++ ( #4488 )
...
fix module-compilation error when defined `FMT_IMPORT_STD`
2025-07-07 11:47:48 -07:00
Victor Zverovich
300ce75ca6
Handle invalid glibc FILE buffer
2025-07-06 11:17:16 -07:00
Victor Chernyakin
2fa3e1a1bb
Fix interaction between debug presentation, precision, and width for strings ( #4478 )
2025-07-04 07:33:47 -07:00
Miuna
27c5aab349
Fix unwanted char promotion in decimal writer with wchar_t ( #4483 )
2025-07-01 07:03:57 -07:00
Miuna
353bd895a2
Add FMT_EXPORT on ranges.h customization points ( #4476 )
2025-06-24 10:30:44 -07:00
Tomek-Stolarczyk
953cffa701
Replace memset with constexpr fill_n in bigint::align ( #4471 )
...
Use fill_n in place of memset in bigint::align to respect constexpr.
2025-06-23 16:18:16 -07:00
Vladislav Shchapov
571c02d475
Add xchar support for std::byte formatter ( #4480 )
...
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
2025-06-23 14:02:11 -07:00
Remy Jette
f4345467fc
Fix compilation on clang-21 / libc++-21 ( #4477 )
...
`<cstdlib>` was not being included, so malloc and free were only declared
via transitive includes. Some includes changed in the latest libc++-21
build which broke fmt.
Also changed `malloc`/`free` to `std::malloc` and `std::free`, as
putting those symbols in the global namespace is optional for the
implementation when including `<cstdlib>`.
2025-06-21 07:28:14 -07:00
Victor Chernyakin
1ef8348070
Properly constrain detail::copy optimization ( #4474 )
2025-06-21 06:59:35 -07:00
Victor Chernyakin
067bc479b4
Avoid redundant work when processing UTF-8 strings ( #4475 )
2025-06-20 06:39:06 -07:00
Mikhail Svetkin
5860688d7e
Enable constexpr support for fmt::format (fmtlib#3403) ( #4456 )
2025-06-07 07:16:49 -07:00
Victor Zverovich
46be88bc1e
Cleanup FP formatting
2025-06-01 09:15:20 -07:00
Thomas Khyn
cc88914904
Export fmt::dynamic_format_arg_store in fmt module ( #4459 )
2025-06-01 08:50:14 -07:00
Victor Zverovich
fc0c76a075
Handle large precision
2025-06-01 08:49:41 -07:00
Victor Zverovich
6d51c78c1e
Cleanup FP formatting
2025-05-30 16:45:21 -07:00
Victor Zverovich
0f4e9d0bde
Cleanup FP formatting
2025-05-30 16:05:57 -07:00
Victor Zverovich
d9d50495ac
Optimize the default FP formatting
2025-05-30 13:45:04 -07:00
Victor Zverovich
befbc5fdb8
Fix ADL lookup for memory_buffer
2025-05-26 09:44:35 -07:00
Victor Zverovich
8aa1d6a9fb
Minor cleanup
2025-05-25 10:14:24 -07:00
Nikhil
6d79757a38
Interpret precision as display width ( #4443 )
2025-05-25 08:42:47 -07:00
Victor Zverovich
1ff0b7f5e1
Cleanup warning suppression
2025-05-24 09:37:01 -07:00
Edoardo Morandi
ea985e84f8
Remove some implicit conversions ( #4447 )
...
* fix: avoid an implicit cast
The "1" used for the bitshift is treated as int, and this causes an
implicit conversion to `UInt` when performing the logical and.
Explicitly casting the number to `UInt` avoids the warning.
* fix: avoid implicit conversions for indices
Some indices in `include/fmt/base.h` are expressed as `int` types, which
causes an implicit conversion to a `size_t` when they are actually used
as index. Explicitly casting the value avoids the warning.
* fix: avoid an implicit conversion using size_t
The number of bits is used to express the size of a buffer. Using an
`int` causes an implicit conversion warning, let's use a `size_t` which
is the right type for the job.
2025-05-24 09:22:03 -07:00
Andreas Reischuck
f7033da09e
Avoid include locale inline if C++20 modules are enabled ( #4451 )
...
MSVC hints with:
```
fmt\include\fmt\format-inl.h(26): warning C5244: '#include <locale>' in the purview of module 'fmt' appears erroneous. Consider moving that directive before the module declaration, or replace the textual inclusion with 'import <locale>;'.
```
Then fails the build with `type redefinition`.
2025-05-21 17:18:18 -07:00
Tobias Schlüter
b723c021df
Give useful error when misusing fmt::ptr. ( #4453 )
...
static_assert(bla, "") prints an empty message but not the condition with at least MSVC. Add an informative message.
2025-05-20 12:21:06 -07:00
Kefu Chai
ab161a71c6
Fix some typos in comments ( #4448 )
...
- s/instantion/instantiation/
- s/uninitalized/uninitialized/
- s/costexpr/constexpr/
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2025-05-15 06:28:14 -07:00
Victor Chernyakin
b5266fd3b9
Remove some redundant consts ( #4445 )
...
`constexpr` variables are implicitly `const`.
2025-05-12 10:41:58 -07:00
Victor Zverovich
07885271a1
Minor cleanup
2025-05-11 07:54:23 -07:00
Jeremy Rifkin
4999416e5c
Fix reference_wrapper ambiguity with format_as ( #4434 )
2025-05-10 11:15:45 -07:00
Victor Zverovich
d5c33e4f45
Make template parameter order consistent
2025-05-04 15:23:48 -07:00
Victor Zverovich
a2225f2887
Remove unused include
2025-05-04 15:16:38 -07:00
Victor Zverovich
b43b2f9537
Cleanup standard formatters
2025-05-04 13:04:06 -07:00
Victor Zverovich
1312b4a162
Cleanup standard formatters
2025-05-04 12:37:28 -07:00
Victor Zverovich
4404dc05dd
Consolidate implementation details
2025-05-04 10:48:47 -07:00
Victor Zverovich
7bb6fcb325
Bump version
2025-05-04 09:36:07 -07:00
Victor Zverovich
542ea7c40b
Clarify that Formatter parameter is deprecated
2025-05-03 10:28:46 -07:00
Victor Zverovich
7fdd6846ba
Bump version
2025-05-03 09:02:35 -07:00
Victor Zverovich
448929d491
Update and apply clang-format
2025-05-03 07:29:31 -07:00
Victor Zverovich
0ed2a65a8a
Clarify why we use __builtin_strlen instead of strlen
2025-04-27 11:08:27 -07:00
Victor Zverovich
2680831231
Cleanun string_view
2025-04-27 09:34:38 -07:00
Barry Revzin
8978ab09b2
Avoiding __builtin_strlen ( #4429 )
2025-04-27 09:32:10 -07:00
Victor Zverovich
c936e2e44e
Implement debug format for error_code
2025-04-27 09:06:17 -07:00
Victor Zverovich
a7d7b894cd
Implement the s specifier for error_code
2025-04-27 08:51:18 -07:00