I am writing library which wraps a lot of functions and methods from other library. To avoid coping of return values I am applying std::forward like so:
No you dont need to use std::forward better dont return r-value reference at all because it can prevent of NRVO optimization. You can read more about move semantics in this article: Article