aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.pt/overload7.C
blob: bfd8b5a5eb44ca60fa729b43f8519b3601a9b3d6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Build don't link:

// Adapted from testcase by Corey Kosak <kosak@cs.cmu.edu>

template<class T>
struct moo_t {
  struct cow_t {};
};

template<class T> void foo(typename moo_t<T>::cow_t) {}

template<class T> void foo(moo_t<T>) {
  typename moo_t<T>::cow_t p;
  foo(p); // gets bogus error - no matching function for call - XFAIL *-*-*
}

int main() {
  moo_t<int> x;
  foo(x); // gets bogus error - instantiated from here - XFAIL *-*-*
}