]>
Commit | Line | Data |
---|---|---|
6dbe0958 JM |
1 | /* Test floating-point contraction occurs only within source language |
2 | expressions. */ | |
3 | /* { dg-do run } */ | |
4 | /* { dg-options "-std=c99 -pedantic-errors" } */ | |
4f4b0ab8 | 5 | /* { dg-skip-if "ptx only loosely follows IEEE" { "nvptx-*-*" } } */ |
6dbe0958 JM |
6 | |
7 | extern void abort (void); | |
8 | extern void exit (int); | |
9 | ||
10 | volatile float a = 1 + 0x1p-23f, b = 1 - 0x1p-23f, c = -1; | |
11 | ||
12 | int | |
13 | main (void) | |
14 | { | |
15 | float av = a, bv = b, cv = c; | |
16 | float p = av * bv; | |
17 | float r = p + cv; | |
18 | if (r == 0) | |
19 | exit (0); | |
20 | else | |
21 | abort (); | |
22 | } |