On 11/28/2012 11:09 PM, Douglas Gregor wrote: > > On Nov 28, 2012, at 9:09 PM, Pawel Wodnicki <[email protected]> wrote: > >> On 11/28/2012 10:41 PM, Douglas Gregor wrote: >>> >>> On Nov 28, 2012, at 8:08 PM, Pawel Wodnicki <[email protected]> wrote: >>> >>>> 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. >>> >>> r167514 is small, looks good, and fixes a regression. Let's take it. >>> >>> - Doug >>> >>> >> Doug, >> Did you have r167918 in mind rather then r167514 ? >> Pawel > > Yes, sorry. Pasted the wrong revision number (but reviewed the right one!).
r167918 - Committed revision 168888. And we have diagnostics back where they are expected. > > - Doug > > > Pawel _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
