1 // RUN: %clang_cc1 -std=c++11 -triple %itanium_abi_triple -emit-llvm -o - %s | FileCheck %s
2 
3 template<int *ip> struct IP {};
4 
5 // CHECK-LABEL: define {{.*}}void @_Z5test12IPILPi0EE
test1(IP<nullptr>)6 void test1(IP<nullptr>) {}
7 
8 struct X{ };
9 template<int X::*pm> struct PM {};
10 
11 // CHECK-LABEL: define {{.*}}void @_Z5test22PMILM1Xi0EE
test2(PM<nullptr>)12 void test2(PM<nullptr>) { }
13 
14 // CHECK-LABEL: define {{.*}}void @_Z5test316DependentTypePtrIPiLS0_0EE
15 template<typename T, T x> struct DependentTypePtr {};
test3(DependentTypePtr<int *,nullptr>)16 void test3(DependentTypePtr<int*,nullptr>) { }
17