687 Commits

Author SHA1 Message Date
Maya Warrier
cda25408bc Optimize char16_t parsing for digit_comparison.h 2023-04-02 00:33:52 -04:00
Maya Warrier
2d57c09530 Fixes 2023-04-01 23:29:00 -04:00
Maya Warrier
8a9a9d538a SIMD optimization to parse 8 char16_t at a time 2023-04-01 22:43:00 -04:00
Maya Warrier
f59f73c4da Disable simd-related warnings 2023-04-01 04:09:00 -04:00
Adam Lugowski
ca90e36413 Fix subnormal test fails on GCC 9 2023-03-31 17:09:36 -07:00
Daniel Lemire
fbd5bd712e Bumping version v4.0.0 2023-03-30 18:37:48 -04:00
Daniel Lemire
c6303d3593 Merge branch 'main' of github.com:fastfloat/fast_float 2023-03-30 18:36:18 -04:00
Daniel Lemire
d41d507e8c
Merge pull request #189 from alugowski/out_of_range
Set errc::result_out_of_range on over/underflow
2023-03-30 18:35:12 -04:00
Adam Lugowski
37127b022f Add subnormal numbers to powers of ten table
On some platforms std::pow returns 0 instead of a subnormal number with `-ffast-math -O2` compiler options.
2023-03-30 13:14:35 -07:00
Maya Warrier
20f3870361 Fixes 2023-03-30 04:58:22 -04:00
Maya Warrier
2b118c843a Experimental support for char_t types 2023-03-30 04:48:18 -04:00
Maya Warrier
a699476fd2 ignore VS CMakeSettings file 2023-03-30 04:47:42 -04:00
Maya Warrier
b6acf38a2e Fix bugs 2023-03-29 18:42:24 -04:00
Adam Lugowski
bfee511d78 Set errc::result_out_of_range on over/underflow
Best-effort values are still returned, such as 0 for underflow and infinity for overflow, but now the returned ec is set to std::errc::result_out_of_range instead of std::errc().
2023-03-29 10:14:46 -07:00
Maya Warrier
3cafcca2ff Add support for json parsing rules and integers 2023-03-29 02:14:12 -04:00
Maya Warrier
8f94758c78 Expose parsed string (before computation) so it can be reused 2023-03-27 22:50:21 -04:00
Maya Warrier
7385c2053b Update .gitignore 2023-03-27 22:17:02 -04:00
Daniel Lemire
fde0116d4d New version. 2023-03-27 13:53:18 -04:00
Daniel Lemire
0cdf016847
Merge pull request #188 from fastfloat/dlemire/compile_time
Compile-time evaluation
v3.11.0
2023-03-27 13:51:27 -04:00
Daniel Lemire
d7ba016c73 Fix. 2023-03-27 13:46:51 -04:00
Daniel Lemire
0394ea1fed Compile-time evaluation 2023-03-27 13:36:46 -04:00
Daniel Lemire
3ada7ca4d9
Merge pull request #187 from fastfloat/dlemire/enable_tests_automatically
If we detect that the compiler supports FASTFLOAT_IS_CONSTEXPR, then let us run the tests automatically.
2023-03-27 13:09:56 -04:00
Daniel Lemire
a662df817f If we detect that the compiler supports FASTFLOAT_IS_CONSTEXPR, then let us run the tests automatically. 2023-03-26 20:43:33 -04:00
Daniel Lemire
ab6c987ebc
Merge pull request #185 from fastfloat/dlemire/adding_more_cxx20_in_ci
Adding more CXX20 testing in CI.
2023-03-26 20:32:23 -04:00
Daniel Lemire
c8bba6ab29 Fix CI issue 2023-03-26 07:22:07 -04:00
Daniel Lemire
5a6b371739 Let us turn FASTFLOAT_CONSTEXPR_TESTS ON 2023-03-25 17:34:38 -04:00
Daniel Lemire
c52769174b Merge branch 'main' into dlemire/adding_more_cxx20_in_ci 2023-03-25 17:31:36 -04:00
Daniel Lemire
b50a729d93
Merge pull request #182 from leni536/constexpr-from_chars
Constexpr from_chars
2023-03-25 17:30:55 -04:00
Daniel Lemire
c09c855ea6
Merge pull request #186 from leni536/negative_zero_clang
Fix parsing -0 on clang in non-nearest rounding modes.
2023-03-25 16:03:13 -04:00
Lenard Szolnoki
5b8290433c Fix clang workaround for parsing -0 on non-nearest rounding mode 2023-03-25 19:38:44 +00:00
Lenard Szolnoki
360977f968 Add negative zero parsing test for all rounding modes.
This fails on clang.
2023-03-25 19:28:05 +00:00
Lenard Szolnoki
a1a7c4e3e0 Extend verify_options with constexpr test 2023-03-25 18:28:00 +00:00
Daniel Lemire
845d6575dc Adding more CXX20 testing in CI. 2023-03-24 14:24:38 -04:00
Lenard Szolnoki
e464bd7785 Replace memmove with copy_backward 2023-03-24 17:18:58 +00:00
Lenard Szolnoki
6bd1e776b2 Constexpr isnan 2023-03-24 16:35:25 +00:00
Lenard Szolnoki
24b2fdaad0 Separate verify and verify_runtime macros, extend constexpr checks
`verify` runs both runtime and constexpr checks if the constexpr checks
are enabled in cmake.

`verify_runtime` only runs the runtime checks.
2023-03-24 16:18:00 +00:00
Daniel Lemire
8cb0590c02
Merge pull request #184 from silvergasp/main
Adds a simple fuzz test
2023-03-12 20:50:58 -04:00
Nathaniel Brough
e702fba365 Adds simple fuzz test 2023-03-12 11:51:50 -07:00
Lenard Szolnoki
264414c0b0 Remove default capture with init-capture in hope of fixing MSVC build. 2023-03-12 15:17:14 +00:00
Lenard Szolnoki
612a7bf5eb Enable constexpr tests for VS17 c++20 build. 2023-03-12 11:40:20 +00:00
Lenard Szolnoki
d34d0d7405 Fix amalgamate.ph and add header for constexpr macros 2023-03-12 10:50:25 +00:00
Daniel Lemire
6a3fabc342 Preparing release 2023-03-06 21:02:19 -05:00
Daniel Lemire
eb8c001201
Merge pull request #183 from redis-performance/fix.parse_infnan.plus.inf
Added missing FASTFLOAT_ALLOWS_LEADING_PLUS ifdef check in parse_infnan
v3.10.1
2023-03-06 20:52:43 -05:00
filipecosta90
c8886eb31d Added missing FASTFLOAT_ALLOWS_LEADING_PLUS ifdef check in parse_infnan 2023-03-07 00:31:14 +00:00
Lenard Szolnoki
ffc3fd7cc7 Fix amalgamate.py script
This unfortunately puts fast_float.h as the second header,
possiby making the amalgamated header less readable.
2023-03-04 23:30:56 +00:00
Lenard Szolnoki
e05858a0f8 Work around clang bug.
https://godbolt.org/z/zedh7rrhc

This is similar to https://github.com/llvm/llvm-project/issues/47746,
except I needed to use a different workaround.
2023-03-04 23:02:15 +00:00
Lenard Szolnoki
6732e397d8 Add constexpr testing
When enabled, modify `verify` macro to also verify at compile time,
when the arguments are constant expressions.
2023-03-04 22:36:58 +00:00
Daniel Lemire
808cd24919
Merge pull request #181 from leni536/patch-1
Add my name to CONTRIBUTORS
2023-03-04 17:32:38 -05:00
Lenard Szolnoki
58798ee81f Fix failing test builds with -Werror=maybe-uninitialized on gcc
Apparently the added constexpr makes gcc's control flow analysis to go deeper.

If from_chars returns with error then the out parameter remains
uninitialized. As it's undefined behavior to use its value, it's better
to just skip the rest of the loop in this case.
2023-03-04 20:53:49 +00:00
Lenard Szolnoki
e4d4e43b21 Constexpr from_chars 2023-03-04 20:53:43 +00:00