support caller_traits