According to my interpretation of §3.4.1/8 this code should compile. What am I missing?
问题 According to [basic.lookup.unqual]/8 from N4140 the following snippet should compile. But it doesn't in clang, gcc and vs2013. struct C { void f(I) {} using I = int; }; [basic.lookup.unqual]/8 (emphases are mine): For the members of a class X , a name used in a member function body, in a default argument, in an exception-specification , in the brace-or-equal-initializer of a non-static data member (9.2), or in the definition of a class member outside of the definition of X , following the