old_cleanups was being set twice making the later call to discard_cleanups ignore the first 'make_cleanup' request. The patch is proposed for both head and the 7.2 branch. This has been regression tested on x8664 with gcc-4.4.4-10.fc13 Sami