| /* C99 6.5.8 Relational operators. |
| Compare decimal float constants against each other. */ |
| |
| extern void link_error (void); |
| |
| int |
| main () |
| { |
| /* Compare like-typed negative constants. */ |
| if (-2.0dl < -2.0dl) |
| link_error (); |
| |
| /* Compare like-typed constants. */ |
| if (-2.0dl >= .01dl) |
| link_error (); |
| |
| /* Compare like-typed constants. */ |
| if (0.2dd > 0.02e1dd) |
| link_error (); |
| |
| /* Compare decimal float constants of different types. */ |
| if (-.000005dd >= -.0000049DL) |
| link_error(); |
| |
| /* Test use gcc builtins for comparisons. */ |
| if (__builtin_isless(-2.0dl,-2.0dl)) |
| link_error(); |
| |
| if (__builtin_isgreaterequal(-2.0dl,.01dl)) |
| link_error(); |
| |
| if (!(__builtin_islessequal(-2.0dl, -2.0dd))) |
| link_error(); |
| |
| if (!(__builtin_isgreater(2.0dl, -2.0dd))) |
| link_error(); |
| |
| if (__builtin_islessequal(2.0df, __builtin_nand64(""))) |
| link_error(); |
| |
| if (__builtin_islessgreater(2.0dd, __builtin_nand64(""))) |
| link_error(); |
| |
| if (!__builtin_islessgreater(2.0dd, -2.0dd)) |
| link_error(); |
| |
| if (!__builtin_islessgreater(-3.0dd, 2.0dd)) |
| link_error(); |
| |
| if (__builtin_isunordered(1.1df, 0.003dd)) |
| link_error(); |
| |
| if (!__builtin_isunordered(-3.1df, __builtin_nand32(""))) |
| link_error(); |
| |
| return 0; |
| } |