Handle weird destruction order when iterator bindings are nested