Here is what I want to do:
template void f(DisableDeduction obj) {std::cout << obj;} // Here DisableDeduction aliases
You can do it by putting T in non deducible context (to the left of ::), and use std::common_type from <type_traits>.
::
<type_traits>
example:
template <typename T> void f(typename std::common_type<T>::type obj) {std::cout << obj;}