LaTeX3
provides tmpa
and tmpb
scratch variables for many different types. As documented, they may be overwritten by other non-kernel code and so should only be used for short-term storage.
What is exactly short-term storage ?
I would say "a group with only kernel, private code, and no third party code whether explicit or not". This seems a serious limitation for the usage of such variables.