Tobias C. Rittweiler writes:
(defun multiple-value-identity (&rest args) "Return its arguments as multiple values." (values-list args))
1- What's wrong with VALUES-LIST?
2- Didn't you want to have: (multiple-value-identity (truncate 5 2)) --> 2 ; 1 ?
Therefore it cannot be done as a function. And it would be useless as a macro.