abs-1-lib.c   [plain text]


extern int abs_called;
extern int inside_main;

/* The labs call should have been optimized, but the abs call
   shouldn't have been.  */

int
abs (int x)
{
  if (inside_main)
    abs_called = 1;
  return (x < 0 ? -x : x);
}

long
labs (long x)
{
  if (inside_main)
    abort ();
  return (x < 0 ? -x : x);
}