1extern void abort (void); 2 3int foo = 0; 4void *bar = 0; 5unsigned int baz = 100; 6 7void *pure_alloc () 8{ 9 void *res; 10 11 while (1) 12 { 13 res = (void *) ((((unsigned int) (foo + bar))) & ~1); 14 foo += 2; 15 if (foo < baz) 16 return res; 17 foo = 0; 18 } 19} 20 21int main () 22{ 23 pure_alloc (); 24 if (!foo) 25 abort (); 26 return 0; 27} 28