On Dec 20, 2016, at 2:30 AM, Richard Smith <richard@metafoo.co.uk> wrote:On 19 December 2016 at 14:48, John Spicer <jhs@edg.com> wrote:On Dec 19, 2016, at 5:27 PM, Richard Smith <richard@metafoo.co.uk> wrote:http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/ suggests a feature test macro of __cpp_variadic_using; the value would presumably be 201611. Does that seem OK to everyone?p0195r2.html I think it is okay.I think it is slightly odd as the change is to allow multiple names in a using-declaration, but the expected use case is for variadics.I’d also be okay with something like __cpp_multi_using.__cpp_variadic_using had more support when it was discussed in core, FWIW.I don't see any reason you'd want to feature test for the multiple-names-in-one-using-declaration part of the feature -- just don't use them if you want to be compatible with old language modes. But the variadic part does seem like something people would want to feature-test for. I can imagine someone wanting to write:#if __cpp_variadic_using >= 201611template<typename ...T> struct Callable : T... {using T::operator() ...;};#elsetemplate<typename ...T> struct Callable;template<typename T, typename ...U> struct Callable<T, U...> : T, Callable<U...> {using T::operator();using Callable<U...>::operator();};template<typename T> struct Callable<T> : T {using T::operator();};template<> struct Callable<> {};#endif