Hi, Eugene! On Jan 09, Eugene Kosov wrote:
revision-id: 0dfe5a31573 (mariadb-10.7.1-13-g0dfe5a31573) parent(s): 1e54a9716d2 author: Eugene Kosov committer: Eugene Kosov timestamp: 2021-12-03 16:12:27 +0600 message:
MDEV-22441 implement a generic way to change a value of a variable in a scope
Example: { auto _= make_scope_value(var, tmp_value); }
make_scope_value(): a function which returns RAII object which temporary changes a value of a variable
1. Why have you not created a macro, like SCOPE_EXIT to avoid `auto _=` ? Particularly as one cannot use `_` to backup more than one variable. 2. better remove the new value from make_scope_value(). Creating a RAII backup and an assignment of a new value are two separate actions. The assignment can happen much later or conditionally or not at all. 3. (not part of MDEV-22441) See how SCOPE_EXIT is implemented in rocksdb, perhaps we should do it similarly? It's used like SCOPE_EXIT { mem_heap_free(heap); } Regards, Sergei VP of MariaDB Server Engineering and security@mariadb.org