[cfe-commits] [llvm-branch-commits] [cfe-branch] r168830 - in /cfe/branches/release_32: ./ lib/Sema/TreeTransform.h test/SemaTemplate/instantiate-overload-candidates.cpp

NAKAMURA Takumi geek4civic at gmail.com
Wed Nov 28 18:58:03 PST 2012


> 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.

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?


...Takumi



More information about the cfe-commits mailing list