1main () 2{ 3 union 4 { 5 double d; 6 unsigned short i[sizeof (double) / sizeof (short)]; 7 } u; 8 int a = 0; 9 int b = -5; 10 int j; 11 12 u.d = (double) a / b; 13 14 /* Look for the right pattern, but be sloppy since 15 we don't know the byte order. */ 16 for (j = 0; j < sizeof (double) / sizeof (short); j++) 17 { 18 if (u.i[j] == 0x8000) 19 exit (0); 20 } 21 abort (); 22} 23