3 // Copyright (C) 2000 Free Software Foundation, Inc.
4 // Contributed by Nathan Sidwell 14 Aug 2000 <nathan@codesourcery.com>
6 // A pointer to member can only be formed by `&T::m', however, other forms
7 // are ok for pointer to static member. Thus the error can only be determined
8 // after overload resolution. In template deduction, this can disambiguate
9 // otherwise ambiguous cases.
18 template <typename T> void foo (int (*)(T)); // { dg-error "" } candidate
19 template <typename T> void foo (int (A::*)(T)); // { dg-error "" } candidate
24 foo (&A::f); // { dg-error "" } ambiguous