28#ifndef VC_TRAITS_HAS_ADDITION_OPERATOR_H_
29#define VC_TRAITS_HAS_ADDITION_OPERATOR_H_
31namespace has_addition_operator_impl
34template <typename T, typename U, typename = decltype(std::declval<T>() + std::declval<U>())> std::true_type test(
int);
35template <
typename T,
typename U> std::false_type test(...);
39template <
typename T,
typename U = T>
40struct has_addition_operator :
public decltype(has_addition_operator_impl::test<T, U>(1))