Consistently use "superuser" instead of "super user"
[pgsql.git] / src / test / regress / expected / float4.out
blob6ad5d00aa2d6f417235385919ee42cb5ce1840eb
1 --
2 -- FLOAT4
3 --
4 CREATE TABLE FLOAT4_TBL (f1  float4);
5 INSERT INTO FLOAT4_TBL(f1) VALUES ('    0.0');
6 INSERT INTO FLOAT4_TBL(f1) VALUES ('1004.30   ');
7 INSERT INTO FLOAT4_TBL(f1) VALUES ('     -34.84    ');
8 INSERT INTO FLOAT4_TBL(f1) VALUES ('1.2345678901234e+20');
9 INSERT INTO FLOAT4_TBL(f1) VALUES ('1.2345678901234e-20');
10 -- test for over and under flow
11 INSERT INTO FLOAT4_TBL(f1) VALUES ('10e70');
12 ERROR:  "10e70" is out of range for type real
13 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('10e70');
14                                            ^
15 INSERT INTO FLOAT4_TBL(f1) VALUES ('-10e70');
16 ERROR:  "-10e70" is out of range for type real
17 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('-10e70');
18                                            ^
19 INSERT INTO FLOAT4_TBL(f1) VALUES ('10e-70');
20 ERROR:  "10e-70" is out of range for type real
21 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('10e-70');
22                                            ^
23 INSERT INTO FLOAT4_TBL(f1) VALUES ('-10e-70');
24 ERROR:  "-10e-70" is out of range for type real
25 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('-10e-70');
26                                            ^
27 INSERT INTO FLOAT4_TBL(f1) VALUES ('10e70'::float8);
28 ERROR:  value out of range: overflow
29 INSERT INTO FLOAT4_TBL(f1) VALUES ('-10e70'::float8);
30 ERROR:  value out of range: overflow
31 INSERT INTO FLOAT4_TBL(f1) VALUES ('10e-70'::float8);
32 ERROR:  value out of range: underflow
33 INSERT INTO FLOAT4_TBL(f1) VALUES ('-10e-70'::float8);
34 ERROR:  value out of range: underflow
35 INSERT INTO FLOAT4_TBL(f1) VALUES ('10e400');
36 ERROR:  "10e400" is out of range for type real
37 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('10e400');
38                                            ^
39 INSERT INTO FLOAT4_TBL(f1) VALUES ('-10e400');
40 ERROR:  "-10e400" is out of range for type real
41 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('-10e400');
42                                            ^
43 INSERT INTO FLOAT4_TBL(f1) VALUES ('10e-400');
44 ERROR:  "10e-400" is out of range for type real
45 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('10e-400');
46                                            ^
47 INSERT INTO FLOAT4_TBL(f1) VALUES ('-10e-400');
48 ERROR:  "-10e-400" is out of range for type real
49 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('-10e-400');
50                                            ^
51 -- bad input
52 INSERT INTO FLOAT4_TBL(f1) VALUES ('');
53 ERROR:  invalid input syntax for type real: ""
54 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('');
55                                            ^
56 INSERT INTO FLOAT4_TBL(f1) VALUES ('       ');
57 ERROR:  invalid input syntax for type real: "       "
58 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('       ');
59                                            ^
60 INSERT INTO FLOAT4_TBL(f1) VALUES ('xyz');
61 ERROR:  invalid input syntax for type real: "xyz"
62 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('xyz');
63                                            ^
64 INSERT INTO FLOAT4_TBL(f1) VALUES ('5.0.0');
65 ERROR:  invalid input syntax for type real: "5.0.0"
66 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('5.0.0');
67                                            ^
68 INSERT INTO FLOAT4_TBL(f1) VALUES ('5 . 0');
69 ERROR:  invalid input syntax for type real: "5 . 0"
70 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('5 . 0');
71                                            ^
72 INSERT INTO FLOAT4_TBL(f1) VALUES ('5.   0');
73 ERROR:  invalid input syntax for type real: "5.   0"
74 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('5.   0');
75                                            ^
76 INSERT INTO FLOAT4_TBL(f1) VALUES ('     - 3.0');
77 ERROR:  invalid input syntax for type real: "     - 3.0"
78 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('     - 3.0');
79                                            ^
80 INSERT INTO FLOAT4_TBL(f1) VALUES ('123            5');
81 ERROR:  invalid input syntax for type real: "123            5"
82 LINE 1: INSERT INTO FLOAT4_TBL(f1) VALUES ('123            5');
83                                            ^
84 -- special inputs
85 SELECT 'NaN'::float4;
86  float4 
87 --------
88     NaN
89 (1 row)
91 SELECT 'nan'::float4;
92  float4 
93 --------
94     NaN
95 (1 row)
97 SELECT '   NAN  '::float4;
98  float4 
99 --------
100     NaN
101 (1 row)
103 SELECT 'infinity'::float4;
104   float4  
105 ----------
106  Infinity
107 (1 row)
109 SELECT '          -INFINiTY   '::float4;
110   float4   
111 -----------
112  -Infinity
113 (1 row)
115 -- bad special inputs
116 SELECT 'N A N'::float4;
117 ERROR:  invalid input syntax for type real: "N A N"
118 LINE 1: SELECT 'N A N'::float4;
119                ^
120 SELECT 'NaN x'::float4;
121 ERROR:  invalid input syntax for type real: "NaN x"
122 LINE 1: SELECT 'NaN x'::float4;
123                ^
124 SELECT ' INFINITY    x'::float4;
125 ERROR:  invalid input syntax for type real: " INFINITY    x"
126 LINE 1: SELECT ' INFINITY    x'::float4;
127                ^
128 SELECT 'Infinity'::float4 + 100.0;
129  ?column? 
130 ----------
131  Infinity
132 (1 row)
134 SELECT 'Infinity'::float4 / 'Infinity'::float4;
135  ?column? 
136 ----------
137       NaN
138 (1 row)
140 SELECT '42'::float4 / 'Infinity'::float4;
141  ?column? 
142 ----------
143         0
144 (1 row)
146 SELECT 'nan'::float4 / 'nan'::float4;
147  ?column? 
148 ----------
149       NaN
150 (1 row)
152 SELECT 'nan'::float4 / '0'::float4;
153  ?column? 
154 ----------
155       NaN
156 (1 row)
158 SELECT 'nan'::numeric::float4;
159  float4 
160 --------
161     NaN
162 (1 row)
164 SELECT * FROM FLOAT4_TBL;
165       f1       
166 ---------------
167              0
168         1004.3
169         -34.84
170  1.2345679e+20
171  1.2345679e-20
172 (5 rows)
174 SELECT f.* FROM FLOAT4_TBL f WHERE f.f1 <> '1004.3';
175       f1       
176 ---------------
177              0
178         -34.84
179  1.2345679e+20
180  1.2345679e-20
181 (4 rows)
183 SELECT f.* FROM FLOAT4_TBL f WHERE f.f1 = '1004.3';
184    f1   
185 --------
186  1004.3
187 (1 row)
189 SELECT f.* FROM FLOAT4_TBL f WHERE '1004.3' > f.f1;
190       f1       
191 ---------------
192              0
193         -34.84
194  1.2345679e-20
195 (3 rows)
197 SELECT f.* FROM FLOAT4_TBL f WHERE  f.f1 < '1004.3';
198       f1       
199 ---------------
200              0
201         -34.84
202  1.2345679e-20
203 (3 rows)
205 SELECT f.* FROM FLOAT4_TBL f WHERE '1004.3' >= f.f1;
206       f1       
207 ---------------
208              0
209         1004.3
210         -34.84
211  1.2345679e-20
212 (4 rows)
214 SELECT f.* FROM FLOAT4_TBL f WHERE  f.f1 <= '1004.3';
215       f1       
216 ---------------
217              0
218         1004.3
219         -34.84
220  1.2345679e-20
221 (4 rows)
223 SELECT f.f1, f.f1 * '-10' AS x FROM FLOAT4_TBL f
224    WHERE f.f1 > '0.0';
225       f1       |       x        
226 ---------------+----------------
227         1004.3 |         -10043
228  1.2345679e+20 | -1.2345678e+21
229  1.2345679e-20 | -1.2345678e-19
230 (3 rows)
232 SELECT f.f1, f.f1 + '-10' AS x FROM FLOAT4_TBL f
233    WHERE f.f1 > '0.0';
234       f1       |       x       
235 ---------------+---------------
236         1004.3 |         994.3
237  1.2345679e+20 | 1.2345679e+20
238  1.2345679e-20 |           -10
239 (3 rows)
241 SELECT f.f1, f.f1 / '-10' AS x FROM FLOAT4_TBL f
242    WHERE f.f1 > '0.0';
243       f1       |       x        
244 ---------------+----------------
245         1004.3 |        -100.43
246  1.2345679e+20 | -1.2345679e+19
247  1.2345679e-20 | -1.2345679e-21
248 (3 rows)
250 SELECT f.f1, f.f1 - '-10' AS x FROM FLOAT4_TBL f
251    WHERE f.f1 > '0.0';
252       f1       |       x       
253 ---------------+---------------
254         1004.3 |        1014.3
255  1.2345679e+20 | 1.2345679e+20
256  1.2345679e-20 |            10
257 (3 rows)
259 -- test divide by zero
260 SELECT f.f1 / '0.0' from FLOAT4_TBL f;
261 ERROR:  division by zero
262 SELECT * FROM FLOAT4_TBL;
263       f1       
264 ---------------
265              0
266         1004.3
267         -34.84
268  1.2345679e+20
269  1.2345679e-20
270 (5 rows)
272 -- test the unary float4abs operator
273 SELECT f.f1, @f.f1 AS abs_f1 FROM FLOAT4_TBL f;
274       f1       |    abs_f1     
275 ---------------+---------------
276              0 |             0
277         1004.3 |        1004.3
278         -34.84 |         34.84
279  1.2345679e+20 | 1.2345679e+20
280  1.2345679e-20 | 1.2345679e-20
281 (5 rows)
283 UPDATE FLOAT4_TBL
284    SET f1 = FLOAT4_TBL.f1 * '-1'
285    WHERE FLOAT4_TBL.f1 > '0.0';
286 SELECT * FROM FLOAT4_TBL;
287        f1       
288 ----------------
289               0
290          -34.84
291         -1004.3
292  -1.2345679e+20
293  -1.2345679e-20
294 (5 rows)
296 -- test edge-case coercions to integer
297 SELECT '32767.4'::float4::int2;
298  int2  
299 -------
300  32767
301 (1 row)
303 SELECT '32767.6'::float4::int2;
304 ERROR:  smallint out of range
305 SELECT '-32768.4'::float4::int2;
306   int2  
307 --------
308  -32768
309 (1 row)
311 SELECT '-32768.6'::float4::int2;
312 ERROR:  smallint out of range
313 SELECT '2147483520'::float4::int4;
314     int4    
315 ------------
316  2147483520
317 (1 row)
319 SELECT '2147483647'::float4::int4;
320 ERROR:  integer out of range
321 SELECT '-2147483648.5'::float4::int4;
322     int4     
323 -------------
324  -2147483648
325 (1 row)
327 SELECT '-2147483900'::float4::int4;
328 ERROR:  integer out of range
329 SELECT '9223369837831520256'::float4::int8;
330         int8         
331 ---------------------
332  9223369837831520256
333 (1 row)
335 SELECT '9223372036854775807'::float4::int8;
336 ERROR:  bigint out of range
337 SELECT '-9223372036854775808.5'::float4::int8;
338          int8         
339 ----------------------
340  -9223372036854775808
341 (1 row)
343 SELECT '-9223380000000000000'::float4::int8;
344 ERROR:  bigint out of range
345 -- Test for correct input rounding in edge cases.
346 -- These lists are from Paxson 1991, excluding subnormals and
347 -- inputs of over 9 sig. digits.
348 SELECT float4send('5e-20'::float4);
349  float4send 
350 ------------
351  \x1f6c1e4a
352 (1 row)
354 SELECT float4send('67e14'::float4);
355  float4send 
356 ------------
357  \x59be6cea
358 (1 row)
360 SELECT float4send('985e15'::float4);
361  float4send 
362 ------------
363  \x5d5ab6c4
364 (1 row)
366 SELECT float4send('55895e-16'::float4);
367  float4send 
368 ------------
369  \x2cc4a9bd
370 (1 row)
372 SELECT float4send('7038531e-32'::float4);
373  float4send 
374 ------------
375  \x15ae43fd
376 (1 row)
378 SELECT float4send('702990899e-20'::float4);
379  float4send 
380 ------------
381  \x2cf757ca
382 (1 row)
384 SELECT float4send('3e-23'::float4);
385  float4send 
386 ------------
387  \x1a111234
388 (1 row)
390 SELECT float4send('57e18'::float4);
391  float4send 
392 ------------
393  \x6045c22c
394 (1 row)
396 SELECT float4send('789e-35'::float4);
397  float4send 
398 ------------
399  \x0a23de70
400 (1 row)
402 SELECT float4send('2539e-18'::float4);
403  float4send 
404 ------------
405  \x2736f449
406 (1 row)
408 SELECT float4send('76173e28'::float4);
409  float4send 
410 ------------
411  \x7616398a
412 (1 row)
414 SELECT float4send('887745e-11'::float4);
415  float4send 
416 ------------
417  \x3714f05c
418 (1 row)
420 SELECT float4send('5382571e-37'::float4);
421  float4send 
422 ------------
423  \x0d2eaca7
424 (1 row)
426 SELECT float4send('82381273e-35'::float4);
427  float4send 
428 ------------
429  \x128289d1
430 (1 row)
432 SELECT float4send('750486563e-38'::float4);
433  float4send 
434 ------------
435  \x0f18377e
436 (1 row)
438 -- Test that the smallest possible normalized input value inputs
439 -- correctly, either in 9-significant-digit or shortest-decimal
440 -- format.
442 -- exact val is             1.1754943508...
443 -- shortest val is          1.1754944000
444 -- midpoint to next val is  1.1754944208...
445 SELECT float4send('1.17549435e-38'::float4);
446  float4send 
447 ------------
448  \x00800000
449 (1 row)
451 SELECT float4send('1.1754944e-38'::float4);
452  float4send 
453 ------------
454  \x00800000
455 (1 row)
457 -- test output (and round-trip safety) of various values.
458 -- To ensure we're testing what we think we're testing, start with
459 -- float values specified by bit patterns (as a useful side effect,
460 -- this means we'll fail on non-IEEE platforms).
461 create type xfloat4;
462 create function xfloat4in(cstring) returns xfloat4 immutable strict
463   language internal as 'int4in';
464 NOTICE:  return type xfloat4 is only a shell
465 create function xfloat4out(xfloat4) returns cstring immutable strict
466   language internal as 'int4out';
467 NOTICE:  argument type xfloat4 is only a shell
468 create type xfloat4 (input = xfloat4in, output = xfloat4out, like = float4);
469 create cast (xfloat4 as float4) without function;
470 create cast (float4 as xfloat4) without function;
471 create cast (xfloat4 as integer) without function;
472 create cast (integer as xfloat4) without function;
473 -- float4: seeeeeee emmmmmmm mmmmmmmm mmmmmmmm
474 -- we don't care to assume the platform's strtod() handles subnormals
475 -- correctly; those are "use at your own risk". However we do test
476 -- subnormal outputs, since those are under our control.
477 with testdata(bits) as (values
478   -- small subnormals
479   (x'00000001'),
480   (x'00000002'), (x'00000003'),
481   (x'00000010'), (x'00000011'), (x'00000100'), (x'00000101'),
482   (x'00004000'), (x'00004001'), (x'00080000'), (x'00080001'),
483   -- stress values
484   (x'0053c4f4'),  -- 7693e-42
485   (x'006c85c4'),  -- 996622e-44
486   (x'0041ca76'),  -- 60419369e-46
487   (x'004b7678'),  -- 6930161142e-48
488   -- taken from upstream testsuite
489   (x'00000007'),
490   (x'00424fe2'),
491   -- borderline between subnormal and normal
492   (x'007ffff0'), (x'007ffff1'), (x'007ffffe'), (x'007fffff'))
493 select float4send(flt) as ibits,
494        flt
495   from (select bits::integer::xfloat4::float4 as flt
496           from testdata
497         offset 0) s;
498    ibits    |      flt      
499 ------------+---------------
500  \x00000001 |         1e-45
501  \x00000002 |         3e-45
502  \x00000003 |         4e-45
503  \x00000010 |       2.2e-44
504  \x00000011 |       2.4e-44
505  \x00000100 |      3.59e-43
506  \x00000101 |       3.6e-43
507  \x00004000 |    2.2959e-41
508  \x00004001 |     2.296e-41
509  \x00080000 |   7.34684e-40
510  \x00080001 |   7.34685e-40
511  \x0053c4f4 |     7.693e-39
512  \x006c85c4 |   9.96622e-39
513  \x0041ca76 |  6.041937e-39
514  \x004b7678 |  6.930161e-39
515  \x00000007 |         1e-44
516  \x00424fe2 |    6.0898e-39
517  \x007ffff0 | 1.1754921e-38
518  \x007ffff1 | 1.1754922e-38
519  \x007ffffe | 1.1754941e-38
520  \x007fffff | 1.1754942e-38
521 (21 rows)
523 with testdata(bits) as (values
524   (x'00000000'),
525   -- smallest normal values
526   (x'00800000'), (x'00800001'), (x'00800004'), (x'00800005'),
527   (x'00800006'),
528   -- small normal values chosen for short vs. long output
529   (x'008002f1'), (x'008002f2'), (x'008002f3'),
530   (x'00800e17'), (x'00800e18'), (x'00800e19'),
531   -- assorted values (random mantissae)
532   (x'01000001'), (x'01102843'), (x'01a52c98'),
533   (x'0219c229'), (x'02e4464d'), (x'037343c1'), (x'03a91b36'),
534   (x'047ada65'), (x'0496fe87'), (x'0550844f'), (x'05999da3'),
535   (x'060ea5e2'), (x'06e63c45'), (x'07f1e548'), (x'0fc5282b'),
536   (x'1f850283'), (x'2874a9d6'),
537   -- values around 5e-08
538   (x'3356bf94'), (x'3356bf95'), (x'3356bf96'),
539   -- around 1e-07
540   (x'33d6bf94'), (x'33d6bf95'), (x'33d6bf96'),
541   -- around 3e-07 .. 1e-04
542   (x'34a10faf'), (x'34a10fb0'), (x'34a10fb1'),
543   (x'350637bc'), (x'350637bd'), (x'350637be'),
544   (x'35719786'), (x'35719787'), (x'35719788'),
545   (x'358637bc'), (x'358637bd'), (x'358637be'),
546   (x'36a7c5ab'), (x'36a7c5ac'), (x'36a7c5ad'),
547   (x'3727c5ab'), (x'3727c5ac'), (x'3727c5ad'),
548   -- format crossover at 1e-04
549   (x'38d1b714'), (x'38d1b715'), (x'38d1b716'),
550   (x'38d1b717'), (x'38d1b718'), (x'38d1b719'),
551   (x'38d1b71a'), (x'38d1b71b'), (x'38d1b71c'),
552   (x'38d1b71d'),
553   --
554   (x'38dffffe'), (x'38dfffff'), (x'38e00000'),
555   (x'38efffff'), (x'38f00000'), (x'38f00001'),
556   (x'3a83126e'), (x'3a83126f'), (x'3a831270'),
557   (x'3c23d709'), (x'3c23d70a'), (x'3c23d70b'),
558   (x'3dcccccc'), (x'3dcccccd'), (x'3dccccce'),
559   -- chosen to need 9 digits for 3dcccd70
560   (x'3dcccd6f'), (x'3dcccd70'), (x'3dcccd71'),
561   --
562   (x'3effffff'), (x'3f000000'), (x'3f000001'),
563   (x'3f333332'), (x'3f333333'), (x'3f333334'),
564   -- approach 1.0 with increasing numbers of 9s
565   (x'3f666665'), (x'3f666666'), (x'3f666667'),
566   (x'3f7d70a3'), (x'3f7d70a4'), (x'3f7d70a5'),
567   (x'3f7fbe76'), (x'3f7fbe77'), (x'3f7fbe78'),
568   (x'3f7ff971'), (x'3f7ff972'), (x'3f7ff973'),
569   (x'3f7fff57'), (x'3f7fff58'), (x'3f7fff59'),
570   (x'3f7fffee'), (x'3f7fffef'),
571   -- values very close to 1
572   (x'3f7ffff0'), (x'3f7ffff1'), (x'3f7ffff2'),
573   (x'3f7ffff3'), (x'3f7ffff4'), (x'3f7ffff5'),
574   (x'3f7ffff6'), (x'3f7ffff7'), (x'3f7ffff8'),
575   (x'3f7ffff9'), (x'3f7ffffa'), (x'3f7ffffb'),
576   (x'3f7ffffc'), (x'3f7ffffd'), (x'3f7ffffe'),
577   (x'3f7fffff'),
578   (x'3f800000'),
579   (x'3f800001'), (x'3f800002'), (x'3f800003'),
580   (x'3f800004'), (x'3f800005'), (x'3f800006'),
581   (x'3f800007'), (x'3f800008'), (x'3f800009'),
582   -- values 1 to 1.1
583   (x'3f80000f'), (x'3f800010'), (x'3f800011'),
584   (x'3f800012'), (x'3f800013'), (x'3f800014'),
585   (x'3f800017'), (x'3f800018'), (x'3f800019'),
586   (x'3f80001a'), (x'3f80001b'), (x'3f80001c'),
587   (x'3f800029'), (x'3f80002a'), (x'3f80002b'),
588   (x'3f800053'), (x'3f800054'), (x'3f800055'),
589   (x'3f800346'), (x'3f800347'), (x'3f800348'),
590   (x'3f8020c4'), (x'3f8020c5'), (x'3f8020c6'),
591   (x'3f8147ad'), (x'3f8147ae'), (x'3f8147af'),
592   (x'3f8ccccc'), (x'3f8ccccd'), (x'3f8cccce'),
593   --
594   (x'3fc90fdb'), -- pi/2
595   (x'402df854'), -- e
596   (x'40490fdb'), -- pi
597   --
598   (x'409fffff'), (x'40a00000'), (x'40a00001'),
599   (x'40afffff'), (x'40b00000'), (x'40b00001'),
600   (x'411fffff'), (x'41200000'), (x'41200001'),
601   (x'42c7ffff'), (x'42c80000'), (x'42c80001'),
602   (x'4479ffff'), (x'447a0000'), (x'447a0001'),
603   (x'461c3fff'), (x'461c4000'), (x'461c4001'),
604   (x'47c34fff'), (x'47c35000'), (x'47c35001'),
605   (x'497423ff'), (x'49742400'), (x'49742401'),
606   (x'4b18967f'), (x'4b189680'), (x'4b189681'),
607   (x'4cbebc1f'), (x'4cbebc20'), (x'4cbebc21'),
608   (x'4e6e6b27'), (x'4e6e6b28'), (x'4e6e6b29'),
609   (x'501502f8'), (x'501502f9'), (x'501502fa'),
610   (x'51ba43b6'), (x'51ba43b7'), (x'51ba43b8'),
611   -- stress values
612   (x'1f6c1e4a'),  -- 5e-20
613   (x'59be6cea'),  -- 67e14
614   (x'5d5ab6c4'),  -- 985e15
615   (x'2cc4a9bd'),  -- 55895e-16
616   (x'15ae43fd'),  -- 7038531e-32
617   (x'2cf757ca'),  -- 702990899e-20
618   (x'665ba998'),  -- 25933168707e13
619   (x'743c3324'),  -- 596428896559e20
620   -- exercise fixed-point memmoves
621   (x'47f1205a'),
622   (x'4640e6ae'),
623   (x'449a5225'),
624   (x'42f6e9d5'),
625   (x'414587dd'),
626   (x'3f9e064b'),
627   -- these cases come from the upstream's testsuite
628   -- BoundaryRoundEven
629   (x'4c000004'),
630   (x'50061c46'),
631   (x'510006a8'),
632   -- ExactValueRoundEven
633   (x'48951f84'),
634   (x'45fd1840'),
635   -- LotsOfTrailingZeros
636   (x'39800000'),
637   (x'3b200000'),
638   (x'3b900000'),
639   (x'3bd00000'),
640   -- Regression
641   (x'63800000'),
642   (x'4b000000'),
643   (x'4b800000'),
644   (x'4c000001'),
645   (x'4c800b0d'),
646   (x'00d24584'),
647   (x'00d90b88'),
648   (x'45803f34'),
649   (x'4f9f24f7'),
650   (x'3a8722c3'),
651   (x'5c800041'),
652   (x'15ae43fd'),
653   (x'5d4cccfb'),
654   (x'4c800001'),
655   (x'57800ed8'),
656   (x'5f000000'),
657   (x'700000f0'),
658   (x'5f23e9ac'),
659   (x'5e9502f9'),
660   (x'5e8012b1'),
661   (x'3c000028'),
662   (x'60cde861'),
663   (x'03aa2a50'),
664   (x'43480000'),
665   (x'4c000000'),
666   -- LooksLikePow5
667   (x'5D1502F9'),
668   (x'5D9502F9'),
669   (x'5E1502F9'),
670   -- OutputLength
671   (x'3f99999a'),
672   (x'3f9d70a4'),
673   (x'3f9df3b6'),
674   (x'3f9e0419'),
675   (x'3f9e0610'),
676   (x'3f9e064b'),
677   (x'3f9e0651'),
678   (x'03d20cfe')
680 select float4send(flt) as ibits,
681        flt,
682        flt::text::float4 as r_flt,
683        float4send(flt::text::float4) as obits,
684        float4send(flt::text::float4) = float4send(flt) as correct
685   from (select bits::integer::xfloat4::float4 as flt
686           from testdata
687         offset 0) s;
688    ibits    |      flt       |     r_flt      |   obits    | correct 
689 ------------+----------------+----------------+------------+---------
690  \x00000000 |              0 |              0 | \x00000000 | t
691  \x00800000 |  1.1754944e-38 |  1.1754944e-38 | \x00800000 | t
692  \x00800001 |  1.1754945e-38 |  1.1754945e-38 | \x00800001 | t
693  \x00800004 |  1.1754949e-38 |  1.1754949e-38 | \x00800004 | t
694  \x00800005 |   1.175495e-38 |   1.175495e-38 | \x00800005 | t
695  \x00800006 |  1.1754952e-38 |  1.1754952e-38 | \x00800006 | t
696  \x008002f1 |  1.1755999e-38 |  1.1755999e-38 | \x008002f1 | t
697  \x008002f2 |     1.1756e-38 |     1.1756e-38 | \x008002f2 | t
698  \x008002f3 |  1.1756001e-38 |  1.1756001e-38 | \x008002f3 | t
699  \x00800e17 |  1.1759998e-38 |  1.1759998e-38 | \x00800e17 | t
700  \x00800e18 |      1.176e-38 |      1.176e-38 | \x00800e18 | t
701  \x00800e19 |  1.1760001e-38 |  1.1760001e-38 | \x00800e19 | t
702  \x01000001 |   2.350989e-38 |   2.350989e-38 | \x01000001 | t
703  \x01102843 |   2.647751e-38 |   2.647751e-38 | \x01102843 | t
704  \x01a52c98 |  6.0675416e-38 |  6.0675416e-38 | \x01a52c98 | t
705  \x0219c229 |  1.1296386e-37 |  1.1296386e-37 | \x0219c229 | t
706  \x02e4464d |   3.354194e-37 |   3.354194e-37 | \x02e4464d | t
707  \x037343c1 |   7.148906e-37 |   7.148906e-37 | \x037343c1 | t
708  \x03a91b36 |   9.939175e-37 |   9.939175e-37 | \x03a91b36 | t
709  \x047ada65 |   2.948764e-36 |   2.948764e-36 | \x047ada65 | t
710  \x0496fe87 |  3.5498577e-36 |  3.5498577e-36 | \x0496fe87 | t
711  \x0550844f |   9.804414e-36 |   9.804414e-36 | \x0550844f | t
712  \x05999da3 |  1.4445957e-35 |  1.4445957e-35 | \x05999da3 | t
713  \x060ea5e2 |  2.6829103e-35 |  2.6829103e-35 | \x060ea5e2 | t
714  \x06e63c45 |   8.660494e-35 |   8.660494e-35 | \x06e63c45 | t
715  \x07f1e548 |   3.639641e-34 |   3.639641e-34 | \x07f1e548 | t
716  \x0fc5282b |  1.9441172e-29 |  1.9441172e-29 | \x0fc5282b | t
717  \x1f850283 |  5.6331846e-20 |  5.6331846e-20 | \x1f850283 | t
718  \x2874a9d6 |  1.3581548e-14 |  1.3581548e-14 | \x2874a9d6 | t
719  \x3356bf94 |  4.9999997e-08 |  4.9999997e-08 | \x3356bf94 | t
720  \x3356bf95 |          5e-08 |          5e-08 | \x3356bf95 | t
721  \x3356bf96 |  5.0000004e-08 |  5.0000004e-08 | \x3356bf96 | t
722  \x33d6bf94 |  9.9999994e-08 |  9.9999994e-08 | \x33d6bf94 | t
723  \x33d6bf95 |          1e-07 |          1e-07 | \x33d6bf95 | t
724  \x33d6bf96 |  1.0000001e-07 |  1.0000001e-07 | \x33d6bf96 | t
725  \x34a10faf |  2.9999998e-07 |  2.9999998e-07 | \x34a10faf | t
726  \x34a10fb0 |          3e-07 |          3e-07 | \x34a10fb0 | t
727  \x34a10fb1 |  3.0000004e-07 |  3.0000004e-07 | \x34a10fb1 | t
728  \x350637bc |  4.9999994e-07 |  4.9999994e-07 | \x350637bc | t
729  \x350637bd |          5e-07 |          5e-07 | \x350637bd | t
730  \x350637be |  5.0000006e-07 |  5.0000006e-07 | \x350637be | t
731  \x35719786 |   8.999999e-07 |   8.999999e-07 | \x35719786 | t
732  \x35719787 |          9e-07 |          9e-07 | \x35719787 | t
733  \x35719788 |  9.0000003e-07 |  9.0000003e-07 | \x35719788 | t
734  \x358637bc |   9.999999e-07 |   9.999999e-07 | \x358637bc | t
735  \x358637bd |          1e-06 |          1e-06 | \x358637bd | t
736  \x358637be |  1.0000001e-06 |  1.0000001e-06 | \x358637be | t
737  \x36a7c5ab |  4.9999994e-06 |  4.9999994e-06 | \x36a7c5ab | t
738  \x36a7c5ac |          5e-06 |          5e-06 | \x36a7c5ac | t
739  \x36a7c5ad |  5.0000003e-06 |  5.0000003e-06 | \x36a7c5ad | t
740  \x3727c5ab |   9.999999e-06 |   9.999999e-06 | \x3727c5ab | t
741  \x3727c5ac |          1e-05 |          1e-05 | \x3727c5ac | t
742  \x3727c5ad |  1.0000001e-05 |  1.0000001e-05 | \x3727c5ad | t
743  \x38d1b714 |  9.9999976e-05 |  9.9999976e-05 | \x38d1b714 | t
744  \x38d1b715 |   9.999998e-05 |   9.999998e-05 | \x38d1b715 | t
745  \x38d1b716 |   9.999999e-05 |   9.999999e-05 | \x38d1b716 | t
746  \x38d1b717 |         0.0001 |         0.0001 | \x38d1b717 | t
747  \x38d1b718 | 0.000100000005 | 0.000100000005 | \x38d1b718 | t
748  \x38d1b719 |  0.00010000001 |  0.00010000001 | \x38d1b719 | t
749  \x38d1b71a |  0.00010000002 |  0.00010000002 | \x38d1b71a | t
750  \x38d1b71b |  0.00010000003 |  0.00010000003 | \x38d1b71b | t
751  \x38d1b71c | 0.000100000034 | 0.000100000034 | \x38d1b71c | t
752  \x38d1b71d |  0.00010000004 |  0.00010000004 | \x38d1b71d | t
753  \x38dffffe |  0.00010681151 |  0.00010681151 | \x38dffffe | t
754  \x38dfffff | 0.000106811516 | 0.000106811516 | \x38dfffff | t
755  \x38e00000 |  0.00010681152 |  0.00010681152 | \x38e00000 | t
756  \x38efffff |  0.00011444091 |  0.00011444091 | \x38efffff | t
757  \x38f00000 |  0.00011444092 |  0.00011444092 | \x38f00000 | t
758  \x38f00001 | 0.000114440925 | 0.000114440925 | \x38f00001 | t
759  \x3a83126e |   0.0009999999 |   0.0009999999 | \x3a83126e | t
760  \x3a83126f |          0.001 |          0.001 | \x3a83126f | t
761  \x3a831270 |   0.0010000002 |   0.0010000002 | \x3a831270 | t
762  \x3c23d709 |    0.009999999 |    0.009999999 | \x3c23d709 | t
763  \x3c23d70a |           0.01 |           0.01 | \x3c23d70a | t
764  \x3c23d70b |    0.010000001 |    0.010000001 | \x3c23d70b | t
765  \x3dcccccc |    0.099999994 |    0.099999994 | \x3dcccccc | t
766  \x3dcccccd |            0.1 |            0.1 | \x3dcccccd | t
767  \x3dccccce |     0.10000001 |     0.10000001 | \x3dccccce | t
768  \x3dcccd6f |     0.10000121 |     0.10000121 | \x3dcccd6f | t
769  \x3dcccd70 |    0.100001216 |    0.100001216 | \x3dcccd70 | t
770  \x3dcccd71 |     0.10000122 |     0.10000122 | \x3dcccd71 | t
771  \x3effffff |     0.49999997 |     0.49999997 | \x3effffff | t
772  \x3f000000 |            0.5 |            0.5 | \x3f000000 | t
773  \x3f000001 |     0.50000006 |     0.50000006 | \x3f000001 | t
774  \x3f333332 |      0.6999999 |      0.6999999 | \x3f333332 | t
775  \x3f333333 |            0.7 |            0.7 | \x3f333333 | t
776  \x3f333334 |     0.70000005 |     0.70000005 | \x3f333334 | t
777  \x3f666665 |      0.8999999 |      0.8999999 | \x3f666665 | t
778  \x3f666666 |            0.9 |            0.9 | \x3f666666 | t
779  \x3f666667 |     0.90000004 |     0.90000004 | \x3f666667 | t
780  \x3f7d70a3 |     0.98999995 |     0.98999995 | \x3f7d70a3 | t
781  \x3f7d70a4 |           0.99 |           0.99 | \x3f7d70a4 | t
782  \x3f7d70a5 |     0.99000007 |     0.99000007 | \x3f7d70a5 | t
783  \x3f7fbe76 |     0.99899995 |     0.99899995 | \x3f7fbe76 | t
784  \x3f7fbe77 |          0.999 |          0.999 | \x3f7fbe77 | t
785  \x3f7fbe78 |      0.9990001 |      0.9990001 | \x3f7fbe78 | t
786  \x3f7ff971 |      0.9998999 |      0.9998999 | \x3f7ff971 | t
787  \x3f7ff972 |         0.9999 |         0.9999 | \x3f7ff972 | t
788  \x3f7ff973 |     0.99990004 |     0.99990004 | \x3f7ff973 | t
789  \x3f7fff57 |      0.9999899 |      0.9999899 | \x3f7fff57 | t
790  \x3f7fff58 |        0.99999 |        0.99999 | \x3f7fff58 | t
791  \x3f7fff59 |     0.99999005 |     0.99999005 | \x3f7fff59 | t
792  \x3f7fffee |      0.9999989 |      0.9999989 | \x3f7fffee | t
793  \x3f7fffef |       0.999999 |       0.999999 | \x3f7fffef | t
794  \x3f7ffff0 |     0.99999905 |     0.99999905 | \x3f7ffff0 | t
795  \x3f7ffff1 |      0.9999991 |      0.9999991 | \x3f7ffff1 | t
796  \x3f7ffff2 |     0.99999917 |     0.99999917 | \x3f7ffff2 | t
797  \x3f7ffff3 |      0.9999992 |      0.9999992 | \x3f7ffff3 | t
798  \x3f7ffff4 |      0.9999993 |      0.9999993 | \x3f7ffff4 | t
799  \x3f7ffff5 |     0.99999934 |     0.99999934 | \x3f7ffff5 | t
800  \x3f7ffff6 |      0.9999994 |      0.9999994 | \x3f7ffff6 | t
801  \x3f7ffff7 |     0.99999946 |     0.99999946 | \x3f7ffff7 | t
802  \x3f7ffff8 |      0.9999995 |      0.9999995 | \x3f7ffff8 | t
803  \x3f7ffff9 |      0.9999996 |      0.9999996 | \x3f7ffff9 | t
804  \x3f7ffffa |     0.99999964 |     0.99999964 | \x3f7ffffa | t
805  \x3f7ffffb |      0.9999997 |      0.9999997 | \x3f7ffffb | t
806  \x3f7ffffc |     0.99999976 |     0.99999976 | \x3f7ffffc | t
807  \x3f7ffffd |      0.9999998 |      0.9999998 | \x3f7ffffd | t
808  \x3f7ffffe |      0.9999999 |      0.9999999 | \x3f7ffffe | t
809  \x3f7fffff |     0.99999994 |     0.99999994 | \x3f7fffff | t
810  \x3f800000 |              1 |              1 | \x3f800000 | t
811  \x3f800001 |      1.0000001 |      1.0000001 | \x3f800001 | t
812  \x3f800002 |      1.0000002 |      1.0000002 | \x3f800002 | t
813  \x3f800003 |      1.0000004 |      1.0000004 | \x3f800003 | t
814  \x3f800004 |      1.0000005 |      1.0000005 | \x3f800004 | t
815  \x3f800005 |      1.0000006 |      1.0000006 | \x3f800005 | t
816  \x3f800006 |      1.0000007 |      1.0000007 | \x3f800006 | t
817  \x3f800007 |      1.0000008 |      1.0000008 | \x3f800007 | t
818  \x3f800008 |       1.000001 |       1.000001 | \x3f800008 | t
819  \x3f800009 |      1.0000011 |      1.0000011 | \x3f800009 | t
820  \x3f80000f |      1.0000018 |      1.0000018 | \x3f80000f | t
821  \x3f800010 |      1.0000019 |      1.0000019 | \x3f800010 | t
822  \x3f800011 |       1.000002 |       1.000002 | \x3f800011 | t
823  \x3f800012 |      1.0000021 |      1.0000021 | \x3f800012 | t
824  \x3f800013 |      1.0000023 |      1.0000023 | \x3f800013 | t
825  \x3f800014 |      1.0000024 |      1.0000024 | \x3f800014 | t
826  \x3f800017 |      1.0000027 |      1.0000027 | \x3f800017 | t
827  \x3f800018 |      1.0000029 |      1.0000029 | \x3f800018 | t
828  \x3f800019 |       1.000003 |       1.000003 | \x3f800019 | t
829  \x3f80001a |      1.0000031 |      1.0000031 | \x3f80001a | t
830  \x3f80001b |      1.0000032 |      1.0000032 | \x3f80001b | t
831  \x3f80001c |      1.0000033 |      1.0000033 | \x3f80001c | t
832  \x3f800029 |      1.0000049 |      1.0000049 | \x3f800029 | t
833  \x3f80002a |       1.000005 |       1.000005 | \x3f80002a | t
834  \x3f80002b |      1.0000051 |      1.0000051 | \x3f80002b | t
835  \x3f800053 |      1.0000099 |      1.0000099 | \x3f800053 | t
836  \x3f800054 |        1.00001 |        1.00001 | \x3f800054 | t
837  \x3f800055 |      1.0000101 |      1.0000101 | \x3f800055 | t
838  \x3f800346 |      1.0000999 |      1.0000999 | \x3f800346 | t
839  \x3f800347 |         1.0001 |         1.0001 | \x3f800347 | t
840  \x3f800348 |      1.0001001 |      1.0001001 | \x3f800348 | t
841  \x3f8020c4 |      1.0009999 |      1.0009999 | \x3f8020c4 | t
842  \x3f8020c5 |          1.001 |          1.001 | \x3f8020c5 | t
843  \x3f8020c6 |      1.0010002 |      1.0010002 | \x3f8020c6 | t
844  \x3f8147ad |      1.0099999 |      1.0099999 | \x3f8147ad | t
845  \x3f8147ae |           1.01 |           1.01 | \x3f8147ae | t
846  \x3f8147af |      1.0100001 |      1.0100001 | \x3f8147af | t
847  \x3f8ccccc |      1.0999999 |      1.0999999 | \x3f8ccccc | t
848  \x3f8ccccd |            1.1 |            1.1 | \x3f8ccccd | t
849  \x3f8cccce |      1.1000001 |      1.1000001 | \x3f8cccce | t
850  \x3fc90fdb |      1.5707964 |      1.5707964 | \x3fc90fdb | t
851  \x402df854 |      2.7182817 |      2.7182817 | \x402df854 | t
852  \x40490fdb |      3.1415927 |      3.1415927 | \x40490fdb | t
853  \x409fffff |      4.9999995 |      4.9999995 | \x409fffff | t
854  \x40a00000 |              5 |              5 | \x40a00000 | t
855  \x40a00001 |      5.0000005 |      5.0000005 | \x40a00001 | t
856  \x40afffff |      5.4999995 |      5.4999995 | \x40afffff | t
857  \x40b00000 |            5.5 |            5.5 | \x40b00000 | t
858  \x40b00001 |      5.5000005 |      5.5000005 | \x40b00001 | t
859  \x411fffff |       9.999999 |       9.999999 | \x411fffff | t
860  \x41200000 |             10 |             10 | \x41200000 | t
861  \x41200001 |      10.000001 |      10.000001 | \x41200001 | t
862  \x42c7ffff |       99.99999 |       99.99999 | \x42c7ffff | t
863  \x42c80000 |            100 |            100 | \x42c80000 | t
864  \x42c80001 |      100.00001 |      100.00001 | \x42c80001 | t
865  \x4479ffff |      999.99994 |      999.99994 | \x4479ffff | t
866  \x447a0000 |           1000 |           1000 | \x447a0000 | t
867  \x447a0001 |     1000.00006 |     1000.00006 | \x447a0001 | t
868  \x461c3fff |       9999.999 |       9999.999 | \x461c3fff | t
869  \x461c4000 |          10000 |          10000 | \x461c4000 | t
870  \x461c4001 |      10000.001 |      10000.001 | \x461c4001 | t
871  \x47c34fff |       99999.99 |       99999.99 | \x47c34fff | t
872  \x47c35000 |         100000 |         100000 | \x47c35000 | t
873  \x47c35001 |      100000.01 |      100000.01 | \x47c35001 | t
874  \x497423ff |      999999.94 |      999999.94 | \x497423ff | t
875  \x49742400 |          1e+06 |          1e+06 | \x49742400 | t
876  \x49742401 | 1.00000006e+06 | 1.00000006e+06 | \x49742401 | t
877  \x4b18967f |   9.999999e+06 |   9.999999e+06 | \x4b18967f | t
878  \x4b189680 |          1e+07 |          1e+07 | \x4b189680 | t
879  \x4b189681 |  1.0000001e+07 |  1.0000001e+07 | \x4b189681 | t
880  \x4cbebc1f |   9.999999e+07 |   9.999999e+07 | \x4cbebc1f | t
881  \x4cbebc20 |          1e+08 |          1e+08 | \x4cbebc20 | t
882  \x4cbebc21 |  1.0000001e+08 |  1.0000001e+08 | \x4cbebc21 | t
883  \x4e6e6b27 |  9.9999994e+08 |  9.9999994e+08 | \x4e6e6b27 | t
884  \x4e6e6b28 |          1e+09 |          1e+09 | \x4e6e6b28 | t
885  \x4e6e6b29 | 1.00000006e+09 | 1.00000006e+09 | \x4e6e6b29 | t
886  \x501502f8 |   9.999999e+09 |   9.999999e+09 | \x501502f8 | t
887  \x501502f9 |          1e+10 |          1e+10 | \x501502f9 | t
888  \x501502fa |  1.0000001e+10 |  1.0000001e+10 | \x501502fa | t
889  \x51ba43b6 |   9.999999e+10 |   9.999999e+10 | \x51ba43b6 | t
890  \x51ba43b7 |          1e+11 |          1e+11 | \x51ba43b7 | t
891  \x51ba43b8 |  1.0000001e+11 |  1.0000001e+11 | \x51ba43b8 | t
892  \x1f6c1e4a |          5e-20 |          5e-20 | \x1f6c1e4a | t
893  \x59be6cea |        6.7e+15 |        6.7e+15 | \x59be6cea | t
894  \x5d5ab6c4 |       9.85e+17 |       9.85e+17 | \x5d5ab6c4 | t
895  \x2cc4a9bd |     5.5895e-12 |     5.5895e-12 | \x2cc4a9bd | t
896  \x15ae43fd |   7.038531e-26 |   7.038531e-26 | \x15ae43fd | t
897  \x2cf757ca |  7.0299088e-12 |  7.0299088e-12 | \x2cf757ca | t
898  \x665ba998 |  2.5933168e+23 |  2.5933168e+23 | \x665ba998 | t
899  \x743c3324 |  5.9642887e+31 |  5.9642887e+31 | \x743c3324 | t
900  \x47f1205a |       123456.7 |       123456.7 | \x47f1205a | t
901  \x4640e6ae |       12345.67 |       12345.67 | \x4640e6ae | t
902  \x449a5225 |       1234.567 |       1234.567 | \x449a5225 | t
903  \x42f6e9d5 |       123.4567 |       123.4567 | \x42f6e9d5 | t
904  \x414587dd |       12.34567 |       12.34567 | \x414587dd | t
905  \x3f9e064b |       1.234567 |       1.234567 | \x3f9e064b | t
906  \x4c000004 |  3.3554448e+07 |  3.3554448e+07 | \x4c000004 | t
907  \x50061c46 |   8.999999e+09 |   8.999999e+09 | \x50061c46 | t
908  \x510006a8 |  3.4366718e+10 |  3.4366718e+10 | \x510006a8 | t
909  \x48951f84 |      305404.12 |      305404.12 | \x48951f84 | t
910  \x45fd1840 |      8099.0312 |      8099.0312 | \x45fd1840 | t
911  \x39800000 |  0.00024414062 |  0.00024414062 | \x39800000 | t
912  \x3b200000 |   0.0024414062 |   0.0024414062 | \x3b200000 | t
913  \x3b900000 |   0.0043945312 |   0.0043945312 | \x3b900000 | t
914  \x3bd00000 |   0.0063476562 |   0.0063476562 | \x3bd00000 | t
915  \x63800000 |  4.7223665e+21 |  4.7223665e+21 | \x63800000 | t
916  \x4b000000 |   8.388608e+06 |   8.388608e+06 | \x4b000000 | t
917  \x4b800000 |  1.6777216e+07 |  1.6777216e+07 | \x4b800000 | t
918  \x4c000001 |  3.3554436e+07 |  3.3554436e+07 | \x4c000001 | t
919  \x4c800b0d |  6.7131496e+07 |  6.7131496e+07 | \x4c800b0d | t
920  \x00d24584 |  1.9310392e-38 |  1.9310392e-38 | \x00d24584 | t
921  \x00d90b88 |   1.993244e-38 |   1.993244e-38 | \x00d90b88 | t
922  \x45803f34 |      4103.9004 |      4103.9004 | \x45803f34 | t
923  \x4f9f24f7 |  5.3399997e+09 |  5.3399997e+09 | \x4f9f24f7 | t
924  \x3a8722c3 |   0.0010310042 |   0.0010310042 | \x3a8722c3 | t
925  \x5c800041 |   2.882326e+17 |   2.882326e+17 | \x5c800041 | t
926  \x15ae43fd |   7.038531e-26 |   7.038531e-26 | \x15ae43fd | t
927  \x5d4cccfb |   9.223404e+17 |   9.223404e+17 | \x5d4cccfb | t
928  \x4c800001 |   6.710887e+07 |   6.710887e+07 | \x4c800001 | t
929  \x57800ed8 |   2.816025e+14 |   2.816025e+14 | \x57800ed8 | t
930  \x5f000000 |   9.223372e+18 |   9.223372e+18 | \x5f000000 | t
931  \x700000f0 |  1.5846086e+29 |  1.5846086e+29 | \x700000f0 | t
932  \x5f23e9ac |  1.1811161e+19 |  1.1811161e+19 | \x5f23e9ac | t
933  \x5e9502f9 |   5.368709e+18 |   5.368709e+18 | \x5e9502f9 | t
934  \x5e8012b1 |  4.6143166e+18 |  4.6143166e+18 | \x5e8012b1 | t
935  \x3c000028 |    0.007812537 |    0.007812537 | \x3c000028 | t
936  \x60cde861 | 1.18697725e+20 | 1.18697725e+20 | \x60cde861 | t
937  \x03aa2a50 | 1.00014165e-36 | 1.00014165e-36 | \x03aa2a50 | t
938  \x43480000 |            200 |            200 | \x43480000 | t
939  \x4c000000 |  3.3554432e+07 |  3.3554432e+07 | \x4c000000 | t
940  \x5d1502f9 |  6.7108864e+17 |  6.7108864e+17 | \x5d1502f9 | t
941  \x5d9502f9 |  1.3421773e+18 |  1.3421773e+18 | \x5d9502f9 | t
942  \x5e1502f9 |  2.6843546e+18 |  2.6843546e+18 | \x5e1502f9 | t
943  \x3f99999a |            1.2 |            1.2 | \x3f99999a | t
944  \x3f9d70a4 |           1.23 |           1.23 | \x3f9d70a4 | t
945  \x3f9df3b6 |          1.234 |          1.234 | \x3f9df3b6 | t
946  \x3f9e0419 |         1.2345 |         1.2345 | \x3f9e0419 | t
947  \x3f9e0610 |        1.23456 |        1.23456 | \x3f9e0610 | t
948  \x3f9e064b |       1.234567 |       1.234567 | \x3f9e064b | t
949  \x3f9e0651 |      1.2345678 |      1.2345678 | \x3f9e0651 | t
950  \x03d20cfe | 1.23456735e-36 | 1.23456735e-36 | \x03d20cfe | t
951 (261 rows)
953 -- clean up, lest opr_sanity complain
954 drop type xfloat4 cascade;
955 NOTICE:  drop cascades to 6 other objects
956 DETAIL:  drop cascades to function xfloat4in(cstring)
957 drop cascades to function xfloat4out(xfloat4)
958 drop cascades to cast from xfloat4 to real
959 drop cascades to cast from real to xfloat4
960 drop cascades to cast from xfloat4 to integer
961 drop cascades to cast from integer to xfloat4