------- Comment #4 from pinskia at gcc dot gnu dot org  2008-08-30 23:02 -------
Here is a C++ testcase (you can convert it to C if you want by changing the
references to pointers and such):
int gni97 = 97, gnj97 = 33;
double gnu[97];

extern void g(void);

double f(double & min, float & max)
{
  double prephitmp35;
  double prephitmp24;
  float monte_temp;
  int D1505;
  prephitmp35 = min;
  prephitmp24 = max;
  if (prephitmp35 > prephitmp24)
    {
      g();
      prephitmp35 = min;
      prephitmp24 = max;
    }
  else
    {
      D1505 = gni97 - 1;
      monte_temp = gnu[D1505] - gnu[gnj97-1];
      if (monte_temp < 0)
        {
          monte_temp = monte_temp + 1.0;
        }
      gnu[D1505] = monte_temp;
    }
  return monte_temp * (prephitmp24 + prephitmp35) + prephitmp35;
}


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  GCC build triplet|i686-pc-linux-gnu           |
   GCC host triplet|i686-pc-linux-gnu           |
 GCC target triplet|i686-pc-linux-gnu           |i?86-*-* x86_64-*-* (-m32)


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37286

Reply via email to