2009-12-16 04:14:24 +08:00
|
|
|
// RUN: %clang_cc1 -emit-llvm-only -g
|
2009-11-07 02:45:16 +08:00
|
|
|
template<typename T> struct Identity {
|
|
|
|
typedef T Type;
|
|
|
|
};
|
|
|
|
|
|
|
|
void f(Identity<int>::Type a) {}
|
2009-11-07 03:19:55 +08:00
|
|
|
void f(Identity<int> a) {}
|
|
|
|
void f(int& a) { }
|
2009-11-15 05:08:12 +08:00
|
|
|
|
|
|
|
template<typename T> struct A {
|
|
|
|
A<T> *next;
|
|
|
|
};
|
|
|
|
void f(A<int>) { }
|
2009-12-07 02:00:51 +08:00
|
|
|
|
|
|
|
struct B { };
|
|
|
|
|
|
|
|
void f() {
|
|
|
|
int B::*a = 0;
|
|
|
|
void (B::*b)() = 0;
|
|
|
|
}
|