rem: int i;
add: double x = first + i * step; if (step < 0 ? x < last : last < x) break; if (i) fputs (separator, stdout); printf (fmt, x); }
context: print_numbers (const char *fmt){  if (first > last)    {      int i;      if (step >= 0)	{	  error (0, 0,		 _("when the starting value is larger than the limit,\n\the increment must be negative"));	  usage (EXIT_FAILURE);	}      printf (fmt, first);      for (i = 1; /* empty */; i++)	{	  double x = first + i * step;	  if (x < last)	    break;	  fputs (separator, stdout);	  printf (fmt, x);	}    }  else    {      int i;      if (step <= 0)	{	  error (0, 0,		 _("when the starting value is smaller than the limit,\n\the increment must be positive"));	  usage (EXIT_FAILURE);	}      printf (fmt, first);      for (i = 1; /* empty */; i++)	{	  double x = first + i * step;	  if (x > last)	    break;	  fputs (separator, stdout);	  printf (fmt, x);	}    }  fputs (terminator, stdout);  return 0;}