Remove with-absolutely-no-interrupts from runtime/gc.scm.
Default/purify and default/gc-flip modified the constant-space-queue
under the cover of with-absolutely-no-interrupts, which is no longer
atomic. Serializing these procedures is a trick because the latter is
invoked by the GC interrupt. (Thus ABSOLUTELY no interrupts were
allowed?)
But there is no need for default/gc-flip to remove items from the
queue. Flush-purification-queue! will know that its queue is "empty"
when its head is in constant space. Thus the interrupt no longer
modifies the queue, and the queuing process is serialized in the usual
way.
Since primitive-purify cannot fail for lack of space, ancient error
signals and retry loops are also eliminated.