Actually, I try to use template variadic functions which can contains references, pointers and/or values which must be converted to boost::function0<void>.template<class ...classes>boost::function0<void> call_something(classes&... c)Thank you, It actually allows me to use references in these functions.I just tried and g++ is waiting for only references but I need to use pointers and/or values too.There is a way to use mixed types in template variadic functions ?For perfect forwarding use:template<class... T>void call(T&&... t){foo(std::forward<T>(t)...);}I tried this one too and it works fine thank you.However, I use these functions with boost::bind library and actually referencesare lost when I use it (and I need to). After some google searches, it seems thatboost::bind officially does not support this use (due to internal references).So I tried with std::bind because I read somewhere the problem was fixed with its C++11 version.The problem is the same : with std::bind too, references are lost using std::forward.Does anyone made this duo bind/template variadic functions working together ?And if someone did, how did you do ?Sorry, I lost context with what you're trying to do, but maybe you want to use boost::ref / std::ref in conjunction with boost::bind / std::bind, respectively? I think that should indicate to the binding framework to hold the bound values by reference rather than by value (if that's what you want).- Jeff