Several C<temp> calls can be made onto the same variable, and the restore are processed in reverse order.
Note that destructors associated with C<$var> will B<not> be called when C<temp> sets the temporary value, but only at the natural end of life of the variable (i.e. at the end of the scope).
-They will trigger after any destructor associated with the replacement C<$var>.
+They will trigger after any destructor associated with the replacement C<$value>.
=cut