1 /* { dg-do run } */
2 /* { dg-options "-O" } */
3 
4 /* DFP TR 24732 == WG14 / N1176, N1312 */
5 /* Based on a test from Fred Tydeman.  */
6 
7 #include "dfp-dbg.h"
8 
9 /* Test runtime computations.  */
10 
11 void
runtime32(void)12 runtime32 (void)
13 {
14   volatile _Decimal32 d;
15   d = 0.0DF;
16   if (d)
17     FAILURE
18 }
19 
20 void
runtime64(void)21 runtime64 (void)
22 {
23   volatile _Decimal64 d;
24   d = 0.0DD;
25   if (d)
26     FAILURE
27 }
28 
29 void
runtime128(void)30 runtime128 (void)
31 {
32   volatile _Decimal128 d;
33   d = 0.0DL;
34   if (d)
35     FAILURE
36 }
37 
38 void
fold32(void)39 fold32 (void)
40 {
41   if (0.0DF)
42     FAILURE
43 }
44 
45 void
fold64(void)46 fold64 (void)
47 {
48   if (0.0DD)
49     FAILURE
50 }
51 
52 void
fold128(void)53 fold128 (void)
54 {
55   if (0.0DL)
56     FAILURE
57 }
58 
59 int
main(void)60 main(void)
61 {
62   runtime32 ();
63   runtime64 ();
64   runtime128 ();
65 
66   fold32 ();
67   fold64 ();
68   fold128 ();
69 
70   FINISH
71 }
72