1  #if defined (__AVR__) && (__SIZEOF_DOUBLE__ == __SIZEOF_FLOAT__)
       2  extern double sqrt (double) __asm ("sqrtf");
       3  #else
       4  extern double sqrt (double);
       5  #endif
       6  extern void abort (void);
       7  int once;
       8  
       9  double foo (void)
      10  {
      11    if (once++)
      12      abort ();
      13    return 0.0 / 0.0;
      14  }
      15  
      16  double x;
      17  int main (void)
      18  {
      19    x = sqrt (foo ());
      20    return 0;
      21  }