xref: /minix3/lib/libc/gdtoa/test/Q.ou1 (revision f14fb602092e015ff630df58e17c2a9cd57d29b3)
1
2Input: 1.23
3
4strtoQ consumes 4 bytes and returns 17
5with bits = #3fff3ae1 47ae147a e147ae14 7ae147ae
6printf("%.35Lg") gives 1.23
7g_Qfmt(0) gives 4 bytes: "1.23"
8
9strtoIQ returns 17, consuming 4 bytes.
10fI[0] = #3fff3ae1 47ae147a e147ae14 7ae147ae
11= 1.23
12fI[1] = #3fff3ae1 47ae147a e147ae14 7ae147af
13= 1.2300000000000000000000000000000002
14fI[0] == strtod
15
16
17Input: 1.23e+20
18
19strtoQ consumes 8 bytes and returns 1
20with bits = #4041aabd f2145b43 0 0
21printf("%.35Lg") gives 123000000000000000000
22g_Qfmt(0) gives 8 bytes: "1.23e+20"
23
24strtoIQ returns 1, consuming 8 bytes.
25fI[0] == fI[1] = #4041aabd f2145b43 0 0
26= 123000000000000000000
27
28
29Input: 1.23e-20
30
31strtoQ consumes 8 bytes and returns 17
32with bits = #3fbcd0ae 4cf76753 9e4cbca ad934841
33printf("%.35Lg") gives 1.2299999999999999999999999999999999e-20
34g_Qfmt(0) gives 8 bytes: "1.23e-20"
35
36strtoIQ returns 17, consuming 8 bytes.
37fI[0] = #3fbcd0ae 4cf76753 9e4cbca ad934841
38= 1.2299999999999999999999999999999999e-20
39fI[1] = #3fbcd0ae 4cf76753 9e4cbca ad934842
40= 1.2300000000000000000000000000000001e-20
41fI[0] == strtod
42
43
44Input: 1.23456789
45
46strtoQ consumes 10 bytes and returns 17
47with bits = #3fff3c0c a4283de1 b7eb6945 1304948f
48printf("%.35Lg") gives 1.2345678899999999999999999999999999
49g_Qfmt(0) gives 10 bytes: "1.23456789"
50
51strtoIQ returns 17, consuming 10 bytes.
52fI[0] = #3fff3c0c a4283de1 b7eb6945 1304948f
53= 1.2345678899999999999999999999999999
54fI[1] = #3fff3c0c a4283de1 b7eb6945 13049490
55= 1.2345678900000000000000000000000001
56fI[0] == strtod
57
58
59Input: 1.23456589e+20
60
61strtoQ consumes 14 bytes and returns 1
62with bits = #4041ac53 7a660b99 74000000 0
63printf("%.35Lg") gives 123456589000000000000
64g_Qfmt(0) gives 14 bytes: "1.23456589e+20"
65
66strtoIQ returns 1, consuming 14 bytes.
67fI[0] == fI[1] = #4041ac53 7a660b99 74000000 0
68= 123456589000000000000
69
70
71Input: 1.23e+30
72
73strtoQ consumes 8 bytes and returns 1
74with bits = #4062f0cb 4e8fb79 4945600 0
75printf("%.35Lg") gives 1230000000000000000000000000000
76g_Qfmt(0) gives 8 bytes: "1.23e+30"
77
78strtoIQ returns 1, consuming 8 bytes.
79fI[0] == fI[1] = #4062f0cb 4e8fb79 4945600 0
80= 1230000000000000000000000000000
81
82
83Input: 1.23e-30
84
85strtoQ consumes 8 bytes and returns 17
86with bits = #3f9b8f28 66f5010a a9d63f9e d7e8ba14
87printf("%.35Lg") gives 1.2299999999999999999999999999999999e-30
88g_Qfmt(0) gives 8 bytes: "1.23e-30"
89
90strtoIQ returns 17, consuming 8 bytes.
91fI[0] = #3f9b8f28 66f5010a a9d63f9e d7e8ba14
92= 1.2299999999999999999999999999999999e-30
93fI[1] = #3f9b8f28 66f5010a a9d63f9e d7e8ba15
94= 1.2300000000000000000000000000000001e-30
95fI[0] == strtod
96
97
98Input: 1.23456789e-20
99
100strtoQ consumes 14 bytes and returns 33
101with bits = #3fbcd268 1471e7ad a6a4a029 d86c1fa2
102printf("%.35Lg") gives 1.2345678900000000000000000000000001e-20
103g_Qfmt(0) gives 14 bytes: "1.23456789e-20"
104
105strtoIQ returns 33, consuming 14 bytes.
106fI[0] = #3fbcd268 1471e7ad a6a4a029 d86c1fa1
107= 1.2345678899999999999999999999999999e-20
108fI[1] = #3fbcd268 1471e7ad a6a4a029 d86c1fa2
109= 1.2345678900000000000000000000000001e-20
110fI[1] == strtod
111
112
113Input: 1.23456789e-30
114
115strtoQ consumes 14 bytes and returns 17
116with bits = #3f9b90a3 e33bbd99 51f85855 5a6b19d4
117printf("%.35Lg") gives 1.23456789e-30
118g_Qfmt(0) gives 14 bytes: "1.23456789e-30"
119
120strtoIQ returns 17, consuming 14 bytes.
121fI[0] = #3f9b90a3 e33bbd99 51f85855 5a6b19d4
122= 1.23456789e-30
123fI[1] = #3f9b90a3 e33bbd99 51f85855 5a6b19d5
124= 1.2345678900000000000000000000000001e-30
125fI[0] == strtod
126
127
128Input: 1.234567890123456789
129
130strtoQ consumes 20 bytes and returns 17
131with bits = #3fff3c0c a428c59f b71a4194 68dd175b
132printf("%.35Lg") gives 1.234567890123456789
133g_Qfmt(0) gives 20 bytes: "1.234567890123456789"
134
135strtoIQ returns 17, consuming 20 bytes.
136fI[0] = #3fff3c0c a428c59f b71a4194 68dd175b
137= 1.234567890123456789
138fI[1] = #3fff3c0c a428c59f b71a4194 68dd175c
139= 1.2345678901234567890000000000000002
140fI[0] == strtod
141
142
143Input: 1.23456789012345678901234567890123456789
144
145strtoQ consumes 40 bytes and returns 17
146with bits = #3fff3c0c a428c59f b71a7be1 6b6b6d5b
147printf("%.35Lg") gives 1.2345678901234567890123456789012346
148g_Qfmt(0) gives 36 bytes: "1.2345678901234567890123456789012346"
149
150strtoIQ returns 17, consuming 40 bytes.
151fI[0] = #3fff3c0c a428c59f b71a7be1 6b6b6d5b
152= 1.2345678901234567890123456789012346
153fI[1] = #3fff3c0c a428c59f b71a7be1 6b6b6d5c
154= 1.2345678901234567890123456789012347
155fI[0] == strtod
156
157
158Input: 1.23e306
159
160strtoQ consumes 8 bytes and returns 33
161with bits = #43f7c067 6cd1c61f 4daac5f1 e9fa3b55
162printf("%.35Lg") gives 1.23e+306
163g_Qfmt(0) gives 9 bytes: "1.23e+306"
164
165strtoIQ returns 33, consuming 8 bytes.
166fI[0] = #43f7c067 6cd1c61f 4daac5f1 e9fa3b54
167= 1.2299999999999999999999999999999999e+306
168fI[1] = #43f7c067 6cd1c61f 4daac5f1 e9fa3b55
169= 1.23e+306
170fI[1] == strtod
171
172
173Input: 1.23e-306
174
175strtoQ consumes 9 bytes and returns 17
176with bits = #3c06ba3b 85da396e 7e496ab7 d233c3dd
177printf("%.35Lg") gives 1.23e-306
178g_Qfmt(0) gives 9 bytes: "1.23e-306"
179
180strtoIQ returns 17, consuming 9 bytes.
181fI[0] = #3c06ba3b 85da396e 7e496ab7 d233c3dd
182= 1.23e-306
183fI[1] = #3c06ba3b 85da396e 7e496ab7 d233c3de
184= 1.2300000000000000000000000000000001e-306
185fI[0] == strtod
186
187
188Input: 1.23e-320
189
190strtoQ consumes 9 bytes and returns 33
191with bits = #3bd83731 86e30898 7e33b2e8 355f847b
192printf("%.35Lg") gives 1.2300000000000000000000000000000001e-320
193g_Qfmt(0) gives 9 bytes: "1.23e-320"
194
195strtoIQ returns 33, consuming 9 bytes.
196fI[0] = #3bd83731 86e30898 7e33b2e8 355f847a
197= 1.2299999999999999999999999999999999e-320
198fI[1] = #3bd83731 86e30898 7e33b2e8 355f847b
199= 1.2300000000000000000000000000000001e-320
200fI[1] == strtod
201
202
203Input: 1.23e-20
204
205strtoQ consumes 8 bytes and returns 17
206with bits = #3fbcd0ae 4cf76753 9e4cbca ad934841
207printf("%.35Lg") gives 1.2299999999999999999999999999999999e-20
208g_Qfmt(0) gives 8 bytes: "1.23e-20"
209
210strtoIQ returns 17, consuming 8 bytes.
211fI[0] = #3fbcd0ae 4cf76753 9e4cbca ad934841
212= 1.2299999999999999999999999999999999e-20
213fI[1] = #3fbcd0ae 4cf76753 9e4cbca ad934842
214= 1.2300000000000000000000000000000001e-20
215fI[0] == strtod
216
217
218Input: 1.23456789e307
219
220strtoQ consumes 14 bytes and returns 17
221with bits = #43fb194b 14bdaecd bcea468c 902464cf
222printf("%.35Lg") gives 1.2345678899999999999999999999999999e+307
223g_Qfmt(0) gives 15 bytes: "1.23456789e+307"
224
225strtoIQ returns 17, consuming 14 bytes.
226fI[0] = #43fb194b 14bdaecd bcea468c 902464cf
227= 1.2345678899999999999999999999999999e+307
228fI[1] = #43fb194b 14bdaecd bcea468c 902464d0
229= 1.2345678900000000000000000000000001e+307
230fI[0] == strtod
231
232
233Input: 1.23456589e-307
234
235strtoQ consumes 15 bytes and returns 17
236with bits = #3c036319 6bb9845f a6d234e3 39163574
237printf("%.35Lg") gives 1.23456589e-307
238g_Qfmt(0) gives 15 bytes: "1.23456589e-307"
239
240strtoIQ returns 17, consuming 15 bytes.
241fI[0] = #3c036319 6bb9845f a6d234e3 39163574
242= 1.23456589e-307
243fI[1] = #3c036319 6bb9845f a6d234e3 39163575
244= 1.2345658900000000000000000000000002e-307
245fI[0] == strtod
246
247
248Input: 1.234567890123456789
249
250strtoQ consumes 20 bytes and returns 17
251with bits = #3fff3c0c a428c59f b71a4194 68dd175b
252printf("%.35Lg") gives 1.234567890123456789
253g_Qfmt(0) gives 20 bytes: "1.234567890123456789"
254
255strtoIQ returns 17, consuming 20 bytes.
256fI[0] = #3fff3c0c a428c59f b71a4194 68dd175b
257= 1.234567890123456789
258fI[1] = #3fff3c0c a428c59f b71a4194 68dd175c
259= 1.2345678901234567890000000000000002
260fI[0] == strtod
261
262
263Input: 1.234567890123456789e301
264
265strtoQ consumes 24 bytes and returns 33
266with bits = #43e726f5 175f5641 3017ea80 763990ef
267printf("%.35Lg") gives 1.2345678901234567890000000000000001e+301
268g_Qfmt(0) gives 25 bytes: "1.234567890123456789e+301"
269
270strtoIQ returns 33, consuming 24 bytes.
271fI[0] = #43e726f5 175f5641 3017ea80 763990ee
272= 1.2345678901234567889999999999999999e+301
273fI[1] = #43e726f5 175f5641 3017ea80 763990ef
274= 1.2345678901234567890000000000000001e+301
275fI[1] == strtod
276
277
278Input: 1.234567890123456789e-301
279
280strtoQ consumes 25 bytes and returns 17
281with bits = #3c1752a6 4e34ba0d 35b19b04 3222fce5
282printf("%.35Lg") gives 1.234567890123456789e-301
283g_Qfmt(0) gives 25 bytes: "1.234567890123456789e-301"
284
285strtoIQ returns 17, consuming 25 bytes.
286fI[0] = #3c1752a6 4e34ba0d 35b19b04 3222fce5
287= 1.234567890123456789e-301
288fI[1] = #3c1752a6 4e34ba0d 35b19b04 3222fce6
289= 1.2345678901234567890000000000000002e-301
290fI[0] == strtod
291
292
293Input: 1.234567890123456789e-321
294
295strtoQ consumes 25 bytes and returns 17
296with bits = #3bd4f3c2 3699d4db 99d1ea94 2fecd7de
297printf("%.35Lg") gives 1.234567890123456789e-321
298g_Qfmt(0) gives 25 bytes: "1.234567890123456789e-321"
299
300strtoIQ returns 17, consuming 25 bytes.
301fI[0] = #3bd4f3c2 3699d4db 99d1ea94 2fecd7de
302= 1.234567890123456789e-321
303fI[1] = #3bd4f3c2 3699d4db 99d1ea94 2fecd7df
304= 1.2345678901234567890000000000000001e-321
305fI[0] == strtod
306
307
308Input: 1e23
309
310strtoQ consumes 4 bytes and returns 1
311with bits = #404b52d0 2c7e14af 68000000 0
312printf("%.35Lg") gives 100000000000000000000000
313g_Qfmt(0) gives 5 bytes: "1e+23"
314
315strtoIQ returns 1, consuming 4 bytes.
316fI[0] == fI[1] = #404b52d0 2c7e14af 68000000 0
317= 100000000000000000000000
318
319
320Input: 1e310
321
322strtoQ consumes 5 bytes and returns 33
323with bits = #4404bd03 c8140697 9e9ff00e fefd4cbd
324printf("%.35Lg") gives 1e+310
325g_Qfmt(0) gives 6 bytes: "1e+310"
326
327strtoIQ returns 33, consuming 5 bytes.
328fI[0] = #4404bd03 c8140697 9e9ff00e fefd4cbc
329= 9.9999999999999999999999999999999992e+309
330fI[1] = #4404bd03 c8140697 9e9ff00e fefd4cbd
331= 1e+310
332fI[1] == strtod
333
334
335Input: 9.0259718793241475e-277
336
337strtoQ consumes 23 bytes and returns 17
338with bits = #3c69ffff ffffffff f9ed5779 ac118fe1
339printf("%.35Lg") gives 9.0259718793241474999999999999999997e-277
340g_Qfmt(0) gives 23 bytes: "9.0259718793241475e-277"
341
342strtoIQ returns 17, consuming 23 bytes.
343fI[0] = #3c69ffff ffffffff f9ed5779 ac118fe1
344= 9.0259718793241474999999999999999997e-277
345fI[1] = #3c69ffff ffffffff f9ed5779 ac118fe2
346= 9.0259718793241475000000000000000006e-277
347fI[0] == strtod
348
349
350Input: 9.025971879324147880346310405869e-277
351
352strtoQ consumes 37 bytes and returns 33
353with bits = #3c6a0000 0 0 9a
354printf("%.35Lg") gives 9.0259718793241478803463104058690004e-277
355g_Qfmt(0) gives 37 bytes: "9.025971879324147880346310405869e-277"
356
357strtoIQ returns 33, consuming 37 bytes.
358fI[0] = #3c6a0000 0 0 99
359= 9.0259718793241478803463104058689987e-277
360fI[1] = #3c6a0000 0 0 9a
361= 9.0259718793241478803463104058690004e-277
362fI[1] == strtod
363
364
365Input: 9.025971879324147880346310405868e-277
366
367strtoQ consumes 37 bytes and returns 17
368with bits = #3c69ffff ffffffff ffffffff fffffcb5
369printf("%.35Lg") gives 9.025971879324147880346310405868e-277
370g_Qfmt(0) gives 37 bytes: "9.025971879324147880346310405868e-277"
371
372strtoIQ returns 17, consuming 37 bytes.
373fI[0] = #3c69ffff ffffffff ffffffff fffffcb5
374= 9.025971879324147880346310405868e-277
375fI[1] = #3c69ffff ffffffff ffffffff fffffcb6
376= 9.0259718793241478803463104058680009e-277
377fI[0] == strtod
378
379
380Input: 2.2250738585072014e-308
381
382strtoQ consumes 23 bytes and returns 33
383with bits = #3c010000 0 8c304c cf867de0
384printf("%.35Lg") gives 2.2250738585072014000000000000000001e-308
385g_Qfmt(0) gives 23 bytes: "2.2250738585072014e-308"
386
387strtoIQ returns 33, consuming 23 bytes.
388fI[0] = #3c010000 0 8c304c cf867ddf
389= 2.2250738585072013999999999999999997e-308
390fI[1] = #3c010000 0 8c304c cf867de0
391= 2.2250738585072014000000000000000001e-308
392fI[1] == strtod
393
394
395Input: 2.2250738585072013e-308
396
397strtoQ consumes 23 bytes and returns 33
398with bits = #3c00ffff ffffffff fa9e4c4f 4c1e8a10
399printf("%.35Lg") gives 2.2250738585072013e-308
400g_Qfmt(0) gives 23 bytes: "2.2250738585072013e-308"
401
402strtoIQ returns 33, consuming 23 bytes.
403fI[0] = #3c00ffff ffffffff fa9e4c4f 4c1e8a0f
404= 2.2250738585072012999999999999999998e-308
405fI[1] = #3c00ffff ffffffff fa9e4c4f 4c1e8a10
406= 2.2250738585072013e-308
407fI[1] == strtod
408
409Rounding mode for strtor... changed from 1 (nearest) to 0 (toward zero)
410
411Input: 1.1
412
413strtoQ consumes 3 bytes and returns 17
414with bits = #3fff1999 99999999 99999999 99999999
415printf("%.35Lg") gives 1.0999999999999999999999999999999999
416g_Qfmt(0) gives 36 bytes: "1.0999999999999999999999999999999999"
417
418strtoIQ returns 33, consuming 3 bytes.
419fI[0] = #3fff1999 99999999 99999999 99999999
420= 1.0999999999999999999999999999999999
421fI[1] = #3fff1999 99999999 99999999 9999999a
422= 1.1000000000000000000000000000000001
423fI[0] == strtod
424
425
426Input: -1.1
427
428strtoQ consumes 4 bytes and returns 25
429with bits = #bfff1999 99999999 99999999 99999999
430printf("%.35Lg") gives -1.0999999999999999999999999999999999
431g_Qfmt(0) gives 37 bytes: "-1.0999999999999999999999999999999999"
432
433strtoIQ returns 41, consuming 4 bytes.
434fI[0] = #bfff1999 99999999 99999999 9999999a
435= -1.1000000000000000000000000000000001
436fI[1] = #bfff1999 99999999 99999999 99999999
437= -1.0999999999999999999999999999999999
438fI[1] == strtod
439
440
441Input: 1.2
442
443strtoQ consumes 3 bytes and returns 17
444with bits = #3fff3333 33333333 33333333 33333333
445printf("%.35Lg") gives 1.2
446g_Qfmt(0) gives 3 bytes: "1.2"
447
448strtoIQ returns 17, consuming 3 bytes.
449fI[0] = #3fff3333 33333333 33333333 33333333
450= 1.2
451fI[1] = #3fff3333 33333333 33333333 33333334
452= 1.2000000000000000000000000000000002
453fI[0] == strtod
454
455
456Input: -1.2
457
458strtoQ consumes 4 bytes and returns 25
459with bits = #bfff3333 33333333 33333333 33333333
460printf("%.35Lg") gives -1.2
461g_Qfmt(0) gives 4 bytes: "-1.2"
462
463strtoIQ returns 25, consuming 4 bytes.
464fI[0] = #bfff3333 33333333 33333333 33333334
465= -1.2000000000000000000000000000000002
466fI[1] = #bfff3333 33333333 33333333 33333333
467= -1.2
468fI[1] == strtod
469
470
471Input: 1.3
472
473strtoQ consumes 3 bytes and returns 17
474with bits = #3fff4ccc cccccccc cccccccc cccccccc
475printf("%.35Lg") gives 1.2999999999999999999999999999999998
476g_Qfmt(0) gives 36 bytes: "1.2999999999999999999999999999999998"
477
478strtoIQ returns 33, consuming 3 bytes.
479fI[0] = #3fff4ccc cccccccc cccccccc cccccccc
480= 1.2999999999999999999999999999999998
481fI[1] = #3fff4ccc cccccccc cccccccc cccccccd
482= 1.3
483fI[0] == strtod
484
485
486Input: -1.3
487
488strtoQ consumes 4 bytes and returns 25
489with bits = #bfff4ccc cccccccc cccccccc cccccccc
490printf("%.35Lg") gives -1.2999999999999999999999999999999998
491g_Qfmt(0) gives 37 bytes: "-1.2999999999999999999999999999999998"
492
493strtoIQ returns 41, consuming 4 bytes.
494fI[0] = #bfff4ccc cccccccc cccccccc cccccccd
495= -1.3
496fI[1] = #bfff4ccc cccccccc cccccccc cccccccc
497= -1.2999999999999999999999999999999998
498fI[1] == strtod
499
500
501Input: 1.4
502
503strtoQ consumes 3 bytes and returns 17
504with bits = #3fff6666 66666666 66666666 66666666
505printf("%.35Lg") gives 1.3999999999999999999999999999999999
506g_Qfmt(0) gives 3 bytes: "1.4"
507
508strtoIQ returns 17, consuming 3 bytes.
509fI[0] = #3fff6666 66666666 66666666 66666666
510= 1.3999999999999999999999999999999999
511fI[1] = #3fff6666 66666666 66666666 66666667
512= 1.4000000000000000000000000000000001
513fI[0] == strtod
514
515
516Input: -1.4
517
518strtoQ consumes 4 bytes and returns 25
519with bits = #bfff6666 66666666 66666666 66666666
520printf("%.35Lg") gives -1.3999999999999999999999999999999999
521g_Qfmt(0) gives 4 bytes: "-1.4"
522
523strtoIQ returns 25, consuming 4 bytes.
524fI[0] = #bfff6666 66666666 66666666 66666667
525= -1.4000000000000000000000000000000001
526fI[1] = #bfff6666 66666666 66666666 66666666
527= -1.3999999999999999999999999999999999
528fI[1] == strtod
529
530
531Input: 1.5
532
533strtoQ consumes 3 bytes and returns 1
534with bits = #3fff8000 0 0 0
535printf("%.35Lg") gives 1.5
536g_Qfmt(0) gives 3 bytes: "1.5"
537
538strtoIQ returns 1, consuming 3 bytes.
539fI[0] == fI[1] = #3fff8000 0 0 0
540= 1.5
541
542
543Input: -1.5
544
545strtoQ consumes 4 bytes and returns 9
546with bits = #bfff8000 0 0 0
547printf("%.35Lg") gives -1.5
548g_Qfmt(0) gives 4 bytes: "-1.5"
549
550strtoIQ returns 9, consuming 4 bytes.
551fI[0] == fI[1] = #bfff8000 0 0 0
552= -1.5
553
554
555Input: 1.6
556
557strtoQ consumes 3 bytes and returns 17
558with bits = #3fff9999 99999999 99999999 99999999
559printf("%.35Lg") gives 1.5999999999999999999999999999999999
560g_Qfmt(0) gives 36 bytes: "1.5999999999999999999999999999999999"
561
562strtoIQ returns 33, consuming 3 bytes.
563fI[0] = #3fff9999 99999999 99999999 99999999
564= 1.5999999999999999999999999999999999
565fI[1] = #3fff9999 99999999 99999999 9999999a
566= 1.6000000000000000000000000000000001
567fI[0] == strtod
568
569
570Input: -1.6
571
572strtoQ consumes 4 bytes and returns 25
573with bits = #bfff9999 99999999 99999999 99999999
574printf("%.35Lg") gives -1.5999999999999999999999999999999999
575g_Qfmt(0) gives 37 bytes: "-1.5999999999999999999999999999999999"
576
577strtoIQ returns 41, consuming 4 bytes.
578fI[0] = #bfff9999 99999999 99999999 9999999a
579= -1.6000000000000000000000000000000001
580fI[1] = #bfff9999 99999999 99999999 99999999
581= -1.5999999999999999999999999999999999
582fI[1] == strtod
583
584
585Input: 1.7
586
587strtoQ consumes 3 bytes and returns 17
588with bits = #3fffb333 33333333 33333333 33333333
589printf("%.35Lg") gives 1.7
590g_Qfmt(0) gives 3 bytes: "1.7"
591
592strtoIQ returns 17, consuming 3 bytes.
593fI[0] = #3fffb333 33333333 33333333 33333333
594= 1.7
595fI[1] = #3fffb333 33333333 33333333 33333334
596= 1.7000000000000000000000000000000002
597fI[0] == strtod
598
599
600Input: -1.7
601
602strtoQ consumes 4 bytes and returns 25
603with bits = #bfffb333 33333333 33333333 33333333
604printf("%.35Lg") gives -1.7
605g_Qfmt(0) gives 4 bytes: "-1.7"
606
607strtoIQ returns 25, consuming 4 bytes.
608fI[0] = #bfffb333 33333333 33333333 33333334
609= -1.7000000000000000000000000000000002
610fI[1] = #bfffb333 33333333 33333333 33333333
611= -1.7
612fI[1] == strtod
613
614
615Input: 1.8
616
617strtoQ consumes 3 bytes and returns 17
618with bits = #3fffcccc cccccccc cccccccc cccccccc
619printf("%.35Lg") gives 1.7999999999999999999999999999999998
620g_Qfmt(0) gives 36 bytes: "1.7999999999999999999999999999999998"
621
622strtoIQ returns 33, consuming 3 bytes.
623fI[0] = #3fffcccc cccccccc cccccccc cccccccc
624= 1.7999999999999999999999999999999998
625fI[1] = #3fffcccc cccccccc cccccccc cccccccd
626= 1.8
627fI[0] == strtod
628
629
630Input: -1.8
631
632strtoQ consumes 4 bytes and returns 25
633with bits = #bfffcccc cccccccc cccccccc cccccccc
634printf("%.35Lg") gives -1.7999999999999999999999999999999998
635g_Qfmt(0) gives 37 bytes: "-1.7999999999999999999999999999999998"
636
637strtoIQ returns 41, consuming 4 bytes.
638fI[0] = #bfffcccc cccccccc cccccccc cccccccd
639= -1.8
640fI[1] = #bfffcccc cccccccc cccccccc cccccccc
641= -1.7999999999999999999999999999999998
642fI[1] == strtod
643
644
645Input: 1.9
646
647strtoQ consumes 3 bytes and returns 17
648with bits = #3fffe666 66666666 66666666 66666666
649printf("%.35Lg") gives 1.8999999999999999999999999999999999
650g_Qfmt(0) gives 3 bytes: "1.9"
651
652strtoIQ returns 17, consuming 3 bytes.
653fI[0] = #3fffe666 66666666 66666666 66666666
654= 1.8999999999999999999999999999999999
655fI[1] = #3fffe666 66666666 66666666 66666667
656= 1.9000000000000000000000000000000001
657fI[0] == strtod
658
659
660Input: -1.9
661
662strtoQ consumes 4 bytes and returns 25
663with bits = #bfffe666 66666666 66666666 66666666
664printf("%.35Lg") gives -1.8999999999999999999999999999999999
665g_Qfmt(0) gives 4 bytes: "-1.9"
666
667strtoIQ returns 25, consuming 4 bytes.
668fI[0] = #bfffe666 66666666 66666666 66666667
669= -1.9000000000000000000000000000000001
670fI[1] = #bfffe666 66666666 66666666 66666666
671= -1.8999999999999999999999999999999999
672fI[1] == strtod
673
674Rounding mode for strtor... changed from 0 (toward zero) to 1 (nearest)
675
676Input: 1.1
677
678strtoQ consumes 3 bytes and returns 33
679with bits = #3fff1999 99999999 99999999 9999999a
680printf("%.35Lg") gives 1.1000000000000000000000000000000001
681g_Qfmt(0) gives 3 bytes: "1.1"
682
683strtoIQ returns 33, consuming 3 bytes.
684fI[0] = #3fff1999 99999999 99999999 99999999
685= 1.0999999999999999999999999999999999
686fI[1] = #3fff1999 99999999 99999999 9999999a
687= 1.1000000000000000000000000000000001
688fI[1] == strtod
689
690
691Input: -1.1
692
693strtoQ consumes 4 bytes and returns 41
694with bits = #bfff1999 99999999 99999999 9999999a
695printf("%.35Lg") gives -1.1000000000000000000000000000000001
696g_Qfmt(0) gives 4 bytes: "-1.1"
697
698strtoIQ returns 41, consuming 4 bytes.
699fI[0] = #bfff1999 99999999 99999999 9999999a
700= -1.1000000000000000000000000000000001
701fI[1] = #bfff1999 99999999 99999999 99999999
702= -1.0999999999999999999999999999999999
703fI[0] == strtod
704
705
706Input: 1.2
707
708strtoQ consumes 3 bytes and returns 17
709with bits = #3fff3333 33333333 33333333 33333333
710printf("%.35Lg") gives 1.2
711g_Qfmt(0) gives 3 bytes: "1.2"
712
713strtoIQ returns 17, consuming 3 bytes.
714fI[0] = #3fff3333 33333333 33333333 33333333
715= 1.2
716fI[1] = #3fff3333 33333333 33333333 33333334
717= 1.2000000000000000000000000000000002
718fI[0] == strtod
719
720
721Input: -1.2
722
723strtoQ consumes 4 bytes and returns 25
724with bits = #bfff3333 33333333 33333333 33333333
725printf("%.35Lg") gives -1.2
726g_Qfmt(0) gives 4 bytes: "-1.2"
727
728strtoIQ returns 25, consuming 4 bytes.
729fI[0] = #bfff3333 33333333 33333333 33333334
730= -1.2000000000000000000000000000000002
731fI[1] = #bfff3333 33333333 33333333 33333333
732= -1.2
733fI[1] == strtod
734
735
736Input: 1.3
737
738strtoQ consumes 3 bytes and returns 33
739with bits = #3fff4ccc cccccccc cccccccc cccccccd
740printf("%.35Lg") gives 1.3
741g_Qfmt(0) gives 3 bytes: "1.3"
742
743strtoIQ returns 33, consuming 3 bytes.
744fI[0] = #3fff4ccc cccccccc cccccccc cccccccc
745= 1.2999999999999999999999999999999998
746fI[1] = #3fff4ccc cccccccc cccccccc cccccccd
747= 1.3
748fI[1] == strtod
749
750
751Input: -1.3
752
753strtoQ consumes 4 bytes and returns 41
754with bits = #bfff4ccc cccccccc cccccccc cccccccd
755printf("%.35Lg") gives -1.3
756g_Qfmt(0) gives 4 bytes: "-1.3"
757
758strtoIQ returns 41, consuming 4 bytes.
759fI[0] = #bfff4ccc cccccccc cccccccc cccccccd
760= -1.3
761fI[1] = #bfff4ccc cccccccc cccccccc cccccccc
762= -1.2999999999999999999999999999999998
763fI[0] == strtod
764
765
766Input: 1.4
767
768strtoQ consumes 3 bytes and returns 17
769with bits = #3fff6666 66666666 66666666 66666666
770printf("%.35Lg") gives 1.3999999999999999999999999999999999
771g_Qfmt(0) gives 3 bytes: "1.4"
772
773strtoIQ returns 17, consuming 3 bytes.
774fI[0] = #3fff6666 66666666 66666666 66666666
775= 1.3999999999999999999999999999999999
776fI[1] = #3fff6666 66666666 66666666 66666667
777= 1.4000000000000000000000000000000001
778fI[0] == strtod
779
780
781Input: -1.4
782
783strtoQ consumes 4 bytes and returns 25
784with bits = #bfff6666 66666666 66666666 66666666
785printf("%.35Lg") gives -1.3999999999999999999999999999999999
786g_Qfmt(0) gives 4 bytes: "-1.4"
787
788strtoIQ returns 25, consuming 4 bytes.
789fI[0] = #bfff6666 66666666 66666666 66666667
790= -1.4000000000000000000000000000000001
791fI[1] = #bfff6666 66666666 66666666 66666666
792= -1.3999999999999999999999999999999999
793fI[1] == strtod
794
795
796Input: 1.5
797
798strtoQ consumes 3 bytes and returns 1
799with bits = #3fff8000 0 0 0
800printf("%.35Lg") gives 1.5
801g_Qfmt(0) gives 3 bytes: "1.5"
802
803strtoIQ returns 1, consuming 3 bytes.
804fI[0] == fI[1] = #3fff8000 0 0 0
805= 1.5
806
807
808Input: -1.5
809
810strtoQ consumes 4 bytes and returns 9
811with bits = #bfff8000 0 0 0
812printf("%.35Lg") gives -1.5
813g_Qfmt(0) gives 4 bytes: "-1.5"
814
815strtoIQ returns 9, consuming 4 bytes.
816fI[0] == fI[1] = #bfff8000 0 0 0
817= -1.5
818
819
820Input: 1.6
821
822strtoQ consumes 3 bytes and returns 33
823with bits = #3fff9999 99999999 99999999 9999999a
824printf("%.35Lg") gives 1.6000000000000000000000000000000001
825g_Qfmt(0) gives 3 bytes: "1.6"
826
827strtoIQ returns 33, consuming 3 bytes.
828fI[0] = #3fff9999 99999999 99999999 99999999
829= 1.5999999999999999999999999999999999
830fI[1] = #3fff9999 99999999 99999999 9999999a
831= 1.6000000000000000000000000000000001
832fI[1] == strtod
833
834
835Input: -1.6
836
837strtoQ consumes 4 bytes and returns 41
838with bits = #bfff9999 99999999 99999999 9999999a
839printf("%.35Lg") gives -1.6000000000000000000000000000000001
840g_Qfmt(0) gives 4 bytes: "-1.6"
841
842strtoIQ returns 41, consuming 4 bytes.
843fI[0] = #bfff9999 99999999 99999999 9999999a
844= -1.6000000000000000000000000000000001
845fI[1] = #bfff9999 99999999 99999999 99999999
846= -1.5999999999999999999999999999999999
847fI[0] == strtod
848
849
850Input: 1.7
851
852strtoQ consumes 3 bytes and returns 17
853with bits = #3fffb333 33333333 33333333 33333333
854printf("%.35Lg") gives 1.7
855g_Qfmt(0) gives 3 bytes: "1.7"
856
857strtoIQ returns 17, consuming 3 bytes.
858fI[0] = #3fffb333 33333333 33333333 33333333
859= 1.7
860fI[1] = #3fffb333 33333333 33333333 33333334
861= 1.7000000000000000000000000000000002
862fI[0] == strtod
863
864
865Input: -1.7
866
867strtoQ consumes 4 bytes and returns 25
868with bits = #bfffb333 33333333 33333333 33333333
869printf("%.35Lg") gives -1.7
870g_Qfmt(0) gives 4 bytes: "-1.7"
871
872strtoIQ returns 25, consuming 4 bytes.
873fI[0] = #bfffb333 33333333 33333333 33333334
874= -1.7000000000000000000000000000000002
875fI[1] = #bfffb333 33333333 33333333 33333333
876= -1.7
877fI[1] == strtod
878
879
880Input: 1.8
881
882strtoQ consumes 3 bytes and returns 33
883with bits = #3fffcccc cccccccc cccccccc cccccccd
884printf("%.35Lg") gives 1.8
885g_Qfmt(0) gives 3 bytes: "1.8"
886
887strtoIQ returns 33, consuming 3 bytes.
888fI[0] = #3fffcccc cccccccc cccccccc cccccccc
889= 1.7999999999999999999999999999999998
890fI[1] = #3fffcccc cccccccc cccccccc cccccccd
891= 1.8
892fI[1] == strtod
893
894
895Input: -1.8
896
897strtoQ consumes 4 bytes and returns 41
898with bits = #bfffcccc cccccccc cccccccc cccccccd
899printf("%.35Lg") gives -1.8
900g_Qfmt(0) gives 4 bytes: "-1.8"
901
902strtoIQ returns 41, consuming 4 bytes.
903fI[0] = #bfffcccc cccccccc cccccccc cccccccd
904= -1.8
905fI[1] = #bfffcccc cccccccc cccccccc cccccccc
906= -1.7999999999999999999999999999999998
907fI[0] == strtod
908
909
910Input: 1.9
911
912strtoQ consumes 3 bytes and returns 17
913with bits = #3fffe666 66666666 66666666 66666666
914printf("%.35Lg") gives 1.8999999999999999999999999999999999
915g_Qfmt(0) gives 3 bytes: "1.9"
916
917strtoIQ returns 17, consuming 3 bytes.
918fI[0] = #3fffe666 66666666 66666666 66666666
919= 1.8999999999999999999999999999999999
920fI[1] = #3fffe666 66666666 66666666 66666667
921= 1.9000000000000000000000000000000001
922fI[0] == strtod
923
924
925Input: -1.9
926
927strtoQ consumes 4 bytes and returns 25
928with bits = #bfffe666 66666666 66666666 66666666
929printf("%.35Lg") gives -1.8999999999999999999999999999999999
930g_Qfmt(0) gives 4 bytes: "-1.9"
931
932strtoIQ returns 25, consuming 4 bytes.
933fI[0] = #bfffe666 66666666 66666666 66666667
934= -1.9000000000000000000000000000000001
935fI[1] = #bfffe666 66666666 66666666 66666666
936= -1.8999999999999999999999999999999999
937fI[1] == strtod
938
939Rounding mode for strtor... changed from 1 (nearest) to 2 (toward +Infinity)
940
941Input: 1.1
942
943strtoQ consumes 3 bytes and returns 33
944with bits = #3fff1999 99999999 99999999 9999999a
945printf("%.35Lg") gives 1.1000000000000000000000000000000001
946g_Qfmt(0) gives 3 bytes: "1.1"
947
948strtoIQ returns 33, consuming 3 bytes.
949fI[0] = #3fff1999 99999999 99999999 99999999
950= 1.0999999999999999999999999999999999
951fI[1] = #3fff1999 99999999 99999999 9999999a
952= 1.1000000000000000000000000000000001
953fI[1] == strtod
954
955
956Input: -1.1
957
958strtoQ consumes 4 bytes and returns 25
959with bits = #bfff1999 99999999 99999999 99999999
960printf("%.35Lg") gives -1.0999999999999999999999999999999999
961g_Qfmt(0) gives 37 bytes: "-1.0999999999999999999999999999999999"
962
963strtoIQ returns 41, consuming 4 bytes.
964fI[0] = #bfff1999 99999999 99999999 9999999a
965= -1.1000000000000000000000000000000001
966fI[1] = #bfff1999 99999999 99999999 99999999
967= -1.0999999999999999999999999999999999
968fI[1] == strtod
969
970
971Input: 1.2
972
973strtoQ consumes 3 bytes and returns 33
974with bits = #3fff3333 33333333 33333333 33333334
975printf("%.35Lg") gives 1.2000000000000000000000000000000002
976g_Qfmt(0) gives 36 bytes: "1.2000000000000000000000000000000002"
977
978strtoIQ returns 17, consuming 3 bytes.
979fI[0] = #3fff3333 33333333 33333333 33333333
980= 1.2
981fI[1] = #3fff3333 33333333 33333333 33333334
982= 1.2000000000000000000000000000000002
983fI[1] == strtod
984
985
986Input: -1.2
987
988strtoQ consumes 4 bytes and returns 25
989with bits = #bfff3333 33333333 33333333 33333333
990printf("%.35Lg") gives -1.2
991g_Qfmt(0) gives 4 bytes: "-1.2"
992
993strtoIQ returns 25, consuming 4 bytes.
994fI[0] = #bfff3333 33333333 33333333 33333334
995= -1.2000000000000000000000000000000002
996fI[1] = #bfff3333 33333333 33333333 33333333
997= -1.2
998fI[1] == strtod
999
1000
1001Input: 1.3
1002
1003strtoQ consumes 3 bytes and returns 33
1004with bits = #3fff4ccc cccccccc cccccccc cccccccd
1005printf("%.35Lg") gives 1.3
1006g_Qfmt(0) gives 3 bytes: "1.3"
1007
1008strtoIQ returns 33, consuming 3 bytes.
1009fI[0] = #3fff4ccc cccccccc cccccccc cccccccc
1010= 1.2999999999999999999999999999999998
1011fI[1] = #3fff4ccc cccccccc cccccccc cccccccd
1012= 1.3
1013fI[1] == strtod
1014
1015
1016Input: -1.3
1017
1018strtoQ consumes 4 bytes and returns 25
1019with bits = #bfff4ccc cccccccc cccccccc cccccccc
1020printf("%.35Lg") gives -1.2999999999999999999999999999999998
1021g_Qfmt(0) gives 37 bytes: "-1.2999999999999999999999999999999998"
1022
1023strtoIQ returns 41, consuming 4 bytes.
1024fI[0] = #bfff4ccc cccccccc cccccccc cccccccd
1025= -1.3
1026fI[1] = #bfff4ccc cccccccc cccccccc cccccccc
1027= -1.2999999999999999999999999999999998
1028fI[1] == strtod
1029
1030
1031Input: 1.4
1032
1033strtoQ consumes 3 bytes and returns 33
1034with bits = #3fff6666 66666666 66666666 66666667
1035printf("%.35Lg") gives 1.4000000000000000000000000000000001
1036g_Qfmt(0) gives 36 bytes: "1.4000000000000000000000000000000001"
1037
1038strtoIQ returns 17, consuming 3 bytes.
1039fI[0] = #3fff6666 66666666 66666666 66666666
1040= 1.3999999999999999999999999999999999
1041fI[1] = #3fff6666 66666666 66666666 66666667
1042= 1.4000000000000000000000000000000001
1043fI[1] == strtod
1044
1045
1046Input: -1.4
1047
1048strtoQ consumes 4 bytes and returns 25
1049with bits = #bfff6666 66666666 66666666 66666666
1050printf("%.35Lg") gives -1.3999999999999999999999999999999999
1051g_Qfmt(0) gives 4 bytes: "-1.4"
1052
1053strtoIQ returns 25, consuming 4 bytes.
1054fI[0] = #bfff6666 66666666 66666666 66666667
1055= -1.4000000000000000000000000000000001
1056fI[1] = #bfff6666 66666666 66666666 66666666
1057= -1.3999999999999999999999999999999999
1058fI[1] == strtod
1059
1060
1061Input: 1.5
1062
1063strtoQ consumes 3 bytes and returns 1
1064with bits = #3fff8000 0 0 0
1065printf("%.35Lg") gives 1.5
1066g_Qfmt(0) gives 3 bytes: "1.5"
1067
1068strtoIQ returns 1, consuming 3 bytes.
1069fI[0] == fI[1] = #3fff8000 0 0 0
1070= 1.5
1071
1072
1073Input: -1.5
1074
1075strtoQ consumes 4 bytes and returns 9
1076with bits = #bfff8000 0 0 0
1077printf("%.35Lg") gives -1.5
1078g_Qfmt(0) gives 4 bytes: "-1.5"
1079
1080strtoIQ returns 9, consuming 4 bytes.
1081fI[0] == fI[1] = #bfff8000 0 0 0
1082= -1.5
1083
1084
1085Input: 1.6
1086
1087strtoQ consumes 3 bytes and returns 33
1088with bits = #3fff9999 99999999 99999999 9999999a
1089printf("%.35Lg") gives 1.6000000000000000000000000000000001
1090g_Qfmt(0) gives 3 bytes: "1.6"
1091
1092strtoIQ returns 33, consuming 3 bytes.
1093fI[0] = #3fff9999 99999999 99999999 99999999
1094= 1.5999999999999999999999999999999999
1095fI[1] = #3fff9999 99999999 99999999 9999999a
1096= 1.6000000000000000000000000000000001
1097fI[1] == strtod
1098
1099
1100Input: -1.6
1101
1102strtoQ consumes 4 bytes and returns 25
1103with bits = #bfff9999 99999999 99999999 99999999
1104printf("%.35Lg") gives -1.5999999999999999999999999999999999
1105g_Qfmt(0) gives 37 bytes: "-1.5999999999999999999999999999999999"
1106
1107strtoIQ returns 41, consuming 4 bytes.
1108fI[0] = #bfff9999 99999999 99999999 9999999a
1109= -1.6000000000000000000000000000000001
1110fI[1] = #bfff9999 99999999 99999999 99999999
1111= -1.5999999999999999999999999999999999
1112fI[1] == strtod
1113
1114
1115Input: 1.7
1116
1117strtoQ consumes 3 bytes and returns 33
1118with bits = #3fffb333 33333333 33333333 33333334
1119printf("%.35Lg") gives 1.7000000000000000000000000000000002
1120g_Qfmt(0) gives 36 bytes: "1.7000000000000000000000000000000002"
1121
1122strtoIQ returns 17, consuming 3 bytes.
1123fI[0] = #3fffb333 33333333 33333333 33333333
1124= 1.7
1125fI[1] = #3fffb333 33333333 33333333 33333334
1126= 1.7000000000000000000000000000000002
1127fI[1] == strtod
1128
1129
1130Input: -1.7
1131
1132strtoQ consumes 4 bytes and returns 25
1133with bits = #bfffb333 33333333 33333333 33333333
1134printf("%.35Lg") gives -1.7
1135g_Qfmt(0) gives 4 bytes: "-1.7"
1136
1137strtoIQ returns 25, consuming 4 bytes.
1138fI[0] = #bfffb333 33333333 33333333 33333334
1139= -1.7000000000000000000000000000000002
1140fI[1] = #bfffb333 33333333 33333333 33333333
1141= -1.7
1142fI[1] == strtod
1143
1144
1145Input: 1.8
1146
1147strtoQ consumes 3 bytes and returns 33
1148with bits = #3fffcccc cccccccc cccccccc cccccccd
1149printf("%.35Lg") gives 1.8
1150g_Qfmt(0) gives 3 bytes: "1.8"
1151
1152strtoIQ returns 33, consuming 3 bytes.
1153fI[0] = #3fffcccc cccccccc cccccccc cccccccc
1154= 1.7999999999999999999999999999999998
1155fI[1] = #3fffcccc cccccccc cccccccc cccccccd
1156= 1.8
1157fI[1] == strtod
1158
1159
1160Input: -1.8
1161
1162strtoQ consumes 4 bytes and returns 25
1163with bits = #bfffcccc cccccccc cccccccc cccccccc
1164printf("%.35Lg") gives -1.7999999999999999999999999999999998
1165g_Qfmt(0) gives 37 bytes: "-1.7999999999999999999999999999999998"
1166
1167strtoIQ returns 41, consuming 4 bytes.
1168fI[0] = #bfffcccc cccccccc cccccccc cccccccd
1169= -1.8
1170fI[1] = #bfffcccc cccccccc cccccccc cccccccc
1171= -1.7999999999999999999999999999999998
1172fI[1] == strtod
1173
1174
1175Input: 1.9
1176
1177strtoQ consumes 3 bytes and returns 33
1178with bits = #3fffe666 66666666 66666666 66666667
1179printf("%.35Lg") gives 1.9000000000000000000000000000000001
1180g_Qfmt(0) gives 36 bytes: "1.9000000000000000000000000000000001"
1181
1182strtoIQ returns 17, consuming 3 bytes.
1183fI[0] = #3fffe666 66666666 66666666 66666666
1184= 1.8999999999999999999999999999999999
1185fI[1] = #3fffe666 66666666 66666666 66666667
1186= 1.9000000000000000000000000000000001
1187fI[1] == strtod
1188
1189
1190Input: -1.9
1191
1192strtoQ consumes 4 bytes and returns 25
1193with bits = #bfffe666 66666666 66666666 66666666
1194printf("%.35Lg") gives -1.8999999999999999999999999999999999
1195g_Qfmt(0) gives 4 bytes: "-1.9"
1196
1197strtoIQ returns 25, consuming 4 bytes.
1198fI[0] = #bfffe666 66666666 66666666 66666667
1199= -1.9000000000000000000000000000000001
1200fI[1] = #bfffe666 66666666 66666666 66666666
1201= -1.8999999999999999999999999999999999
1202fI[1] == strtod
1203
1204Rounding mode for strtor... changed from 2 (toward +Infinity) to 3 (toward -Infinity)
1205
1206Input: 1.1
1207
1208strtoQ consumes 3 bytes and returns 17
1209with bits = #3fff1999 99999999 99999999 99999999
1210printf("%.35Lg") gives 1.0999999999999999999999999999999999
1211g_Qfmt(0) gives 36 bytes: "1.0999999999999999999999999999999999"
1212
1213strtoIQ returns 33, consuming 3 bytes.
1214fI[0] = #3fff1999 99999999 99999999 99999999
1215= 1.0999999999999999999999999999999999
1216fI[1] = #3fff1999 99999999 99999999 9999999a
1217= 1.1000000000000000000000000000000001
1218fI[0] == strtod
1219
1220
1221Input: -1.1
1222
1223strtoQ consumes 4 bytes and returns 41
1224with bits = #bfff1999 99999999 99999999 9999999a
1225printf("%.35Lg") gives -1.1000000000000000000000000000000001
1226g_Qfmt(0) gives 4 bytes: "-1.1"
1227
1228strtoIQ returns 41, consuming 4 bytes.
1229fI[0] = #bfff1999 99999999 99999999 9999999a
1230= -1.1000000000000000000000000000000001
1231fI[1] = #bfff1999 99999999 99999999 99999999
1232= -1.0999999999999999999999999999999999
1233fI[0] == strtod
1234
1235
1236Input: 1.2
1237
1238strtoQ consumes 3 bytes and returns 17
1239with bits = #3fff3333 33333333 33333333 33333333
1240printf("%.35Lg") gives 1.2
1241g_Qfmt(0) gives 3 bytes: "1.2"
1242
1243strtoIQ returns 17, consuming 3 bytes.
1244fI[0] = #3fff3333 33333333 33333333 33333333
1245= 1.2
1246fI[1] = #3fff3333 33333333 33333333 33333334
1247= 1.2000000000000000000000000000000002
1248fI[0] == strtod
1249
1250
1251Input: -1.2
1252
1253strtoQ consumes 4 bytes and returns 41
1254with bits = #bfff3333 33333333 33333333 33333334
1255printf("%.35Lg") gives -1.2000000000000000000000000000000002
1256g_Qfmt(0) gives 37 bytes: "-1.2000000000000000000000000000000002"
1257
1258strtoIQ returns 25, consuming 4 bytes.
1259fI[0] = #bfff3333 33333333 33333333 33333334
1260= -1.2000000000000000000000000000000002
1261fI[1] = #bfff3333 33333333 33333333 33333333
1262= -1.2
1263fI[0] == strtod
1264
1265
1266Input: 1.3
1267
1268strtoQ consumes 3 bytes and returns 17
1269with bits = #3fff4ccc cccccccc cccccccc cccccccc
1270printf("%.35Lg") gives 1.2999999999999999999999999999999998
1271g_Qfmt(0) gives 36 bytes: "1.2999999999999999999999999999999998"
1272
1273strtoIQ returns 33, consuming 3 bytes.
1274fI[0] = #3fff4ccc cccccccc cccccccc cccccccc
1275= 1.2999999999999999999999999999999998
1276fI[1] = #3fff4ccc cccccccc cccccccc cccccccd
1277= 1.3
1278fI[0] == strtod
1279
1280
1281Input: -1.3
1282
1283strtoQ consumes 4 bytes and returns 41
1284with bits = #bfff4ccc cccccccc cccccccc cccccccd
1285printf("%.35Lg") gives -1.3
1286g_Qfmt(0) gives 4 bytes: "-1.3"
1287
1288strtoIQ returns 41, consuming 4 bytes.
1289fI[0] = #bfff4ccc cccccccc cccccccc cccccccd
1290= -1.3
1291fI[1] = #bfff4ccc cccccccc cccccccc cccccccc
1292= -1.2999999999999999999999999999999998
1293fI[0] == strtod
1294
1295
1296Input: 1.4
1297
1298strtoQ consumes 3 bytes and returns 17
1299with bits = #3fff6666 66666666 66666666 66666666
1300printf("%.35Lg") gives 1.3999999999999999999999999999999999
1301g_Qfmt(0) gives 3 bytes: "1.4"
1302
1303strtoIQ returns 17, consuming 3 bytes.
1304fI[0] = #3fff6666 66666666 66666666 66666666
1305= 1.3999999999999999999999999999999999
1306fI[1] = #3fff6666 66666666 66666666 66666667
1307= 1.4000000000000000000000000000000001
1308fI[0] == strtod
1309
1310
1311Input: -1.4
1312
1313strtoQ consumes 4 bytes and returns 41
1314with bits = #bfff6666 66666666 66666666 66666667
1315printf("%.35Lg") gives -1.4000000000000000000000000000000001
1316g_Qfmt(0) gives 37 bytes: "-1.4000000000000000000000000000000001"
1317
1318strtoIQ returns 25, consuming 4 bytes.
1319fI[0] = #bfff6666 66666666 66666666 66666667
1320= -1.4000000000000000000000000000000001
1321fI[1] = #bfff6666 66666666 66666666 66666666
1322= -1.3999999999999999999999999999999999
1323fI[0] == strtod
1324
1325
1326Input: 1.5
1327
1328strtoQ consumes 3 bytes and returns 1
1329with bits = #3fff8000 0 0 0
1330printf("%.35Lg") gives 1.5
1331g_Qfmt(0) gives 3 bytes: "1.5"
1332
1333strtoIQ returns 1, consuming 3 bytes.
1334fI[0] == fI[1] = #3fff8000 0 0 0
1335= 1.5
1336
1337
1338Input: -1.5
1339
1340strtoQ consumes 4 bytes and returns 9
1341with bits = #bfff8000 0 0 0
1342printf("%.35Lg") gives -1.5
1343g_Qfmt(0) gives 4 bytes: "-1.5"
1344
1345strtoIQ returns 9, consuming 4 bytes.
1346fI[0] == fI[1] = #bfff8000 0 0 0
1347= -1.5
1348
1349
1350Input: 1.6
1351
1352strtoQ consumes 3 bytes and returns 17
1353with bits = #3fff9999 99999999 99999999 99999999
1354printf("%.35Lg") gives 1.5999999999999999999999999999999999
1355g_Qfmt(0) gives 36 bytes: "1.5999999999999999999999999999999999"
1356
1357strtoIQ returns 33, consuming 3 bytes.
1358fI[0] = #3fff9999 99999999 99999999 99999999
1359= 1.5999999999999999999999999999999999
1360fI[1] = #3fff9999 99999999 99999999 9999999a
1361= 1.6000000000000000000000000000000001
1362fI[0] == strtod
1363
1364
1365Input: -1.6
1366
1367strtoQ consumes 4 bytes and returns 41
1368with bits = #bfff9999 99999999 99999999 9999999a
1369printf("%.35Lg") gives -1.6000000000000000000000000000000001
1370g_Qfmt(0) gives 4 bytes: "-1.6"
1371
1372strtoIQ returns 41, consuming 4 bytes.
1373fI[0] = #bfff9999 99999999 99999999 9999999a
1374= -1.6000000000000000000000000000000001
1375fI[1] = #bfff9999 99999999 99999999 99999999
1376= -1.5999999999999999999999999999999999
1377fI[0] == strtod
1378
1379
1380Input: 1.7
1381
1382strtoQ consumes 3 bytes and returns 17
1383with bits = #3fffb333 33333333 33333333 33333333
1384printf("%.35Lg") gives 1.7
1385g_Qfmt(0) gives 3 bytes: "1.7"
1386
1387strtoIQ returns 17, consuming 3 bytes.
1388fI[0] = #3fffb333 33333333 33333333 33333333
1389= 1.7
1390fI[1] = #3fffb333 33333333 33333333 33333334
1391= 1.7000000000000000000000000000000002
1392fI[0] == strtod
1393
1394
1395Input: -1.7
1396
1397strtoQ consumes 4 bytes and returns 41
1398with bits = #bfffb333 33333333 33333333 33333334
1399printf("%.35Lg") gives -1.7000000000000000000000000000000002
1400g_Qfmt(0) gives 37 bytes: "-1.7000000000000000000000000000000002"
1401
1402strtoIQ returns 25, consuming 4 bytes.
1403fI[0] = #bfffb333 33333333 33333333 33333334
1404= -1.7000000000000000000000000000000002
1405fI[1] = #bfffb333 33333333 33333333 33333333
1406= -1.7
1407fI[0] == strtod
1408
1409
1410Input: 1.8
1411
1412strtoQ consumes 3 bytes and returns 17
1413with bits = #3fffcccc cccccccc cccccccc cccccccc
1414printf("%.35Lg") gives 1.7999999999999999999999999999999998
1415g_Qfmt(0) gives 36 bytes: "1.7999999999999999999999999999999998"
1416
1417strtoIQ returns 33, consuming 3 bytes.
1418fI[0] = #3fffcccc cccccccc cccccccc cccccccc
1419= 1.7999999999999999999999999999999998
1420fI[1] = #3fffcccc cccccccc cccccccc cccccccd
1421= 1.8
1422fI[0] == strtod
1423
1424
1425Input: -1.8
1426
1427strtoQ consumes 4 bytes and returns 41
1428with bits = #bfffcccc cccccccc cccccccc cccccccd
1429printf("%.35Lg") gives -1.8
1430g_Qfmt(0) gives 4 bytes: "-1.8"
1431
1432strtoIQ returns 41, consuming 4 bytes.
1433fI[0] = #bfffcccc cccccccc cccccccc cccccccd
1434= -1.8
1435fI[1] = #bfffcccc cccccccc cccccccc cccccccc
1436= -1.7999999999999999999999999999999998
1437fI[0] == strtod
1438
1439
1440Input: 1.9
1441
1442strtoQ consumes 3 bytes and returns 17
1443with bits = #3fffe666 66666666 66666666 66666666
1444printf("%.35Lg") gives 1.8999999999999999999999999999999999
1445g_Qfmt(0) gives 3 bytes: "1.9"
1446
1447strtoIQ returns 17, consuming 3 bytes.
1448fI[0] = #3fffe666 66666666 66666666 66666666
1449= 1.8999999999999999999999999999999999
1450fI[1] = #3fffe666 66666666 66666666 66666667
1451= 1.9000000000000000000000000000000001
1452fI[0] == strtod
1453
1454
1455Input: -1.9
1456
1457strtoQ consumes 4 bytes and returns 41
1458with bits = #bfffe666 66666666 66666666 66666667
1459printf("%.35Lg") gives -1.9000000000000000000000000000000001
1460g_Qfmt(0) gives 37 bytes: "-1.9000000000000000000000000000000001"
1461
1462strtoIQ returns 25, consuming 4 bytes.
1463fI[0] = #bfffe666 66666666 66666666 66666667
1464= -1.9000000000000000000000000000000001
1465fI[1] = #bfffe666 66666666 66666666 66666666
1466= -1.8999999999999999999999999999999999
1467fI[0] == strtod
1468
1469