1// C++11 way
2template <typename... > struct typelist;
3
4template <typename... Args,
5 typename = typename std::enable_if<
6 !std::is_same<typelist<Bar>,
7 typelist<typename std::decay<Args>::type...>
8 >::value
9 >::type
10 >
11Bar(Args&&... args)
12{
13}
14