@@ -155,6 +155,16 @@ const struct test fcvtf_tests[] = {
155
155
#define SKIP_LONG_FLOAT 0
156
156
#endif
157
157
158
+ #if (!defined(TINY_STDIO ) || !defined(_IO_FLOAT_EXACT )) && __SIZEOF_DOUBLE__ < 8
159
+ #undef SKIP_LONG_FLOAT
160
+ #define SKIP_LONG_FLOAT 1
161
+ #define SKIP_LONGISH_FLOAT 1
162
+ #endif
163
+
164
+ #ifndef SKIP_LONGISH_FLOAT
165
+ #define SKIP_LONGISH_FLOAT 0
166
+ #endif
167
+
158
168
#define many_tests (tests , func , n , skip_long ) do { \
159
169
for (i = 0; i < n; i++) { \
160
170
int decpt; \
@@ -188,13 +198,13 @@ main(void)
188
198
unsigned i ;
189
199
static char buf [2048 ];
190
200
191
- many_tests (fcvt_tests , fcvt_r , N_FCVT_TESTS , 0 );
201
+ many_tests (fcvt_tests , fcvt_r , N_FCVT_TESTS , SKIP_LONGISH_FLOAT );
192
202
many_tests (fcvt_extra_tests , fcvt_r , N_FCVT_EXTRA_TESTS , SKIP_LONG_FLOAT );
193
- many_tests (ecvt_tests , ecvt_r , N_ECVT_TESTS , 0 );
203
+ many_tests (ecvt_tests , ecvt_r , N_ECVT_TESTS , SKIP_LONGISH_FLOAT );
194
204
#ifdef __PICOLIBC__
195
205
many_tests (fcvt_tests , fcvtf_r , N_FCVT_TESTS , SKIP_LONG_FLOAT );
196
206
many_tests (fcvtf_tests , fcvtf_r , N_FCVTF_TESTS , SKIP_LONG_FLOAT );
197
- many_tests (ecvt_tests , ecvtf_r , N_ECVT_TESTS , 0 );
207
+ many_tests (ecvt_tests , ecvtf_r , N_ECVT_TESTS , SKIP_LONGISH_FLOAT );
198
208
#endif
199
209
return error ;
200
210
}
0 commit comments