https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93806

--- Comment #28 from Vincent Lefèvre <vincent-gcc at vinc17 dot net> ---
A slightly modified version of the example, showing the issue with GCC 5 to 7
(as the noipa attribute directive has been added in GCC 8):

#include <stdio.h>

int main (void)
{
  volatile double d = 5000000000.0;
  double x = d;
  int i = x;

  printf ("%d\n", i);
  if (x == 5000000000.0)
    printf ("%d\n", i);
  return 0;
}

The -O1 optimization level is sufficient to make the bug appear.

Reply via email to