// RUN: clang-cc -emit-llvm-only -g | |
template<typename T> struct Identity { | |
typedef T Type; | |
}; | |
void f(Identity<int>::Type a) {} | |
void f(Identity<int> a) {} | |
void f(int& a) { } | |
template<typename T> struct A { | |
A<T> *next; | |
}; | |
void f(A<int>) { } | |
struct B { }; | |
void f() { | |
int B::*a = 0; | |
void (B::*b)() = 0; | |
} |