1c9bd88e6SHans Wennborg // RUN: %clang_cc1 -std=c++11 -triple %itanium_abi_triple -emit-llvm -o - %s | FileCheck %s 231f55dceSDouglas Gregor 331f55dceSDouglas Gregor template<int *ip> struct IP {}; 431f55dceSDouglas Gregor 5*ea3e51d7SDavid Blaikie // CHECK-LABEL: define {{.*}}void @_Z5test12IPILPi0EE test1(IP<nullptr>)631f55dceSDouglas Gregorvoid test1(IP<nullptr>) {} 731f55dceSDouglas Gregor 831f55dceSDouglas Gregor struct X{ }; 931f55dceSDouglas Gregor template<int X::*pm> struct PM {}; 1031f55dceSDouglas Gregor 11*ea3e51d7SDavid Blaikie // CHECK-LABEL: define {{.*}}void @_Z5test22PMILM1Xi0EE test2(PM<nullptr>)1231f55dceSDouglas Gregorvoid test2(PM<nullptr>) { } 1331f55dceSDouglas Gregor 14*ea3e51d7SDavid Blaikie // CHECK-LABEL: define {{.*}}void @_Z5test316DependentTypePtrIPiLS0_0EE 15b826a008SEli Friedman template<typename T, T x> struct DependentTypePtr {}; test3(DependentTypePtr<int *,nullptr>)16b826a008SEli Friedmanvoid test3(DependentTypePtr<int*,nullptr>) { } 17