(root)/
gcc-13.2.0/
gcc/
testsuite/
c-c++-common/
dfp/
compare-rel-const.c
       1  /* C99 6.5.8 Relational operators.
       2     Compare decimal float constants against each other. */
       3  
       4  extern void link_error (void);
       5  
       6  int
       7  main ()
       8  {
       9    /* Compare like-typed negative constants. */
      10    if (-2.0dl < -2.0dl)
      11      link_error ();
      12  
      13    /* Compare like-typed constants. */
      14    if (-2.0dl >= .01dl)
      15      link_error ();
      16  
      17    /* Compare like-typed constants. */
      18    if (0.2dd > 0.02e1dd)
      19      link_error ();
      20    
      21    /* Compare decimal float constants of different types. */
      22    if (-.000005dd >= -.0000049DL)
      23    link_error();
      24  
      25    /* Test use gcc builtins for comparisons. */
      26    if (__builtin_isless(-2.0dl,-2.0dl))
      27      link_error();
      28  
      29    if (__builtin_isgreaterequal(-2.0dl,.01dl))
      30      link_error();
      31  
      32    if (!(__builtin_islessequal(-2.0dl, -2.0dd)))
      33      link_error();
      34  
      35    if (!(__builtin_isgreater(2.0dl, -2.0dd)))
      36      link_error();
      37  
      38    if (__builtin_islessequal(2.0df, __builtin_nand64("")))
      39      link_error();
      40  
      41    if (__builtin_islessgreater(2.0dd, __builtin_nand64("")))
      42      link_error();
      43  
      44    if (!__builtin_islessgreater(2.0dd, -2.0dd))
      45      link_error();
      46  
      47    if (!__builtin_islessgreater(-3.0dd, 2.0dd))
      48      link_error();
      49  
      50    if (__builtin_isunordered(1.1df, 0.003dd))
      51      link_error();
      52  
      53    if (!__builtin_isunordered(-3.1df, __builtin_nand32("")))
      54      link_error();
      55  
      56    return 0;
      57  }