DO_PIKE_CLEANUP frees ADT.List nodes that are still in use at exit.
Imported from https://youtrack.roxen.com/issue/PIKE-227
Reported by @grubba
free_all_pike_list_node_blocks() is called before do_gc(1). This causes stale pointers to be followed be the gc, causing various failures.