1 // Test floating-point to integer conversion. We do this twice, once
2 // with literal conversions that can be optimized away and once using
3 // a static field that can't.
7 public static double zero = 0.0;
9 public static void main (String argv[])
12 int itest = (int)(float)(0.0/0.0);
14 System.err.println ("literal inf error 1: " + itest);
17 int itest = (int)(0.0/0.0);
19 System.err.println ("literal inf error 2" + itest);
22 long ltest = (long)(0.0/0.0);
24 System.err.println ("literal inf error 3" + ltest);
27 long ltest = (long)(float)(0.0/0.0);
29 System.err.println ("literal inf error 4" + ltest);
33 int itest = (int)(float)(1.0/0.0);
34 if (itest != Integer.MAX_VALUE)
35 System.err.println ("literal max error 1: " + itest);
38 int itest = (int)(1.0/0.0);
39 if (itest != Integer.MAX_VALUE)
40 System.err.println ("literal max error 2" + itest);
43 long ltest = (long)(1.0/0.0);
44 if (ltest != Long.MAX_VALUE)
45 System.err.println ("literal max error 3" + ltest);
48 long ltest = (long)(float)(1.0/0.0);
49 if (ltest != Long.MAX_VALUE)
50 System.err.println ("literal max error 4" + ltest);
54 int itest = (int)(float)(-1.0/0.0);
55 if (itest != Integer.MIN_VALUE)
56 System.err.println ("literal min error 1: " + itest);
59 int itest = (int)(-1.0/0.0);
60 if (itest != Integer.MIN_VALUE)
61 System.err.println ("literal min error 2" + itest);
64 long ltest = (long)(-1.0/0.0);
65 if (ltest != Long.MIN_VALUE)
66 System.err.println ("literal min error 3" + ltest);
69 long ltest = (long)(float)(-1.0/0.0);
70 if (ltest != Long.MIN_VALUE)
71 System.err.println ("literal min error 4" + ltest);
75 int itest = (int)(float)(zero/zero);
77 System.err.println ("calc inf error 1: " + itest);
80 int itest = (int)(zero/zero);
82 System.err.println ("calc inf error 2" + itest);
85 long ltest = (long)(zero/zero);
87 System.err.println ("calc inf error 3" + ltest);
90 long ltest = (long)(float)(zero/zero);
92 System.err.println ("calc inf error 4" + ltest);
96 int itest = (int)(float)(1.0/zero);
97 if (itest != Integer.MAX_VALUE)
98 System.err.println ("calc max error 1: " + itest);
101 int itest = (int)(1.0/zero);
102 if (itest != Integer.MAX_VALUE)
103 System.err.println ("calc max error 2" + itest);
106 long ltest = (long)(1.0/zero);
107 if (ltest != Long.MAX_VALUE)
108 System.err.println ("calc max error 3" + ltest);
111 long ltest = (long)(float)(1.0/zero);
112 if (ltest != Long.MAX_VALUE)
113 System.err.println ("calc max error 4" + ltest);
117 int itest = (int)(float)(-1.0/zero);
118 if (itest != Integer.MIN_VALUE)
119 System.err.println ("calc min error 1: " + itest);
122 int itest = (int)(-1.0/zero);
123 if (itest != Integer.MIN_VALUE)
124 System.err.println ("calc min error 2" + itest);
127 long ltest = (long)(-1.0/zero);
128 if (ltest != Long.MIN_VALUE)
129 System.err.println ("calc min error 3" + ltest);
132 long ltest = (long)(float)(-1.0/zero);
133 if (ltest != Long.MIN_VALUE)
134 System.err.println ("calc min error 4" + ltest);