1 template<typename T> 2 struct make_signed 3 { 4 using type = int; 5 }; 6 7 template<typename S> 8 using make_signed_t = typename make_signed<S>::type; 9 10 template<typename U> 11 auto ssize (U &parm) -> make_signed_t<decltype(parm.call())>; 12