Decl iteration can trigger deserialization; use PushTransactionRAII.