|
3 | 3 | // License, v. 2.0. If a copy of the MPL was not distributed with this |
4 | 4 | // file, You can obtain one at http://mozilla.org/MPL/2.0/. |
5 | 5 | // |
6 | | -// © H2O.ai 2018 |
| 6 | +// © H2O.ai 2018-2023 |
7 | 7 | //------------------------------------------------------------------------------ |
8 | 8 | #include <limits> |
9 | 9 | #include "read/constants.h" |
@@ -66,18 +66,7 @@ const uint8_t allowedseps[128] = { |
66 | 66 | }; |
67 | 67 |
|
68 | 68 |
|
69 | | -#if DT_OS_WINDOWS |
70 | | - #define LDBL(value) std::numeric_limits<double>::max() |
71 | | -#else |
72 | | - #define LDBL(value) value |
73 | | -#endif |
74 | | - |
75 | | -const long double pow10lookup[701] = { |
76 | | - 1.0E-350L, 1.0E-349L, 1.0E-348L, 1.0E-347L, 1.0E-346L, 1.0E-345L, 1.0E-344L, 1.0E-343L, 1.0E-342L, 1.0E-341L, |
77 | | - 1.0E-340L, 1.0E-339L, 1.0E-338L, 1.0E-337L, 1.0E-336L, 1.0E-335L, 1.0E-334L, 1.0E-333L, 1.0E-332L, 1.0E-331L, |
78 | | - 1.0E-330L, 1.0E-329L, 1.0E-328L, 1.0E-327L, 1.0E-326L, 1.0E-325L, 1.0E-324L, 1.0E-323L, 1.0E-322L, 1.0E-321L, |
79 | | - 1.0E-320L, 1.0E-319L, 1.0E-318L, 1.0E-317L, 1.0E-316L, 1.0E-315L, 1.0E-314L, 1.0E-313L, 1.0E-312L, 1.0E-311L, |
80 | | - 1.0E-310L, 1.0E-309L, 1.0E-308L, 1.0E-307L, 1.0E-306L, 1.0E-305L, 1.0E-304L, 1.0E-303L, 1.0E-302L, 1.0E-301L, |
| 69 | +const long double pow10lookup[601] = { |
81 | 70 | 1.0E-300L, 1.0E-299L, 1.0E-298L, 1.0E-297L, 1.0E-296L, 1.0E-295L, 1.0E-294L, 1.0E-293L, 1.0E-292L, 1.0E-291L, |
82 | 71 | 1.0E-290L, 1.0E-289L, 1.0E-288L, 1.0E-287L, 1.0E-286L, 1.0E-285L, 1.0E-284L, 1.0E-283L, 1.0E-282L, 1.0E-281L, |
83 | 72 | 1.0E-280L, 1.0E-279L, 1.0E-278L, 1.0E-277L, 1.0E-276L, 1.0E-275L, 1.0E-274L, 1.0E-273L, 1.0E-272L, 1.0E-271L, |
@@ -138,13 +127,8 @@ const long double pow10lookup[701] = { |
138 | 127 | 1.0E+270L, 1.0E+271L, 1.0E+272L, 1.0E+273L, 1.0E+274L, 1.0E+275L, 1.0E+276L, 1.0E+277L, 1.0E+278L, 1.0E+279L, |
139 | 128 | 1.0E+280L, 1.0E+281L, 1.0E+282L, 1.0E+283L, 1.0E+284L, 1.0E+285L, 1.0E+286L, 1.0E+287L, 1.0E+288L, 1.0E+289L, |
140 | 129 | 1.0E+290L, 1.0E+291L, 1.0E+292L, 1.0E+293L, 1.0E+294L, 1.0E+295L, 1.0E+296L, 1.0E+297L, 1.0E+298L, 1.0E+299L, |
141 | | - 1.0E+300L, 1.0E+301L, 1.0E+302L, 1.0E+303L, 1.0E+304L, 1.0E+305L, 1.0E+306L, 1.0E+307L, 1.0E+308L, LDBL(1.0E+309L), |
142 | | - LDBL(1.0E+310L), LDBL(1.0E+311L), LDBL(1.0E+312L), LDBL(1.0E+313L), LDBL(1.0E+314L), LDBL(1.0E+315L), LDBL(1.0E+316L), LDBL(1.0E+317L), LDBL(1.0E+318L), LDBL(1.0E+319L), |
143 | | - LDBL(1.0E+320L), LDBL(1.0E+321L), LDBL(1.0E+322L), LDBL(1.0E+323L), LDBL(1.0E+324L), LDBL(1.0E+325L), LDBL(1.0E+326L), LDBL(1.0E+327L), LDBL(1.0E+328L), LDBL(1.0E+329L), |
144 | | - LDBL(1.0E+330L), LDBL(1.0E+331L), LDBL(1.0E+332L), LDBL(1.0E+333L), LDBL(1.0E+334L), LDBL(1.0E+335L), LDBL(1.0E+336L), LDBL(1.0E+337L), LDBL(1.0E+338L), LDBL(1.0E+339L), |
145 | | - LDBL(1.0E+340L), LDBL(1.0E+341L), LDBL(1.0E+342L), LDBL(1.0E+343L), LDBL(1.0E+344L), LDBL(1.0E+345L), LDBL(1.0E+346L), LDBL(1.0E+347L), LDBL(1.0E+348L), LDBL(1.0E+349L), |
146 | | - LDBL(1.0E+350L) |
| 130 | + 1.0E+300L |
147 | 131 | }; |
148 | 132 |
|
149 | 133 |
|
150 | | -}} // namespace dt::read:: |
| 134 | +}} // namespace dt::read |
0 commit comments