Commit Graph

5044 Commits

Author SHA1 Message Date
Michael Winterberg
be48f4d657 Avoid unwanted sign extensions from MSVC in is_utf8.
Microsoft's constexpr evaluator treats the type of micro[0] and micro[1] as
plain char, and so sign extends before comparing them to ints.
The normal compiler, including the optimizer, does not fail in this way,
so this is merely a "future proof" change in case someone uses is_utf8()
in a constant expression.
2021-05-19 16:09:49 -07:00
Sergiu Deitsch
13e652939b export missed symbols
Enable `-fvisibility=hidden` and `-fvisibility-inlines-hidden` by default in CI builds to ensure all public symbols are exported correctly.
2021-05-19 16:03:45 -07:00
Jessy De Lannoit
71fb113818 fix compile error on msvc preview 4 (16.10) involving lookup clash /w STL 2021-05-19 13:17:20 -07:00
Victor Zverovich
08d22503bb Remove outdated comments 2021-05-19 11:47:21 -07:00
Victor Zverovich
56f518a98f Update signatures 2021-05-19 09:45:33 -07:00
Victor Zverovich
b7f2933744 Update signatures 2021-05-19 09:39:32 -07:00
Victor Zverovich
7483dfc652 Update signatures 2021-05-19 09:36:12 -07:00
Victor Zverovich
95c358f721 Improve separation between code unit types 2021-05-19 09:06:57 -07:00
Victor Zverovich
39c3c4ec22 Simplify the core API 2021-05-19 08:32:57 -07:00
Victor Zverovich
e9c1c415b8 Improve compile-time checks 2021-05-19 07:57:57 -07:00
Victor Zverovich
21d93bfd33 Move generic format functions to format.h 2021-05-18 19:01:43 -07:00
Victor Zverovich
9a92eb4158 Move more wchar overloads to wchar.h 2021-05-18 05:53:25 -07:00
Victor Zverovich
0dd91e20d5 Add wchar.h for wide char overloads 2021-05-17 21:59:10 -07:00
Victor Zverovich
ce14eafc24 Simplify format string checks 2021-05-17 19:25:50 -07:00
Victor Zverovich
8d70c0edab Refactor the format API 2021-05-17 18:25:36 -07:00
Victor Zverovich
813ac49543 More API cleanups 2021-05-17 07:58:13 -07:00
Victor Zverovich
4ab01fb198 Cleanup printf API 2021-05-17 07:19:50 -07:00
Victor Zverovich
d5036b11b1 Remove deprecated APIs 2021-05-17 06:59:46 -07:00
Victor Zverovich
2581946231 Cleanup the core API 2021-05-16 13:02:01 -07:00
Victor Zverovich
b35db4e006 Improve handling of 128-bit ints 2021-05-16 11:43:44 -07:00
Victor Zverovich
d35f1ad5c1 Cleanup core 2021-05-16 10:02:33 -07:00
Victor Zverovich
8f1902c05a Move format string checks to core.h 2021-05-16 07:08:49 -07:00
Daniela Engert
6469b9037c Silence msvc warning about an unused named parameter
Warning C4100 may cause compile failures under strict warning regimes.
2021-05-16 06:14:30 -07:00
Victor Zverovich
7d4c92fb00
Update ChangeLog.rst 2021-05-15 17:19:27 -07:00
Jussi Viiri
0763d8cadf Fix Visual Studio warning 2021-05-15 17:13:15 -07:00
Daniela Engert
5466373a11 Do *not* export namespace detail
Introduce `FMT_BEGIN_DETAIL_NAMESPACE` and `FMT_END_DETAIL_NAMESPACE` for `namespace detail` sections embedded in that part of the code that contains all declarations that are exported from the module, i.e. which is enclosed by `FMT_MODULE_EXPORT_BEGIN` and `FMT_MODULE_EXPORT_END`. Given a correct implementation of C++20 modules, neither the name `fmt::detail` nor any of its contents will become visible outside of the module.
2021-05-15 12:08:42 -07:00
Victor Zverovich
588bdb5404 Simplify get_arg_index_by_name 2021-05-15 06:47:43 -07:00
Alexey Ochapov
54f22a3eef add support for statically named arguments with FMT_STRING 2021-05-14 16:31:10 -07:00
Daniela Engert
ea94d6d93c Prevent ambiguity in name lookup
Unqualified calls to 'make_format_args' may find the same name by ADL in <format> if this C++20 header happens to be directly or indirectly included in a translation unit. Do a qualified lookup instead.
2021-05-14 07:10:02 -07:00
Victor Zverovich
57280762b6 Move specs checker to core.h 2021-05-13 19:33:09 -07:00
Victor Zverovich
ced3037523 Move dynamic specs to core.h 2021-05-13 19:01:21 -07:00
Victor Zverovich
dd2bc998ab Move specs to core.h 2021-05-13 18:48:15 -07:00
Victor Zverovich
08da1adcf6 Remove unused headers 2021-05-13 17:58:15 -07:00
Victor Zverovich
3be0cc2087 Fix handling of 128-bit ints 2021-05-13 17:53:23 -07:00
Daniela Engert
9648bdce30 add missing header 2021-05-13 05:39:18 -07:00
Victor Zverovich
d1aebdbde0 Inline format_to 2021-05-12 18:07:59 -07:00
Victor Zverovich
8f0fadfaaa Cleanup docs 2021-05-11 20:20:03 -07:00
Victor Zverovich
02896dabee Avoid use after move (#2278) 2021-05-11 16:58:07 -07:00
Владислав Щапов
0036a1d195 Fix issue #2274. 2021-05-10 15:57:23 -07:00
Владислав Щапов
2a9b314627 Replace fmt::error_code to std::error_code 2021-05-09 12:26:19 -07:00
Victor Zverovich
2165bef4ca
Update README.rst 2021-05-09 09:35:44 -07:00
Victor Zverovich
4862930845 Optimize format string compilation 2021-05-09 09:15:55 -07:00
Victor Zverovich
3207a8bbbf Get rid of unnecessary recursion to enable inlining 2021-05-09 07:54:13 -07:00
Victor Zverovich
6214f15a0c Optimize standard formatter specialization 2021-05-09 07:11:35 -07:00
Victor Zverovich
cd2c78fb8a Use write directly in formatter specializations 2021-05-09 07:07:51 -07:00
Владислав Щапов
4211d86539 Add a formatter specialization for std::error_code. 2021-05-09 06:29:39 -07:00
Victor Zverovich
39f28424ca Cleanup tests 2021-05-07 21:27:58 -07:00
Victor Zverovich
84feeb0f36 Remove redundant comments and put common case check first 2021-05-07 17:14:29 -07:00
Victor Zverovich
2665afb515 Cleanup add-subdirectory-test 2021-05-07 16:42:02 -07:00
Victor Zverovich
d0abe7c246 Make chrono formatting locale-independent by default 2021-05-07 16:14:10 -07:00