Will not work with rvalue and side_effect