Victor Zverovich
97cc889374
Workaround a visit lookup issue in gcc 8 ( #851 )
2018-09-12 08:45:14 -07:00
Victor Zverovich
7110b46076
Optimize default formatting
2018-09-12 08:45:14 -07:00
Victor Zverovich
c8a8464f7d
Optimize buffer construction
2018-09-12 08:45:14 -07:00
medithe
8cbfb6e727
Get rid of conversion warning in gcc-4.8 ( #854 )
...
Get rid of conversion warning in gcc-4.8
Get rid of the following warning:
conversion to ‘int’ from ‘long unsigned int’ may alter its value [-Werror=conversion]
2018-09-11 06:14:39 -07:00
Victor Zverovich
6ffc828a79
Phasing out null_terminating_iterator
2018-09-10 06:51:38 -07:00
Victor Zverovich
aeb6add336
Skip strchr for the common case
2018-09-09 09:08:41 -07:00
Victor Zverovich
5614289dd8
Optimize and simplify format string parsing
2018-09-09 08:41:27 -07:00
Victor Zverovich
10c7f89351
Optimize format string processing on dumb compilers
2018-09-09 08:13:06 -07:00
Victor Zverovich
59c268a5f8
Use strlen when possible since it's constexpr on gcc
2018-09-08 16:17:22 -07:00
Victor Zverovich
918bb1ce8f
Optimize argument capture
2018-09-08 15:29:32 -07:00
Victor Zverovich
a3ba6b4f62
Disable the fmt(...) macro by default ( #853 )
2018-09-08 09:55:41 -07:00
Victor Zverovich
8671689449
Update docs and formatting
2018-09-08 09:06:54 -07:00
Victor Zverovich
cc10b4607f
Make format_to faster on older gcc
2018-09-08 07:22:29 -07:00
medithe
981797f059
Get rid of implicit-fallthrough warn. in GCC 7 and 8
...
This change enables FMT_FALLLTHROUGH also for GCC-Compilers in the versions 7 and 8.
2018-09-07 12:43:32 -07:00
Victor Zverovich
2117775747
Micro-optimize parsing
2018-09-05 07:10:50 -07:00
Victor Zverovich
be0e268468
Optimize processing of trailing '}'
2018-08-31 15:34:31 -07:00
Victor Zverovich
fbc38b9083
Pass heavy arguments by ref
2018-08-31 15:17:18 -07:00
Victor Zverovich
8dc69b9da9
Workaround a bug in Intellisense
2018-08-29 20:40:54 -07:00
Victor Zverovich
1489d3b7fa
Implement exponential notation
2018-08-29 18:55:57 -07:00
Victor Zverovich
dd8c5ce442
Implement more FP formatting options
2018-08-29 09:34:57 -07:00
Victor Zverovich
802ff8866e
Fix compilation of time.h when localtime_t is a macro ( #843 )
2018-08-29 06:40:54 -07:00
medithe
95a718992c
Remove conversion compiler warnings ( #844 )
...
* Remove conversion compiler warning
When compiling with g++8, I get the following two errors:
include/fmt/format-inl.h:400:29: error: conversion from ‘int’ to ‘char’ may change value [-Werror=conversion]
buffer[size++] = zero + static_cast<char>(digit);
~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
include/fmt/format-inl.h:416:28: error: conversion from ‘int’ to ‘char’ may change value [-Werror=conversion]
buffer[size++] = '0' + digit;
~~~~^~~~~~~
With this change, the errors are gone.
2018-08-29 06:38:56 -07:00
Victor Zverovich
e483a01a0f
Implement some formatting options in Grisu
2018-08-27 17:51:49 -07:00
Victor Zverovich
f51080916e
Revert "Implement some formatting options in Grisu"
...
This reverts commit 2a952dd0b2
.
2018-08-27 17:51:27 -07:00
Victor Zverovich
2a952dd0b2
Implement some formatting options in Grisu
2018-08-26 09:51:49 -07:00
Victor Zverovich
0de44a469a
Implement exponent formatting
2018-08-26 08:12:35 -07:00
Victor Zverovich
f0d0a1ebd7
Implement Grisu2 digit generation
2018-08-25 20:45:50 -07:00
Victor Zverovich
569ac91e0b
Implement Grisu boundary computation
2018-08-25 11:39:38 -07:00
Victor Zverovich
a11eb3a090
Workaround various icc bugs ( #822 )
2018-08-22 09:07:17 -07:00
Victor Zverovich
62010520ed
Disable gnu-string-literal-operator-template warning
2018-08-22 08:12:59 -07:00
Victor Zverovich
987514761e
Make convert_to_int public ( #818 )
2018-08-22 07:40:06 -07:00
Thomas Bernard
abde38b4fb
Add compilation support with Newlib nano for embedded targets
...
Remove the dependency on std::locale to reduce executable sizes
For embedded target the usage of locale bring a huge amount of code to the executable, just to get hold of the thousands separator. Using a static defined thousands separator makes libfmt embedded target friendly.
2018-08-19 07:40:34 -07:00
Elias Daler
18400503da
Fix C4127 warning in basic_writer<Range>::write_double
2018-08-17 07:36:38 -07:00
Victor Zverovich
9de312112a
Reformat and add a comment
2018-08-15 06:54:43 -07:00
Victor Zverovich
8b9fb9fb7e
Fix ambiguous instantiation with formatter in fmt/ostream.h ( #830 )
2018-08-11 09:13:54 -07:00
medithe
4b868b8922
Re-enable compile-time format-string checking
...
Since the commit 691a7a9
compile-time string checking was accidently not possible anymore.
With this change, it should be possible again.
2018-08-07 07:43:47 -07:00
Victor Zverovich
4061a0d35d
Parameterize vformat to support custom char types
2018-08-05 10:44:59 -07:00
Victor Zverovich
c68bab7014
Remove broken fmt::internal::format_enum ( #818 )
2018-08-01 07:11:53 -07:00
Victor Zverovich
ce19309d09
Workaround a bug in icc 15
2018-07-26 07:59:41 -07:00
Victor Zverovich
c684349195
Move contiguous version of format_to to fmt/core.h
2018-07-22 18:09:22 -07:00
Victor Zverovich
8db14efa84
util-test -> core-test and minor cleanup
2018-07-22 17:05:23 -07:00
Victor Zverovich
ffe414cad1
Add compile-time format string checks to format_to ( #783 )
2018-07-22 15:30:51 -07:00
Victor Zverovich
c178ab440f
Remove FMT_USE_RVALUE_REFERENCES
2018-07-22 15:07:53 -07:00
Victor Zverovich
5befe6584d
Remove fmt/folly.h and clean up core API
2018-07-22 14:42:25 -07:00
Victor Zverovich
35538ca66c
Merge more format overloads
2018-07-22 12:24:47 -07:00
Victor Zverovich
4f16409730
Merge format overloads using SFINAE
2018-07-22 08:06:42 -07:00
Victor Zverovich
2a4e948864
Add UTF-8 types
2018-07-22 06:36:21 -07:00
MikePopoloski
7b4f170c94
Fix warning about using old-style cast
2018-07-20 17:07:23 -07:00
MikePopoloski
b1d10a2884
Add support for dynamic arg sets
...
This allows construction of basic_format_args from a dynamic set of arguments. The syntax is a little clunky and could probably be improved but this at least enables the functionality.
2018-07-20 17:07:23 -07:00
Victor Zverovich
cf2719bd12
Add support for types explicitly convertible to wstring_view
2018-07-18 19:12:10 -07:00
Victor Zverovich
73bed45b7a
Add support for types explicitly convertible to fmt::string_view
2018-07-18 14:42:26 -07:00
Victor Zverovich
6eaa507473
Fix global initialization issue ( #807 )
2018-07-18 09:49:21 -07:00
Victor Zverovich
48dff9f3c5
Update docs
2018-07-18 06:44:46 -07:00
Victor Zverovich
a9e261599b
Minor cleanup
2018-07-17 08:54:22 -07:00
Victor Zverovich
8615ff2acc
Micro-optimize argument retrieval
2018-07-15 07:28:31 -07:00
Victor Zverovich
916ed99dab
Micro-optimize argument retrieval
2018-07-14 15:28:55 -07:00
Victor Zverovich
e7e9578ed4
Optimize format string parsing
2018-07-14 14:27:56 -07:00
Victor Zverovich
c99a259739
Mark new functions with FMT_API ( #808 )
2018-07-14 07:43:16 -07:00
Victor Zverovich
e0f6a2f8be
Add a formatter for folly::StringPiece
2018-07-14 07:31:47 -07:00
Alexej Harm
a317448bd4
Keep noexcept specifier when exceptions are disabled.
2018-07-13 12:46:15 -07:00
Marek Kurdej
2a4cd6d05e
Fix the returned value of format_to_n
with user-defined types having operator<<.
2018-07-10 14:01:12 -07:00
Henry Schreiner
9c32e73abf
Fixing return unreachable warning on NVCC
2018-07-09 21:33:10 -07:00
gabime
e5c93108e6
Added clear() to basic_buffer
2018-07-09 20:25:49 -07:00
Victor Zverovich
f66ba6508a
Optimize format string parsing
2018-07-08 10:15:24 -07:00
Victor Zverovich
f21268aa72
Revert "Optimize format string parsing" because of a bug in MSVC
...
https://godbolt.org/g/rpiDgh
This reverts commit f9e9bf0231
.
2018-07-08 08:08:50 -07:00
Victor Zverovich
f9e9bf0231
Optimize format string parsing
2018-07-07 16:50:22 -07:00
Florin Iucha
e6362642cf
Fix pedantic conversion warning
2018-07-04 17:45:28 -07:00
Victor Zverovich
479ee2a8c6
Fix MSVC build, take 2
2018-07-04 14:24:07 -07:00
Victor Zverovich
e928b6724c
Fix MSVC 2013 build
2018-07-04 12:33:15 -07:00
Dhruv Paranjape
ec218a3ad1
Fix redefinition warning for RESET_COLOR
2018-07-04 07:52:19 -07:00
Victor Zverovich
c04fb91b03
Fix handling of user-defined types in format_to ( #793 )
2018-07-04 07:40:56 -07:00
Jonathan Müller
c6d9730ddb
Fix sign conversion warnings ( #790 )
2018-06-27 14:31:20 +02:00
Victor Zverovich
2e95823ef7
Move new color support to format.h and mark old as deprecated
2018-06-24 06:39:22 -07:00
Victor Zverovich
ab2d88ca8e
Make format_to work with basic_memory_buffer ( #776 )
2018-06-23 08:29:26 -07:00
Victor Zverovich
3abd036c47
Fix compilation on gcc 4
2018-06-23 07:18:59 -07:00
Victor Zverovich
c2f3805488
Add vformat_to_n ( #769 )
2018-06-23 07:03:00 -07:00
Remotion
ce500635c7
Renamed enum color to colors.
...
Added enum colors conversion to rgb struct.
Added colors_test.cpp.
Removed print_colored.
Renamed enum colors back to color.
Removed unnecessary inline keyword.
Removed print_rgb.
2018-06-23 06:14:44 -07:00
Victor Zverovich
0508bbc7ae
Add wchar_t overload of format_to_n ( #764 )
2018-06-13 08:24:32 +02:00
gabime
c2fbadb9cf
Fixed issue #779
2018-06-12 07:39:44 +02:00
Remotion
47268ecd80
Fixed GCC version test
2018-06-10 20:35:38 +02:00
Victor Zverovich
9ff3b6af2e
Fix handling of compile-time strings when including ostream.h ( #768 )
2018-06-10 19:05:27 +02:00
Victor Zverovich
e3707ef14b
Document that file should be in wide-oriented mode for wide print
2018-06-09 09:12:49 +02:00
Victor Zverovich
45fa4ee949
Merge branch 'master' of github.com:fmtlib/fmt
2018-06-08 21:43:56 +02:00
Remotion
9c07b37fff
Using enum class now.
...
Renamed from hex to color.
Changed colr names to snake case.
2018-06-08 21:40:35 +02:00
Remotion
5b5886a993
Fixed line length.
2018-06-08 19:48:41 +02:00
Remotion
d2bfee13e2
Added quotes for strings in ranges and tuple likes.
2018-06-08 19:48:41 +02:00
Remotion
aff6e45e14
Added support for rgb color output.
2018-06-07 22:49:16 +02:00
Victor Zverovich
1b8a7f8fa0
Fix postincrement in truncating and counting iterators
2018-06-07 20:20:36 +02:00
Victor Zverovich
4bc26f0a7b
Merge branch 'master' of github.com:fmtlib/fmt
2018-06-07 18:42:30 +02:00
Victor Zverovich
fc6e0fe992
Fix FP formatting to a non-back_insert_iterator with sign & numeric alignment ( #756 )
2018-06-07 18:41:40 +02:00
Dror Levin
cd5b5670ba
Make is_range and is_tuple_like public API, fix #751
2018-06-06 21:49:14 +02:00
Victor Zverovich
6322b47e60
Minor cleanup
2018-06-06 16:51:35 +02:00
Elias Kosunen
691a7a91a1
Add more compilers to CI and increase FMT_PEDANTIC warning levels ( #736 )
...
* Add a _lot_ more warnings to FMT_PEDANTIC
Fix these warnings
* Add more compilers to CI
Fix (some) of the compiler errors with them
* Enable -Werror on CI
Increase warning level on MSVC when compiling with FMT_PEDANTIC
* Add VS 2013 and 2015 to Appveyor
* Fix Appveyor tests
Formatting
* Implement requested changes
Fix some of the MSVC warnings
Implement C++11 integer_sequence
* Reintroduce appveyor-build.py
* Remove ranges-test from tests
* Remove (some) explicit warning suppressions
Fix C++ standard setting in CI
* Remove (some) explicit warning suppressions
Fix C++ standard setting in CI
* Fix test builds with C++11
* Enable pedantic warnings on tests
* Fix warnings from edits to master
* Cleanups
* Add C++11 support to ranges.h
Re-enable ranges-test
Fix a Visual Studio error about function not returning a value in printf.h
Fix a bug in .travis.yml
2018-06-06 15:57:59 +02:00
Victor Zverovich
d5c462596b
Fix formatting of more than 15 named arguments ( #754 )
2018-06-05 08:32:28 +02:00
Victor Zverovich
47d147b65d
Simplify the nvcc warning fix
2018-06-04 21:27:20 +02:00
Victor Zverovich
911a75114b
Fix nvcc warnings ( #752 )
2018-06-04 21:00:28 +02:00
Victor Zverovich
252f11f85d
Fix a bogus MSVC warning about unreachable code, take 2
2018-06-04 18:17:55 +02:00
Victor Zverovich
81d5663825
Fix more bogus MSVC warnings about unreachable code ( #748 )
2018-06-04 06:10:52 +02:00
Victor Zverovich
68f0ac8271
Fix a bogus MSVC warning about unreachable code
2018-06-03 08:03:56 +02:00
Victor Zverovich
b60a5c5d49
Improve floating-point formatting
2018-05-28 20:16:30 -07:00
Victor Zverovich
8dc2360b11
Fix a comment
2018-05-28 17:21:39 -07:00
Victor Zverovich
4e4b8570e5
Implement simple version of Grisu
2018-05-28 11:25:07 -07:00
Victor Zverovich
5c32aa411c
Workaround a bug in MSVC
2018-05-27 11:18:27 -07:00
Victor Zverovich
468c243ca8
Add a function to get cached power of 10
2018-05-27 10:57:26 -07:00
Victor Zverovich
2f257b7291
Implement normalization and simplify power table
2018-05-27 08:04:30 -07:00
Victor Zverovich
e282d963fe
Bump version
2018-05-26 09:46:59 -07:00
Victor Zverovich
e2cd521b8f
Fix incorrect call to on_align in '{:}=' ( #750 )
2018-05-26 09:23:09 -07:00
Victor Zverovich
fba352a92a
Don't use UDL templates on Intel C++ compiler ( #742 )
2018-05-26 08:07:45 -07:00
Victor Zverovich
147807c911
Detect integer_sequence support on MSVC
2018-05-21 20:30:58 -07:00
Victor Zverovich
5ad54256c5
Fix a conflict between fmt::join and fmt/ostream.h ( #744 )
2018-05-21 20:21:06 -07:00
Victor Zverovich
6ebc1a967d
Merge locale.h into format-inl.h
2018-05-20 17:16:34 -07:00
Victor Zverovich
edd5f1445d
Fix compilation errors on gcc 4.4
2018-05-20 09:09:03 -07:00
Victor Zverovich
936aba5f90
Fix compilation errors on gcc 4.4
2018-05-20 07:42:09 -07:00
Victor Zverovich
b76bb79613
Improve naming consistency
2018-05-19 10:32:53 -07:00
Victor Zverovich
69823bf852
Improve naming consistency
2018-05-19 08:59:37 -07:00
Victor Zverovich
d940fa679c
Disable unsafe implicit conversion to std::string ( #729 )
2018-05-19 07:14:27 -07:00
Michael Winterberg
550ef1d29d
MSVC improvements and data truncation cleanup.
...
MSVC is timid about evaluating constexpr functions unless it has to, so the "TYPES" variables end up in read-write memory even though the optimizer removes the initializer. Making TYPES constexpr causes MSVC to try harder to initialize these variables at compile time, which also ends up completely removing the (named) variable from the final compiled binary.
Fixed a data truncation warning being reported in ostream-test.
2018-05-17 18:46:31 -07:00
Victor Zverovich
728e4f5a8d
Fix docs
2018-05-16 08:26:55 -07:00
Victor Zverovich
8c2557710d
Update docs and changelog
2018-05-16 07:58:53 -07:00
Remotion
e3f7f3a2e9
Add support for ranges, containers and tuple-like types in fmt/ranges.h
2018-05-13 13:28:11 -07:00
Victor Zverovich
ad23270ec7
Document to_wstring
2018-05-13 09:11:29 -07:00
Victor Zverovich
989378930a
Detect inline namespaces on gcc
2018-05-13 08:53:04 -07:00
Victor Zverovich
6a1df3bd05
Fix docs
2018-05-12 12:57:16 -07:00
Victor Zverovich
838400d29b
Add inline namespace fmt::v5
2018-05-12 11:02:15 -07:00
Victor Zverovich
46c374a8a9
Fix compilation with new gcc and -std=c++11 ( #734 )
2018-05-09 20:58:05 -07:00
Elias Kosunen
a4e4f74530
Fix a -Wundef when FMT_GCC_VERSION < 600
2018-05-09 06:09:25 -07:00
Victor Zverovich
7d3de49715
Implement double to fp conversion
2018-05-06 13:37:49 -07:00
Victor Zverovich
a4c7d99f70
Add bit_cast
2018-05-06 11:52:51 -07:00
Elias Kosunen
0adccaefb6
Fix a -Wundef of _LIBCPP_VERSION
2018-05-05 07:43:22 -07:00
Daniela Engert
2570f1afdc
Provide more overloads for the wide string flavour
...
Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-05-05 07:31:44 -07:00
Michael Winterberg
ca31ca13f1
Fixed arg_formatter_base::write_pointer to not mutate the format specs.
...
This fixes cases where arg_formatters are reused, like with arg_join.
2018-05-01 07:12:27 -07:00
Daniela Engert
6cd666100f
remove trailing spaces.
...
Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-05-01 07:10:05 -07:00
Victor Zverovich
fe19c266ce
Move format_string to fmt namespace for ADL
2018-04-29 08:35:20 -07:00
Victor Zverovich
2768af2388
Add cached powers of 10
2018-04-29 06:33:05 -07:00
DanielaE
0efc8a1808
Fix compiler warning about narrowing
...
Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-04-27 06:41:43 -07:00
Victor Zverovich
221b08fd8f
Merge branch 'master' of github.com:fmtlib/fmt
2018-04-22 09:16:34 -07:00
Victor Zverovich
fa9066fe3e
context_base::begin -> out
2018-04-22 09:16:32 -07:00
Elias Kosunen
90ff31b38e
Fix a -Wundef warning on clang
...
Resolves #715
2018-04-22 09:13:55 -07:00
Victor Zverovich
b1f68c43b5
Merge branch 'master' of github.com:fmtlib/fmt
2018-04-21 19:21:41 -07:00
Victor Zverovich
cd90097ca4
Implement handmade FP
2018-04-21 17:26:24 -07:00
Victor Zverovich
822eccc3b8
Sync API with standards proposal
2018-04-21 14:29:24 -07:00
Daniela Engert
2ae41242a5
allow time formatting with wchar_t contexts
...
change total specialization of 'struct formatter<std::tm>' into partial specialization 'template <typename Char> struct formatter<std::tm, Char>', backed by matching 'strftime'-like overloads
2018-04-18 18:55:49 -07:00
Victor Zverovich
e80aba1c2b
Remove format_float stub
2018-04-14 12:40:53 -07:00
Victor Zverovich
7b8cb3135a
Make context_base::args() public
2018-04-14 12:40:26 -07:00
Christian Parpart
48ae0506de
fixes MSVC compiler warning bloat (Visual Studio 2017, latest updates)
2018-04-11 06:53:27 -07:00
Victor Zverovich
096c4051b2
Simplify char_traits
2018-04-08 13:38:12 -07:00
Victor Zverovich
7610c5362a
Remove unused macro
2018-04-08 11:54:22 -07:00
Victor Zverovich
7d28674d3a
make_args -> make_format_args
2018-04-08 07:21:26 -07:00
Victor Zverovich
9382b76f2a
context_t -> format_context_t
2018-04-08 07:09:34 -07:00
Victor Zverovich
fd0b07a75a
(w)context -> (w)format_context
2018-04-08 07:03:44 -07:00