Takumi, >> Modified: >> cfe/branches/release_32/test/SemaTemplate/instantiate-overload-candidates.cpp >> URL: >> http://llvm.org/viewvc/llvm-project/cfe/branches/release_32/test/SemaTemplate/instantiate-overload-candidates.cpp?rev=168830&r1=168829&r2=168830&view=diff >> ============================================================================== >> --- >> cfe/branches/release_32/test/SemaTemplate/instantiate-overload-candidates.cpp >> (original) >> +++ >> cfe/branches/release_32/test/SemaTemplate/instantiate-overload-candidates.cpp >> Wed Nov 28 17:44:46 2012 >> @@ -19,3 +19,34 @@ >> void test(int x) { >> f(&x, 0); >> } >> + >> +// Ensure that we instantiate an overloaded function if it's selected by >> +// overload resolution when initializing a function pointer. >> +template<typename T> struct X { >> + static T f() { T::error; } // expected-error {{has no members}} >> + static T f(bool); >> +}; >> +void (*p)() = &X<void>().f; // expected-note {{instantiation of}} > > It has been introduced in r167918 and causes failure in release_32. >
Yeah, I am was just looking at this. > http://bb.pgr.jp/builders/clang-3stage-x86_64-linux/builds/74 > -- > error: 'error' diagnostics expected but not seen: > Line 26: has no members > error: 'note' diagnostics expected but not seen: > Line 29: instantiation of > 2 errors generated. > -- > > Pawel, I suggest you a couple of options; > > 1) Remove the extra test. > > 2) Apply Richard's r167918, too. Doug and Richard, how do you think? I think applying r167918 is the best way and I'll test it but let's wait till Doug and Richard had a chance to look at this. > > > ...Takumi > > Pawel _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
